Просмотр исходного кода

Fixed memory leak and removed debug code from Windows sensor implementation

Sam Lantinga 5 лет назад
Родитель
Сommit
09f552639a
2 измененных файлов с 5 добавлено и 2 удалено
  1. 3 2
      src/sensor/windows/SDL_windowssensor.c
  2. 2 0
      test/testgamecontroller.c

+ 3 - 2
src/sensor/windows/SDL_windowssensor.c

@@ -281,6 +281,9 @@ static int ConnectSensor(ISensor *sensor)
 	} else {
 		name = SDL_strdup("Unknown Sensor");
 	}
+    if (bstr_name != NULL) {
+        SysFreeString(bstr_name);
+    }
 	if (!name) {
 		return SDL_OutOfMemory();
 	}
@@ -339,8 +342,6 @@ SDL_WINDOWS_SensorInit(void)
 	HRESULT hr;
 	ISensorCollection *sensor_collection = NULL;
 
-	while (!IsDebuggerPresent()) Sleep(100);
-
 	if (WIN_CoInitialize() == S_OK) {
 		SDL_windowscoinit = SDL_TRUE;
 	}

+ 2 - 0
test/testgamecontroller.c

@@ -261,6 +261,8 @@ main(int argc, char *argv[])
     /* Enable standard application logging */
     SDL_LogSetPriority(SDL_LOG_CATEGORY_APPLICATION, SDL_LOG_PRIORITY_INFO);
 
+	SDL_SetHint( SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS, "1" );
+
     /* Initialize SDL (Note: video is required to start event loop) */
     if (SDL_Init(SDL_INIT_VIDEO | SDL_INIT_JOYSTICK | SDL_INIT_GAMECONTROLLER ) < 0) {
         SDL_LogError(SDL_LOG_CATEGORY_APPLICATION, "Couldn't initialize SDL: %s\n", SDL_GetError());