X-Git-Url: https://git.reactos.org/?p=reactos.git;a=blobdiff_plain;f=dll%2Fwin32%2Fwinmm%2Fjoystick.c;h=92bd48d39953e8ca94c4bac8dd8846ce568332fa;hp=ed6054bfbf7c3a4d42cb1a229a83e0c6d961c2c5;hb=97150ce9dd96412036e64a1aa74ccfd2ca9c1805;hpb=13e566444d5e0f20bd4a92af9bce75408162f446 diff --git a/dll/win32/winmm/joystick.c b/dll/win32/winmm/joystick.c index ed6054bfbf7..92bd48d3995 100644 --- a/dll/win32/winmm/joystick.c +++ b/dll/win32/winmm/joystick.c @@ -55,12 +55,21 @@ static WINE_JOYSTICK JOY_Sticks[MAXJOYSTICK]; */ static BOOL JOY_LoadDriver(DWORD dwJoyID) { - if (dwJoyID >= MAXJOYSTICK) + static BOOL winejoystick_missing = FALSE; + + if (dwJoyID >= MAXJOYSTICK || winejoystick_missing) return FALSE; if (JOY_Sticks[dwJoyID].hDriver) return TRUE; JOY_Sticks[dwJoyID].hDriver = OpenDriverA("winejoystick.drv", 0, dwJoyID); + + if (!JOY_Sticks[dwJoyID].hDriver) + { + /* The default driver is missing, don't attempt to load it again */ + winejoystick_missing = TRUE; + } + return (JOY_Sticks[dwJoyID].hDriver != 0); }