@@ -1210,11 +1210,7 @@ static bool GIP_EnsureMetadata(GIP_Attachment *attachment)
1210
1210
case GIP_METADATA_FAKED :
1211
1211
return true;
1212
1212
case GIP_METADATA_NONE :
1213
- if (attachment -> quirks & GIP_QUIRK_BROKEN_METADATA ) {
1214
- GIP_SendSystemMessage (attachment , GIP_CMD_METADATA , 0 , NULL , 0 );
1215
- GIP_SetMetadataDefaults (attachment );
1216
- return GIP_SendInitSequence (attachment );
1217
- } else if (attachment -> device -> got_hello ) {
1213
+ if (attachment -> device -> got_hello ) {
1218
1214
attachment -> device -> timeout = GIP_ACME_TIMEOUT ;
1219
1215
attachment -> got_metadata = GIP_METADATA_PENDING ;
1220
1216
attachment -> metadata_next = SDL_GetTicks () + 500 ;
@@ -2633,7 +2629,7 @@ static bool HIDAPI_DriverGIP_UpdateDevice(SDL_HIDAPI_Device *device)
2633
2629
timestamp >= attachment -> metadata_next &&
2634
2630
attachment -> fragment_message != GIP_CMD_METADATA )
2635
2631
{
2636
- if (attachment -> metadata_retries < 5 ) {
2632
+ if (attachment -> metadata_retries < 3 ) {
2637
2633
SDL_LogWarn (SDL_LOG_CATEGORY_INPUT , "GIP: Retrying metadata request" );
2638
2634
attachment -> metadata_retries ++ ;
2639
2635
attachment -> metadata_next = timestamp + 500 ;
@@ -2647,6 +2643,7 @@ static bool HIDAPI_DriverGIP_UpdateDevice(SDL_HIDAPI_Device *device)
2647
2643
GIP_SendSetDeviceState (attachment , GIP_STATE_RESET );
2648
2644
} else {
2649
2645
GIP_SetMetadataDefaults (attachment );
2646
+ GIP_SendInitSequence (attachment );
2650
2647
}
2651
2648
perform_reset = false;
2652
2649
}
0 commit comments