aboutsummaryrefslogtreecommitdiffstats
path: root/al
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2023-07-20 23:07:06 -0700
committerChris Robinson <[email protected]>2023-07-20 23:07:06 -0700
commit4925439fe765873d1fed9c007c8944b9bbeb0e85 (patch)
tree627a7ef9260e78087263ee8cb67613b0683c7d2e /al
parentb9de83c3e191858ac6b572d145bec5f9f2515543 (diff)
Don't hold the property lock when setting the event callback
Diffstat (limited to 'al')
-rw-r--r--al/event.cpp8
1 files changed, 3 insertions, 5 deletions
diff --git a/al/event.cpp b/al/event.cpp
index 570cbbc1..8b76ceff 100644
--- a/al/event.cpp
+++ b/al/event.cpp
@@ -183,6 +183,7 @@ void StopEventThrd(ALCcontext *ctx)
ctx->mEventThread.join();
}
+AL_API DECL_FUNCEXT3(void, alEventControl,SOFT, ALsizei, const ALenum*, ALboolean)
FORCE_ALIGN void AL_APIENTRY alEventControlDirectSOFT(ALCcontext *context, ALsizei count,
const ALenum *types, ALboolean enable) noexcept
{
@@ -224,14 +225,11 @@ FORCE_ALIGN void AL_APIENTRY alEventControlDirectSOFT(ALCcontext *context, ALsiz
}
}
+AL_API DECL_FUNCEXT2(void, alEventCallback,SOFT, ALEVENTPROCSOFT, void*)
FORCE_ALIGN void AL_APIENTRY alEventCallbackDirectSOFT(ALCcontext *context,
ALEVENTPROCSOFT callback, void *userParam) noexcept
{
- std::lock_guard<std::mutex> _{context->mPropLock};
- std::lock_guard<std::mutex> __{context->mEventCbLock};
+ std::lock_guard<std::mutex> _{context->mEventCbLock};
context->mEventCb = callback;
context->mEventParam = userParam;
}
-
-AL_API DECL_FUNCEXT3(void, alEventControl,SOFT, ALsizei, const ALenum*, ALboolean)
-AL_API DECL_FUNCEXT2(void, alEventCallback,SOFT, ALEVENTPROCSOFT, void*)