diff --git a/src/blackmisc/aviation/flightplan.cpp b/src/blackmisc/aviation/flightplan.cpp index 240511ff5..309e520fd 100644 --- a/src/blackmisc/aviation/flightplan.cpp +++ b/src/blackmisc/aviation/flightplan.cpp @@ -463,17 +463,24 @@ namespace BlackMisc return CFlightPlan(); } - const QString CFlightPlan::flightRuleToString(CFlightPlan::FlightRules rule) + const QString &CFlightPlan::flightRuleToString(CFlightPlan::FlightRules rule) { + static const QString v("VFR"); + static const QString i("IFR"); + static const QString s("SVFR"); + static const QString d("DVFR"); + static const QString unknown("???"); + switch (rule) { - case VFR: return QLatin1String("VFR"); - case IFR: return QLatin1String("IFR"); - case SVFR: return QLatin1String("SVFR"); - case DVFR: return QLatin1String("DVFR"); + case VFR: return v; + case IFR: return i; + case SVFR: return s; + case DVFR: return d; case UNKNOWN: - default: return QLatin1String("???"); + default: break; } + return unknown; } QString CFlightPlan::aircraftIcaoCodeFromEquipmentCode(const QString &equipmentCodeAndAircraft) diff --git a/src/blackmisc/aviation/flightplan.h b/src/blackmisc/aviation/flightplan.h index 7771084c8..3fa8f933a 100644 --- a/src/blackmisc/aviation/flightplan.h +++ b/src/blackmisc/aviation/flightplan.h @@ -378,7 +378,7 @@ namespace BlackMisc static CFlightPlan loadFromMultipleFormats(const QString &fileName, CStatusMessageList *msgs = nullptr); //! Rules to string - static const QString flightRuleToString(FlightRules rule); + static const QString &flightRuleToString(FlightRules rule); //! String to flight rules static FlightRules stringToFlightRules(const QString &flightRules);