Solaris wxGTK 2.6.3 or wxGTK 2.8.4: Application hangs on exit.
Lothar Behrens
lothar.behrens at lollisoft.de
Sat Jun 16 02:32:57 PDT 2007
On Jun 15, 11:33 pm, Lothar Behrens <lothar.behr... at lollisoft.de>
wrote:
> // Clear all tables
> void wxEventHashTable::ClearAll()
> {
> wxEventHashTable* table = sm_first;
>
> while (table)
> {
> table->Clear();
> table = table->m_next;
>
> if (table == sm_first) { // Detect a loop doesn't help
> wxASSERT_MSG( true,
> wxT("Fatal: Event hash table loop detected.") );
> return;
> }
Hi,
I have at least a working detection code for now. I don't compare
against sm_first, but I check the validness of - I think -
general condition of doubly linked lists:
if (table->m_next != NULL)
if (table->m_next->m_previous != table)
// Error doubly linked list is corrupted
return;
This way I get rid of the problem that my application doesn't exit and
loops here. But I still do not know where this comes from.
It was actually a loop because I have confirmed that with the contents
of some m_next pointer values.
Regards, Lothar
> }
>
> }
>
> Are there some specific pittfalls on Solaris ?
More information about the wx-users
mailing list