Browse Source

Fixed deadlock shutting down Android sensors

Sam Lantinga 2 years ago
parent
commit
a9f6950657
1 changed files with 4 additions and 0 deletions
  1. 4 0
      src/sensor/android/SDL_androidsensor.c

+ 4 - 0
src/sensor/android/SDL_androidsensor.c

@@ -258,7 +258,11 @@ static void SDL_ANDROID_SensorClose(SDL_Sensor *sensor)
 
 static void SDL_ANDROID_SensorQuit(void)
 {
+    /* All sensors are closed, but we need to unblock the sensor thread */
+    SDL_AssertSensorsLocked();
+    SDL_UnlockSensors();
     SDL_ANDROID_StopSensorThread(&SDL_sensor_thread_context);
+    SDL_LockSensors();
 
     if (SDL_sensors) {
         SDL_free(SDL_sensors);