Maarten Lankhorst schrieb:
Peter Beutner schreef:
ok that makes sense. Definitely something wrong in dsound.
But I still think that ALSA_DestroyRingMessage should signal any message left in the queue. Imo it just calls for trouble to expect that messages always are added in the right order.
DestroyRingMessage is called in methods or functions similar to free(). If you still use the interface/driver then you shouldn't call free(). If you do then that's not a bug in the driver but in your code. So no..
So we expect every application out there to be bug free? :p It is exactly the same thing you do with your FORCE_SHUTDOWN proposal. Even if the application does something stupid we want to make sure that we can cleanup and exit properly. I would rather see a big fat error message than a deadlocked application. But the chance that something happens here is relative small anyway so it's probably not worth fighting for it.