GNOME Bugzilla – Bug 488718
session_crashed.xml has a unique identifier that prevents restoring
Last modified: 2007-11-15 13:56:13 UTC
Today, I did a clean install of ubuntu, keeping my /home partition. Before doing that, I did a killall epiphany to "save" my tabs and be able to restore them later. When I tried to start it, Epiphany then asked me if I wanted to restore the tabs. Ok. However, epiphany crashed right after starting to show itself. The problem is as follows. Session_crashed.xml has a line like this: <window x="0" y="25" width="1272" height="973" role="epiphany-window-37ccebd5"> The role=something argument is the problem. What I did was create a dummy session, crash it, then copy a new line over: <window x="0" y="25" width="1255" height="933" active-tab="0" role="epiphany-window-2ad65ef1"> As if Epiphany was checking for some hash based on the system-installed binaries or something. I have no idea why this thing happens. If it is done by design, there *needs* to be a dialog asking the user what to do, instead of just crashing without explaining what is going on. Marking as critical because of the data loss issue.
ephy-session.c: @@ write_ephy_window: role = gtk_window_get_role (GTK_WINDOW (window)); if (role != NULL) { ret = xmlTextWriterWriteAttribute (writer, (const xmlChar *)"role", (const xmlChar *)role); That's the role of the window, no idea why it crashed because here I can't reproduce it. Don't you have the trace?
nothing is outputted on my terminal, and ubuntu doesn't provide debugging packages for epiphany, and apport did not show up, so I can't really provide a trace myself. Did you try filling random garbage in that role parameter in your session crashed file?
I confirm this problem. It is related to the new active-tab attribute, which is new in epiphany 2.20. The steps to reproduce in my case were: Have epiphany 2.18.3 running, in the meantime upgrade to epiphany 2.20.1. At that point I kill'ed epiphany, and when I restarted it, after choosing to restore the previous session, it segfaulted. This is caused by a wrong assumption in ephy-session.c, where a NULL pointer is dereferenced. I'll attach a patch to fix this shortly.
Created attachment 97746 [details] [review] epiphany-HEAD-session_segfault.patch
Commit to trunk and gnome-2-20 please. Thanks for the patch!
Thanks, committed. Closing as FIXED. ------------------------------------------------------------------------ r7554 | cosimoc | 2007-10-24 01:33:37 +0200 (mer, 24 ott 2007) | 4 lines Adds a check for NULL pointer in ephy-session.c, fixing wrong behaviour when restoring Epiphany in some cases. Fix for bug #488718, patch by Leonardo Boshell.
*** Bug 492616 has been marked as a duplicate of this bug. ***
*** Bug 493019 has been marked as a duplicate of this bug. ***
*** Bug 496260 has been marked as a duplicate of this bug. ***
*** Bug 496483 has been marked as a duplicate of this bug. ***
*** Bug 496637 has been marked as a duplicate of this bug. ***
*** Bug 496638 has been marked as a duplicate of this bug. ***
*** Bug 497050 has been marked as a duplicate of this bug. ***