diff options
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | embed/mozilla/mozilla-embed-single.cpp | 10 |
2 files changed, 16 insertions, 1 deletions
@@ -1,3 +1,10 @@ +2006-01-29 Christian Persch <chpe@cvs.gnome.org> + + * embed/mozilla/mozilla-embed-single.cpp: + + If GetPassword failed, break instead of continue. + That way we don't endlessly re-ask for the master password. + 2006-01-29 Crispin Flowerday <gnome@flowerday.cx> * embed/ephy-embed-single.c: (ephy_embed_single_get_backend_name): diff --git a/embed/mozilla/mozilla-embed-single.cpp b/embed/mozilla/mozilla-embed-single.cpp index 0523473a6..e4295ca94 100644 --- a/embed/mozilla/mozilla-embed-single.cpp +++ b/embed/mozilla/mozilla-embed-single.cpp @@ -1067,7 +1067,15 @@ impl_list_passwords (EphyPasswordManager *manager) NS_CSTRING_ENCODING_UTF8, userName); rv = nsPassword->GetPassword (unicodeName); - if (NS_FAILED (rv)) continue; + if (NS_FAILED (rv)) + { + /* this usually means we couldn't decrypt the password, due to + * the master password being unavailable. Don't continue since that + * would lead to endless prompting for the master password; abort + * instead. + */ + break; + } nsEmbedCString userPassword; NS_UTF16ToCString (unicodeName, |