denemo-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Denemo-devel] Denemo fails to start


From: Richard Shann
Subject: Re: [Denemo-devel] Denemo fails to start
Date: Sun, 05 Oct 2014 08:38:07 +0100

I guess you are busy right now - I'll undo these and see if Andreas'
problem gets fixed.
Richard
On Sat, 2014-10-04 at 08:44 +0100, Richard Shann wrote:
> On Fri, 2014-10-03 at 10:13 +0200, Andreas Schneider wrote:
> > Attempt to unlock mutex that was not locked
> 
> Jeremiah,
> I've looked at these two commits:
> 8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><
> author        Jeremiah Benham <address@hidden>        
>       Sat, 23 Aug 2014 23:48:48 +0000 (18:48 -0500)
> committer     Jeremiah Benham <address@hidden>        
>       Sat, 23 Aug 2014 23:48:48 +0000 (18:48 -0500)
> commit        ffc712198bf285f9666d4f5569748eb14db36a14
> 
> and 
> 
> author        Jeremiah Benham <address@hidden>        
>       Sun, 31 Aug 2014 12:52:03 +0000 (07:52 -0500)
> committer     Jeremiah Benham <address@hidden>        
>       Sun, 31 Aug 2014 12:52:03 +0000 (07:52 -0500)
> commit        25184617fb3a7ea96958bf7378b3ad131006d048
> 8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><
> 
> and think they are a mistake. 
> 
> I can't track down the exact version of the documentation for
> g_mutex_unlock() but I see this description (under unstable):
> 
> 8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><
> g_mutex_unlock ()
> 
> void
> g_mutex_unlock (GMutex *mutex);
> 
> Unlocks mutex . If another thread is blocked in a g_mutex_lock() call
> for mutex , it will become unblocked and can lock mutex itself.
> 
> Calling g_mutex_unlock() on a mutex that is not locked by the current
> thread leads to undefined behaviour.
> 8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><
> 
> Which means you *must* match unlock with a preceding lock in the same
> thread. As far as I can see this is always done in the code, so I think
> these calls you added to g_mutex_unlock() are just causing Andreas's
> crash on trying to launch with his MIDI controller not connected. I am
> not seeing this crash because I am using portmidibackend which does not
> use mutexes (because, I guess, libportmidi does it for us).
> Shall I remove these calls to g_mutex_unlock(), (the ones you added in
> these two commits, that is)?
> 
> Richard
> 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]