浏览代码

audio: More tweaking of `device->thread_alive`

Ryan C. Gordon 2 年之前
父节点
当前提交
0999a090a7
共有 1 个文件被更改,包括 2 次插入0 次删除
  1. 2 0
      src/audio/SDL_audio.c

+ 2 - 0
src/audio/SDL_audio.c

@@ -668,6 +668,7 @@ void SDL_AudioThreadFinalize(SDL_AudioDevice *device)
         if (device->thread) {
             SDL_DetachThread(device->thread);  // no one is waiting for us, just detach ourselves.
             device->thread = NULL;
+            SDL_AtomicSet(&device->thread_alive, 0);
         }
         DestroyPhysicalAudioDevice(device);
     }
@@ -1085,6 +1086,7 @@ static void ClosePhysicalAudioDevice(SDL_AudioDevice *device)
             SDL_WaitThread(device->thread, NULL);
             device->thread = NULL;
         }
+        SDL_AtomicSet(&device->thread_alive, 0);
     }
 
     if (device->is_opened) {