Kill all sound effects if os_stop_sample(0) is used (ie, when quitting).
authorDavid Griffith <dave@661.org>
Tue, 31 Dec 2013 06:16:27 +0000 (22:16 -0800)
committerDavid Griffith <dave@661.org>
Tue, 31 Dec 2013 06:16:27 +0000 (22:16 -0800)
src/curses/ux_audio.c

index 51a163f0a48a15780248a6ddaad2e9d8c964fe99..376f0eddcb5d84642d9ad90438514beb5c3bc8e9 100644 (file)
@@ -154,6 +154,14 @@ void os_stop_sample (int number)
 
     bb_result_t resource;
 
+    if (number == 0) {
+       if (music_pid > 0)
+               kill(music_pid, SIGTERM);
+       if (sfx_pid > 0)
+               kill(sfx_pid, SIGTERM);
+       return;
+    }
+
     if (blorb_map == NULL) return;
     if (bb_err_None != bb_load_resource(blorb_map, bb_method_FilePos, &resource, bb_ID_Snd, number))
         return;