Module: wine Branch: refs/heads/master Commit: 6f4e20832116457b77f7972157f9d9e475be9f4c URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=6f4e20832116457b77f79721...
Author: Robert Reif reif@earthlink.net Date: Sun May 7 23:28:40 2006 -0400
winecfg: Fix audio crash when no drivers are available.
---
programs/winecfg/audio.c | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/programs/winecfg/audio.c b/programs/winecfg/audio.c index 3ad7f24..fa1e5fa 100644 --- a/programs/winecfg/audio.c +++ b/programs/winecfg/audio.c @@ -519,8 +519,13 @@ static void findAudioDrivers(void) SetCursor(old_cursor);
/* terminate list with empty driver */ - loadedAudioDrv = HeapReAlloc(GetProcessHeap(), 0, loadedAudioDrv, (numFound + 1) * sizeof(AUDIO_DRIVER)); - CopyMemory(&loadedAudioDrv[numFound], pAudioDrv, sizeof(AUDIO_DRIVER)); + if (numFound) { + loadedAudioDrv = HeapReAlloc(GetProcessHeap(), 0, loadedAudioDrv, (numFound + 1) * sizeof(AUDIO_DRIVER)); + CopyMemory(&loadedAudioDrv[numFound], pAudioDrv, sizeof(AUDIO_DRIVER)); + } else { + loadedAudioDrv = HeapAlloc(GetProcessHeap(), 0, sizeof(AUDIO_DRIVER)); + ZeroMemory(&loadedAudioDrv[0], sizeof(AUDIO_DRIVER)); + } }
/* check local copy of registry string for unloadable drivers */