On 03/26/2004 04:56:00 PM, Mike Hearn wrote:
in ALSA_WaveInit():
- wwo->device = ALSA_GetDeviceFromReg("PlaybackDevice");
in wodClose():
HeapFree(GetProcessHeap(), 0, wwo->device);
and in widClose():
HeapFree(GetProcessHeap(), 0, wwi->device);
Thats wrong. wods and wids can be reopened, ALSA_WaveInit is only called once. Caused...
ALSA lib pcm.c:1906:(snd_pcm_open_noupdate) Unknown PCM 8ú<@ err:wave:wodOpen Error open: Success ALSA lib pcm.c:1906:(snd_pcm_open_noupdate) Unknown PCM 8ú<@ err:wave:wodOpen Error open: Inappropriate ioctl for device
...when my app. Commenting out the HeapFree()s fixes it. (I dunno where to put the HeapFree()s... but that's definitly the wrong place :)
On Tue, 30 Mar 2004 23:18:17 +0200, Felix Nawothnig wrote:
Thats wrong. wods and wids can be reopened, ALSA_WaveInit is only called once.
Yes, sorry, this was reported to me on IRC and I thought whoever reported it (can't remember now) was going to submit a patch. I guess I said I would and then forgot :) Feel free to submit a patch to fix that, I think we can just leak these as the device strings need to hang around until shutdown anyway (unless we reload drivers and stuff)....
thanks -mike