fix a logic error in the IsoHandler destructor regarding the use of the disable lock...
commit39c0f6e83fcbe019a6cf89ef0dbbb3118517cb57
authorjwoithe <jwoithe@2be59082-3212-0410-8809-b0798e1608f0>
Fri, 30 Aug 2013 02:52:06 +0000 (30 02:52 +0000)
committerjwoithe <jwoithe@2be59082-3212-0410-8809-b0798e1608f0>
Fri, 30 Aug 2013 02:52:06 +0000 (30 02:52 +0000)
treec377580cccab26e4d828999db9c035c48308e18c
parent7b3590a19759f715a85101e2983e92d2023eb3a2
fix a logic error in the IsoHandler destructor regarding the use of the disable lock and behaviour of pthread_mutex_trylock() when the lock is not held by something else.  Normally pthread_mutex_trylock() will return EBUSY when called from the destructor for reasons noted in r1985.  However, this isn't necessarily the cause in the face of startup errors, and if the lock is free it will be acquired by pthread_mutex_trylock().  Therefore to prevent a deadlock there is a need to ensure the lock is always released before calling disable().

git-svn-id: svn+ssh://ffado.org/ffado/trunk@2386 2be59082-3212-0410-8809-b0798e1608f0
libffado/src/libieee1394/IsoHandlerManager.cpp