(cc'ing and setting follow-up to [EMAIL PROTECTED])

paul sandoz wrote:


>       Something has changed between 0.9 milestone and
>       the head such that i am now getting an assertion
>       in the NotifyObservers method when i drag a card
>       from the LDAP address book to the local address book.
>       The assertion occurs when attempting to perform a
>       lock using the nsAutoLock class and states that
>       there could be a possible deadlock because the thread
>       is already locked and the NotifyObservers is attempting
>       to lock the thread again with another lock.


AFAIK, you can't acquire a lock twice: NSPR will abort().

IIRC the assertion in nsAutoLock fires (for example) if at one point 
locks A and B are acquired in the order AB, and then are later acquired 
in the order BA. This situation indicates that a deadlock _may_ arise at 
some point, and the lock acquisition order should be carefully evaluated.

brendan knows more.

chris


Reply via email to