From 7a4870bd97aa568ca35d405442b1a27b58f844e5 Mon Sep 17 00:00:00 2001 From: Chris Robinson Date: Mon, 14 Jan 2008 10:54:33 -0800 Subject: Close dangling devices when exiting --- Alc/ALc.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'Alc') diff --git a/Alc/ALc.c b/Alc/ALc.c index c8d5f0bc..3ae5c902 100644 --- a/Alc/ALc.c +++ b/Alc/ALc.c @@ -1239,4 +1239,26 @@ ALCAPI ALCboolean ALCAPIENTRY alcCloseDevice(ALCdevice *pDevice) return bReturn; } + + +ALCvoid ReleaseALC(ALCvoid) +{ + ALCdevice *Dev; + +#ifdef _DEBUG + if(g_ulContextCount > 0) + AL_PRINT("exit() %u device(s) and %u context(s) NOT deleted\n", g_ulDeviceCount, g_ulContextCount); +#endif + + while(g_pDeviceList) + { + Dev = g_pDeviceList; + g_pDeviceList = g_pDeviceList->next; + if(Dev->IsCaptureDevice) + alcCaptureCloseDevice(Dev); + else + alcCloseDevice(Dev); + } +} + /////////////////////////////////////////////////////// -- cgit v1.2.3