Comment 5 for bug 1381804

Revision history for this message
Lars Karlitski (larsu) wrote :

Posting on behalf of Ryan, who cannot log in right now.

He found out that the problem is in the test case itself. It uses g_main_loop_quit() as a source callback from test_callback_never_triggered. Source callbacks are supposed to return bool for if they get issued again or not. Apparently on amd64 we randomly end up with 0 in the return value register so the source function gets unregistered. On x386 it's random junk, so the callback gets run again, with the already freed mainloop.

Also, g_timeout_add_seconds (0.5) is bogus - the first argument is a uint. Please change that to g_timeout_add(500).