Strange behavior of QBasicAtomicInt::testAndSetRelease



  • I am working on some code which ,after holding an exception returns 0. And after that executes some code ,which eventually throws exception: The call stack is :

    @QBasicAtomicInt::testAndSetRelease(int expectedValue, int newValue) Line 381
    QMutex::unlock() Line 382 + 0x11 bytes@
    Looks like it happens from QMetaObject::activate@ it calls QMutex::unlock() twice. Is it always twice?

    In the code the debugger points to the exit of function :QBasicAtomicInt::testAndSetRelease(int expectedValue, int newValue). The values of expectedValue and newValue are strange (non valid) - 2806644 and 63243056

    I have no idea how to proceed with that and investigate where /what causes to this behavior. Any advices?

    P.S. For me theoretically it looks like mutex which was not locked is unlock ....But if it is even correct - I have no idea how to find what mutex is that and what causes such behavior


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.