瀏覽代碼

Wait a bit for initialization to complete before requesting calibration data

Fixes https://github.com/libsdl-org/SDL/issues/13856
Sam Lantinga 1 周之前
父節點
當前提交
b6a55c2856
共有 1 個文件被更改,包括 4 次插入2 次删除
  1. 4 2
      src/joystick/hidapi/SDL_hidapi_switch2.c

+ 4 - 2
src/joystick/hidapi/SDL_hidapi_switch2.c

@@ -349,10 +349,12 @@ static bool HIDAPI_DriverSwitch2_InitUSB(SDL_HIDAPI_Device *device)
     }
     RecvBulkData(ctx, calibration_data, 0x40);
 
+    SDL_Delay(1);
+
     flash_read_command[12] = 0x80;
     res = SendBulkData(ctx, flash_read_command, sizeof(flash_read_command));
     if (res < 0) {
-        SDL_LogWarn(SDL_LOG_CATEGORY_INPUT, "Couldn't read calibration data: %d", res);
+        SDL_LogWarn(SDL_LOG_CATEGORY_INPUT, "Couldn't request calibration data: %d", res);
     } else {
         res = RecvBulkData(ctx, calibration_data, sizeof(calibration_data));
         if (res < 0) {
@@ -366,7 +368,7 @@ static bool HIDAPI_DriverSwitch2_InitUSB(SDL_HIDAPI_Device *device)
     flash_read_command[12] = 0xC0;
     res = SendBulkData(ctx, flash_read_command, sizeof(flash_read_command));
     if (res < 0) {
-        SDL_LogWarn(SDL_LOG_CATEGORY_INPUT, "Couldn't read calibration data: %d", res);
+        SDL_LogWarn(SDL_LOG_CATEGORY_INPUT, "Couldn't request calibration data: %d", res);
     } else {
         res = RecvBulkData(ctx, calibration_data, sizeof(calibration_data));
         if (res < 0) {