GNOME Bugzilla – Bug 606933
Epiphany crash when deleting saved passwords
Last modified: 2011-02-17 11:18:02 UTC
@ Debian Squeeze/Sid > Epiphany 2.29.5 (without any plugins) I read somewhere that saving passwords was not a milestone for this version of Epiphany. But when I attempt to clear the temporary files, the "erase saved passwords" chechbox is there. If i select that checkbox and press delete, Epiphany crashes. Here's the full trace... http://pastebin.org/75986 Thanks :)
Please paste traces in bug it self next time, thanks. Thanks for taking the time to report this bug. Unfortunately, that stack trace is missing some elements that will help a lot to solve the problem, so it will be hard for the developers to fix that crash. Can you get us a stack trace with debugging symbols? Please see http://live.gnome.org/GettingTraces for more information on how to do so. Thanks in advance!
Thanks for replying so fast! Hope this is what you're looking for... Starting program: /usr/bin/epiphany-browser [Thread debugging using libthread_db enabled] [New Thread 0x7fffe5362910 (LWP 25877)] [New Thread 0x7fffe4a61910 (LWP 25878)] [New Thread 0x7fffe4260910 (LWP 25879)] [Thread 0x7fffe4260910 (LWP 25879) exited] (epiphany:25870): GLib-GObject-WARNING **: IA__g_object_set_valist: object class `SoupSessionAsync' has no property named `accept-language' [New Thread 0x7fffe4260910 (LWP 25899)] [New Thread 0x7fffe127b910 (LWP 25900)] [Thread 0x7fffe127b910 (LWP 25900) exited] (epiphany:25870): GLib-GObject-WARNING **: invalid cast from `PrefsDialog' to `PdmDialog' Program received signal SIGSEGV, Segmentation fault. 0x00007ffff416ed53 in IA__gtk_tree_model_get_iter_first ( tree_model=0x1b00000055, iter=0x7fffffffbf10) at /build/buildd-gtk+2.0_2.18.5-1-amd64-Nathc9/gtk+2.0-2.18.5/gtk/gtktreemodel.c:1083 1083 /build/buildd-gtk+2.0_2.18.5-1-amd64-Nathc9/gtk+2.0-2.18.5/gtk/gtktreemodel.c: No existe el fichero o el directorio. in /build/buildd-gtk+2.0_2.18.5-1-amd64-Nathc9/gtk+2.0-2.18.5/gtk/gtktreemodel.c (gdb) thread apply all bt
+ Trace 220086
Thread 1 (Thread 0x7ffff7fbf800 (LWP 25870))
Trace looks unique, but I suspect it's something in gtk+ or glib.
Nah, the crash is inside Epiphany. PdmDialog *pdialog = EPHY_PDM_DIALOG (checkbuttons->dialog); PdmActionInfo *pinfo = pdialog->priv->passwords; gboolean valid = gtk_tree_model_get_iter_first (pinfo->model, &iter); EPHY_PDM_DIALOG doesn't agree checkbuttons->dialog is a PdmDialog, there's a NULL derreference in pdialog->priv->passwords, and finally the crash in gtk_tree_model_get_iter_first. I can't reproduce the crash, though. Can you try upgrading to Epiphany, and soup from unstable?
Upgraded: epiphany-browser > 2.29.6 libsoup2.4-1 > 2.29.6-1 libsoup-gnome2.4-1 > 2.29.6-1 (epiphany:5656): GLib-GObject-WARNING **: invalid cast from `PrefsDialog' to `PdmDialog' Program received signal SIGSEGV, Segmentation fault. 0x00007ffff417ad53 in IA__gtk_tree_model_get_iter_first (tree_model=0x1b00000055, iter=0x7fffffffbf10) at /build/buildd-gtk+2.0_2.18.5-1-amd64-Nathc9/gtk+2.0-2.18.5/gtk/gtktreemodel.c:1083 1083 /build/buildd-gtk+2.0_2.18.5-1-amd64-Nathc9/gtk+2.0-2.18.5/gtk/gtktreemodel.c: No existe el fichero o el directorio. in /build/buildd-gtk+2.0_2.18.5-1-amd64-Nathc9/gtk+2.0-2.18.5/gtk/gtktreemodel.c (gdb) thread apply all bt
+ Trace 220384
Thread 1 (Thread 0x7ffff7fbf800 (LWP 5656))
In Epiphany when clearing "saved passwords" (Edit menu -> Prefences -> Privacy tab -> Clear button -> select "Saved Passwords" (and select or deselect the other checkboxes as required) -> Clear button. Does not matter if "Remember passwords" is selected or not, nor, as far as I can tell, any other settings. From the about box:"Web Browser 2.28.0", OS is Ubuntu 9.10. This was happening without any extensions. --- As far as I can tell, Epiphany doesn't even remember passwords... --- Looks like I don't have to create a new bug report. This is just to confirm that it happens for me as well.
*** Bug 615167 has been marked as a duplicate of this bug. ***
Does the problem still happen with 2.30?
Upgraded: epiphany-browser > 2.30 The problem is still there, behaves exactly like 2.28
@ debian squeeze/sid [amd64] (epiphany 2.30.2-1) keeps crashing. @ ubuntu lucid beta2 [amd64] fresh install (epiphany 2.29.92) happens too.
As I don't see any recent activity on this bug, I want to add/clarify that that process of clearing all personal data does work using the following link: Edit>Personal Data>Clear All. When selecting all 4 choices...the browser does not crash. However, when using Edit>Preferences>Privacy>Temporary Files>Clear - the brower crashes when Saved Passwords is checked, and clear is then selected. As information, I'm using Epiphany 2.30.2 with the Ubuntu 10.04 Netbook Edition.
I see exactly the same thing as per comment 11. (10.04.1 laptop)
*** Bug 626787 has been marked as a duplicate of this bug. ***
(In reply to comment #4) > Nah, the crash is inside Epiphany. > > PdmDialog *pdialog = EPHY_PDM_DIALOG (checkbuttons->dialog); > PdmActionInfo *pinfo = pdialog->priv->passwords; > > gboolean valid = gtk_tree_model_get_iter_first (pinfo->model, > &iter); > > EPHY_PDM_DIALOG doesn't agree checkbuttons->dialog is a PdmDialog, there's a > NULL derreference in pdialog->priv->passwords, and finally the crash in > gtk_tree_model_get_iter_first. I can't reproduce the crash, though. Can you try > upgrading to Epiphany, and soup from unstable? Ephy does not agree checkbuttons->dialog is a PdmDialog because it isn't. This is called intially from prefs-dialog.c, with dialog being one of those. That's why we get: (epiphany:25870): GLib-GObject-WARNING **: invalid cast from `PrefsDialog' to `PdmDialog' We managed to break the code by making this pdm function only be able to work with PdmDialogs, which wasn't the case before.
Basically, I think we need to move the PDM data to some place where it can be accessed by both PDM and Prefs dialog. I don't think having it be dependent on the PDM dialog treeview is a good design in any way.
I think we can -for the sake of avoiding the crash- move this to ephy-embed-single.c (where other keyring (form data) stuff is). We could have ephy_embed_single_get_keyring_items (embed, gtktreemodel) that fills the given GtkTreeModel async with all the stuff it can find in the keyring (or that it has cached somehow). That, just for now. I would like to hack an EphyPDM or something like that in the near future, it could also proxy stuff like enabling/disabling history and maybe other stuff.
*** Bug 628749 has been marked as a duplicate of this bug. ***
OK, this should be fixed in master now. Commit 479f0a9a7ec095a8457e7d5b70695207e81f40c6.
*** Bug 632432 has been marked as a duplicate of this bug. ***
*** Bug 634212 has been marked as a duplicate of this bug. ***
*** Bug 634213 has been marked as a duplicate of this bug. ***
*** Bug 634214 has been marked as a duplicate of this bug. ***
*** Bug 639278 has been marked as a duplicate of this bug. ***
*** Bug 642552 has been marked as a duplicate of this bug. ***