]> git.mxchange.org Git - flightgear.git/commitdiff
#767: stop ATIS when switching off volume or loosing station
authorThorstenB <brehmt@gmail.com>
Sat, 12 May 2012 14:05:35 +0000 (16:05 +0200)
committerThorstenB <brehmt@gmail.com>
Sat, 12 May 2012 21:53:29 +0000 (23:53 +0200)
src/ATCDCL/ATC.cxx

index 776ec34419e1a433d1aba6fbf8e6def7c0ebec3d..2653d442f4e27115e2cee96a884bbbf2b5a8e265 100644 (file)
@@ -203,7 +203,11 @@ void FGATC::SetStation(flightgear::CommStation* sta) {
 // The repeating flag indicates whether the message should be repeated continuously or played once.
 void FGATC::Render(string& msg, const float volume, 
                                   const string& refname, const bool repeating) {
-       if (volume < 0.05) return;
+       if (volume < 0.05)
+       {
+               NoRender(refname);
+               return;
+       }
 
        if (repeating)
                fgSetString("/sim/messages/atis", msg.c_str());
@@ -215,8 +219,8 @@ void FGATC::Render(string& msg, const float volume,
        if(_voice) {
                size_t len;
                void* buf = _vPtr->WriteMessage((char*)msg.c_str(), &len);
+               NoRender(refname);
                if(buf) {
-                       NoRender(refname);
                        try {
 // >>> Beware: must pass a (new) object to the (add) method,
 // >>> because the (remove) method is going to do a (delete)