On Sat, 2013-01-12 at 17:36 +0100, David Henningsson wrote: > On 01/12/2013 04:46 PM, Tanu Kaskinen wrote: > > Good point. So, there are two bugs: m->busy isn't initialized properly, > > and change_cb() is sometimes called even when m->busy doesn't change. > > Well, I figured that it would be - maybe mostly theoretical here, but > still - the case that given three apps A, B, and C with descending > priorities, that B want to know of a change from A to C so that it could > grab the sound card now that a lower priority app has it. C can't get the device from A, since C has lower priority. > > How to proceed? If I was to decide, we'd take my patch for fixing the > > redundant change_cb() calls, and adapt your patch to fix the > > initialization (is_really_busy() should be called in rm_watch(), instead > > of using it in filter_handler() to work around the initialization bug). > > If that sounds good, do you wish to send an updated patch, or do you > > prefer me to do it? > > I don't have time/priority to fix the initialization (I believe it > requires a call to org.freedesktop's GetNameOwner function?), so if you > do the initialization within a few days time I'm okay with that. > Otherwise I suggest we push my patch as it is. I'll write the patch today. Regarding pushing, I didn't push my patch, because I thought that we should get updates from upstream reserve.git. I hope Lennart will push these patches soon. -- Tanu