aboutsummaryrefslogtreecommitdiffstats
path: root/embed/mozilla/mozilla-embed-single.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'embed/mozilla/mozilla-embed-single.cpp')
-rw-r--r--embed/mozilla/mozilla-embed-single.cpp10
1 files changed, 9 insertions, 1 deletions
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,