Initialize FlightRule when using default constructor

The FlightRule enum of CFlightPlan was uninitialized when using the default constructor. This caused undefined behavior in some special cases while e.g. loading a SimBrief xml flightplan.
This commit is contained in:
Lars Toenning
2021-12-01 22:23:41 +01:00
parent 5837351605
commit e16dc6ef25
2 changed files with 2 additions and 4 deletions

View File

@@ -210,8 +210,6 @@ namespace BlackMisc::Aviation
return cats;
}
CFlightPlan::CFlightPlan() { }
CFlightPlan::CFlightPlan(const CCallsign &callsign, const QString &equipmentIcao, const CAirportIcaoCode &originAirportIcao, const CAirportIcaoCode &destinationAirportIcao,
const CAirportIcaoCode &alternateAirportIcao, const QDateTime &takeoffTimePlanned, const QDateTime &takeoffTimeActual, const PhysicalQuantities::CTime &enrouteTime,
const PhysicalQuantities::CTime &fuelTime, const CAltitude &cruiseAltitude, const PhysicalQuantities::CSpeed &cruiseTrueAirspeed, CFlightPlan::FlightRules flightRules,

View File

@@ -186,7 +186,7 @@ namespace BlackMisc::Aviation
static constexpr int MaxRouteAndRemarksLength = 624; //!< Max.length for Route and Remarks
//! Default constructor
CFlightPlan();
CFlightPlan() = default;
//! Constructor
CFlightPlan(const CCallsign &callsign,
@@ -472,7 +472,7 @@ namespace BlackMisc::Aviation
CAltitude m_cruiseAltitude;
QString m_cruiseAltitudeString;
PhysicalQuantities::CSpeed m_cruiseTrueAirspeed;
FlightRules m_flightRules;
FlightRules m_flightRules{};
QString m_route;
CFlightPlanRemarks m_remarks;