Hello all,

I am looking for a bug in a PyQt application that sometimes crashes. When it crashes it always crashes in PyObject_Malloc :

        if (pool != pool->nextpool) {
            /*
             * There is a used pool for this size class.
             * Pick up the head block of its free list.
             */
            ++pool->ref.count;
            bp = pool->freeblock;
            assert(bp != NULL);
-------> if ((pool->freeblock = *(block **)bp) != NULL) { <---Line of code where crash occurs
                UNLOCK();
                return (void *)bp;
            }
Most of the time it dereferences a null pointer at this line, but sometimes also another invalid address like 0xffffffff.
It looks like the heap gets corrupted somehow, now I already read in the archives about similar problems and someone noticed the use of QThreads, our application uses multithreading too, with the use of QThreads.
Is there something we should be aware of when using QThreads  ? (Besides the normal precautions to prevent race conditions of course).

Has anybody had similar problems, and also, do you have suggestions as what the best way is to pinpoint a problem like this ??

Thanks in advance,

Lambert



_______________________________________________
PyQt mailing list    [email protected]
http://www.riverbankcomputing.com/mailman/listinfo/pyqt

Reply via email to