aboutsummaryrefslogtreecommitdiffstats
path: root/OpenAL32
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2008-01-14 10:54:33 -0800
committerChris Robinson <[email protected]>2008-01-14 10:54:33 -0800
commit7a4870bd97aa568ca35d405442b1a27b58f844e5 (patch)
tree8c2892afb56b2324c36920152d73d9bc9fb24fdf /OpenAL32
parenta552e32a9aa878c342582b2b10eecb29eaa00582 (diff)
Close dangling devices when exiting
Diffstat (limited to 'OpenAL32')
-rw-r--r--OpenAL32/Include/alMain.h2
-rw-r--r--OpenAL32/OpenAL32.c2
2 files changed, 4 insertions, 0 deletions
diff --git a/OpenAL32/Include/alMain.h b/OpenAL32/Include/alMain.h
index d1acfc11..bd3b00be 100644
--- a/OpenAL32/Include/alMain.h
+++ b/OpenAL32/Include/alMain.h
@@ -216,6 +216,8 @@ struct ALCcontext_struct
ALCcontext *next;
};
+ALCvoid ReleaseALC(ALCvoid);
+
ALCchar *AppendDeviceList(char *name);
ALCchar *AppendAllDeviceList(char *name);
ALCchar *AppendCaptureDeviceList(char *name);
diff --git a/OpenAL32/OpenAL32.c b/OpenAL32/OpenAL32.c
index fa5a9d71..a49f5b29 100644
--- a/OpenAL32/OpenAL32.c
+++ b/OpenAL32/OpenAL32.c
@@ -44,6 +44,7 @@ BOOL APIENTRY DllMain(HANDLE hModule,DWORD ul_reason_for_call,LPVOID lpReserved)
ReleaseALAuxiliaryEffectSlots();
ReleaseALEffects();
ReleaseALFilters();
+ ReleaseALC();
FreeALConfig();
ALTHUNK_EXIT();
DeleteCriticalSection(&_alMutex);
@@ -64,6 +65,7 @@ static void my_deinit()
ReleaseALAuxiliaryEffectSlots();
ReleaseALEffects();
ReleaseALFilters();
+ ReleaseALC();
FreeALConfig();
ALTHUNK_EXIT();
DeleteCriticalSection(&_alMutex);