Pārlūkot izejas kodu

Workaround for crash in CoUninitialize()

Sam Lantinga 3 gadi atpakaļ
vecāks
revīzija
9299a3e796

+ 2 - 1
src/joystick/windows/SDL_dinputjoystick.c

@@ -1147,7 +1147,8 @@ SDL_DINPUT_JoystickQuit(void)
     }
 
     if (coinitialized) {
-        WIN_CoUninitialize();
+        /* Workaround for CoUninitialize() crash in NotifyInitializeSpied() */
+        /*WIN_CoUninitialize();*/
         coinitialized = SDL_FALSE;
     }
 }

+ 2 - 1
src/joystick/windows/SDL_rawinputjoystick.c

@@ -657,7 +657,8 @@ RAWINPUT_QuitWindowsGamingInput(RAWINPUT_DeviceContext *ctx)
             __x_ABI_CWindows_CGaming_CInput_CIGamepadStatics_Release(wgi_state.gamepad_statics);
             wgi_state.gamepad_statics = NULL;
         }
-        WIN_CoUninitialize();
+        /* Workaround for CoUninitialize() crash in NotifyInitializeSpied() */
+        /*WIN_CoUninitialize();*/
         wgi_state.initialized = SDL_FALSE;
     }
 }

+ 2 - 1
src/joystick/windows/SDL_windowsjoystick.c

@@ -256,7 +256,8 @@ SDL_CleanupDeviceNotification(SDL_DeviceNotificationData *data)
     UnregisterClass(data->wincl.lpszClassName, data->wincl.hInstance);
 
     if (data->coinitialized == S_OK) {
-        WIN_CoUninitialize();
+        /* Workaround for CoUninitialize() crash in NotifyInitializeSpied() */
+        /*WIN_CoUninitialize();*/
     }
 }