pull-request: trip handling

Dirk Hohndel dirk at hohndel.org
Tue Sep 4 20:43:42 PDT 2012


On Sep 4, 2012, at 8:36 PM, Dirk Hohndel wrote:

> 
> On Sep 4, 2012, at 7:28 PM, Dirk Hohndel wrote:
>> I now have installed a Ubuntu machine and can reproduce this. And googling for the specific error indicates that we are triggering a long standing Gtk bug here. The instructions for how to work around it are a bit unclear and contradictory, sadly. Some sources tell you to not keep dialogs around and to destroy them instead - that's exactly what we are doing and it is the gtk_widget_destroy call where things crash… 
>> 
>> Fundamentally it's the file select box that is causing this, and different trips that we are loading appear to just subtly change the memory layout and cause this to sometimes fail and sometimes not fail. But from all I was able to learn (and from quality time spent with Valgrind) this is not a bug that my code has introduced, it appears to be a Gtk bug that is just more easily exposed. On some versions of gtk, that is; I still have been unable to trigger this on Fedora 17, regardless how hard I try.
> 
> I take this back. It is NOT my changes that are causing this to be easier to trigger.
> Going back to 6a210e573d947d61172da0363cbd7832e5459323 which should be the current master and
> starting subsurface ./dives/test22.xml and then importing ./dives/test23.xml causes the same crash on my Mac.

Sorry to keep sending more email on this one.

I went back to a44d0049f6370d022067b8aee5e847f9fe550cf1 (Update for new libdivecomputer interfaces) and rebuilt that.
And then I used to DIFFERENT dives (that don't contain any trips).

Try

./subsurface dives/test18.xml
and then import dives/test19.xml

same crash. Of course part of what makes this hard is that it happens on Ubuntu and Mac OS, but not on Fedora (which is what Linus is running).

I guess I will have to bisect further back (but the libdivecomputer changes make that a /real/ pain). Any other brilliant suggestions?

/D

PS: this clearly proves that the trip branch is not causing these crashes...


More information about the subsurface mailing list