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