diff options
author | Wohlstand <admin@wohlnet.ru> | 2025-03-17 12:01:50 +0300 |
---|---|---|
committer | Wohlstand <admin@wohlnet.ru> | 2025-03-17 12:01:50 +0300 |
commit | 6def5a7c318368eb3e2c692ff3b4aab7dbb8b56e (patch) | |
tree | c64664f67886dd05fc270479f122426c53c1b166 /utils | |
parent | 5e019fe808e947732867074b2ce9b3b3388bbcb4 (diff) | |
download | libADLMIDI-6def5a7c318368eb3e2c692ff3b4aab7dbb8b56e.tar.gz libADLMIDI-6def5a7c318368eb3e2c692ff3b4aab7dbb8b56e.tar.bz2 libADLMIDI-6def5a7c318368eb3e2c692ff3b4aab7dbb8b56e.zip |
WinMM: Don't try to assign clientNum if dwUser is NULL
Diffstat (limited to 'utils')
-rw-r--r-- | utils/winmm_drv/src/winmm_drv.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/utils/winmm_drv/src/winmm_drv.cpp b/utils/winmm_drv/src/winmm_drv.cpp index 09f38d2..6ebc391 100644 --- a/utils/winmm_drv/src/winmm_drv.cpp +++ b/utils/winmm_drv/src/winmm_drv.cpp @@ -303,9 +303,14 @@ LONG OpenDriver(Driver *driver, UINT uDeviceID, UINT uMsg, DWORD_PTR dwUser, DWO driver->clients[clientNum].flags = HIWORD(dwParam2); driver->clients[clientNum].callback = desc->dwCallback; driver->clients[clientNum].instance = desc->dwInstance; - *(LONG *)dwUser = clientNum; + + if(dwUser) + *(LONG *)dwUser = clientNum; + driver->clientCount++; + DoCallback(uDeviceID, clientNum, MOM_OPEN, (DWORD_PTR)NULL, (DWORD_PTR)NULL); + return MMSYSERR_NOERROR; } |