aboutsummaryrefslogtreecommitdiff
path: root/utils/winmm_drv
diff options
context:
space:
mode:
authorWohlstand <admin@wohlnet.ru>2025-03-17 12:01:50 +0300
committerWohlstand <admin@wohlnet.ru>2025-03-17 12:01:50 +0300
commit6def5a7c318368eb3e2c692ff3b4aab7dbb8b56e (patch)
treec64664f67886dd05fc270479f122426c53c1b166 /utils/winmm_drv
parent5e019fe808e947732867074b2ce9b3b3388bbcb4 (diff)
downloadlibADLMIDI-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/winmm_drv')
-rw-r--r--utils/winmm_drv/src/winmm_drv.cpp7
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;
}