]> git.mxchange.org Git - flightgear.git/commitdiff
Fix wrong ATIS for negative temperatures
authorTorsten Dreyer <torsten@ŧ3r.de>
Mon, 12 Jan 2015 15:46:24 +0000 (16:46 +0100)
committerTorsten Dreyer <torsten@ŧ3r.de>
Mon, 12 Jan 2015 15:46:24 +0000 (16:46 +0100)
src/ATC/ATISEncoder.cxx

index 75a397f32318f81671d89af6382d2a66526e03cd..dc41d27ed3db9ee4c72d9cbb1e8b490ec2c76a66 100644 (file)
@@ -56,6 +56,12 @@ string ATCSpeech::getSpokenNumber( string number )
 string ATCSpeech::getSpokenNumber( int number, bool leadingZero, int digits )
 {
   vector<const char *> spokenDigits;
+  bool negative = false;
+  if( number < 0 ) {
+    negative = true;
+    number = -number;
+  }
+
   int n = 0;
   while( number > 0 ) {
     spokenDigits.push_back( getSpokenDigit(number%10) );
@@ -70,8 +76,12 @@ string ATCSpeech::getSpokenNumber( int number, bool leadingZero, int digits )
   }
 
   string result;
+  if( negative ) {
+    result.append( globals->get_locale()->getLocalizedString("minus", "atc", "minus" ) );
+  }
+
   while( false == spokenDigits.empty() ) {
-    if( false == spokenDigits.empty() )
+    if( false == result.empty() )
       result.SPACE;
 
     result.append( spokenDigits.back() );