diff -u epiphany-browser-2.22.2/debian/patches/series epiphany-browser-2.22.2/debian/patches/series --- epiphany-browser-2.22.2/debian/patches/series +++ epiphany-browser-2.22.2/debian/patches/series @@ -19 +19,4 @@ +98b_fix_remove_password_2.22.2.patch +98b_fix_autodownload.2.22.2.patch 99_autoreconf.patch + diff -u epiphany-browser-2.22.2/debian/changelog epiphany-browser-2.22.2/debian/changelog --- epiphany-browser-2.22.2/debian/changelog +++ epiphany-browser-2.22.2/debian/changelog @@ -1,3 +1,18 @@ +epiphany-browser (2.22.2-0ubuntu0.8.04.2) hardy-proposed; urgency=low + + * fix bugs in upstream's remove password code. See regression comments in + LP: #236116. + - add debian/patches/98b_fix_remove_password_2.22.2.patch + - update debian/patches/series + * fix bugs in upstream's auto_download code. See regression comments in + LP: #236116. New behaviour for "auto-download" enabled: 1. auto open + if there is a known mime-type helper app; 2. auto save to Download + location if there is no helper. + - add debian/patches/98b_fix_autodownload.2.22.2.patch + - update debian/patches/series + + -- Alexander Sack Thu, 05 Jun 2008 01:03:15 +0200 + epiphany-browser (2.22.2-0ubuntu0.8.04.1) hardy-proposed; urgency=low * new stable upstream release v2.22.2 (LP: #236116) only in patch2: unchanged: --- epiphany-browser-2.22.2.orig/debian/patches/98b_fix_autodownload.2.22.2.patch +++ epiphany-browser-2.22.2/debian/patches/98b_fix_autodownload.2.22.2.patch @@ -0,0 +1,27 @@ +--- + embed/mozilla/ContentHandler.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: epiphany-browser-2.22.2/embed/mozilla/ContentHandler.cpp +=================================================================== +--- epiphany-browser-2.22.2.orig/embed/mozilla/ContentHandler.cpp ++++ epiphany-browser-2.22.2/embed/mozilla/ContentHandler.cpp +@@ -403,17 +403,17 @@ + mAction = mHelperApp ? CONTENT_ACTION_OPEN_TMP : CONTENT_ACTION_SAVEAS; + } + + if (mPermission != EPHY_MIME_PERMISSION_SAFE) + { + mAction = auto_downloads ? CONTENT_ACTION_DOWNLOAD : CONTENT_ACTION_NONE; + MIMEConfirmAction (); + } +- else if (mAction == CONTENT_ACTION_OPEN_TMP) ++ else if (!auto_downloads && mAction == CONTENT_ACTION_OPEN_TMP) + { + MIMEConfirmAction (); + } + else + { + MIMEDoAction (); + } + only in patch2: unchanged: --- epiphany-browser-2.22.2.orig/debian/patches/98b_revert_2.22.2.password.patch.backup +++ epiphany-browser-2.22.2/debian/patches/98b_revert_2.22.2.password.patch.backup @@ -0,0 +1,145 @@ +Summary (asac): +* reverted 2.22.1.1 to 2.22.2 changes in password (remove impl) code. + (see https://bugs.edge.launchpad.net/ubuntu/+source/epiphany-browser/+bug/236116) + +--- +--- a/embed/mozilla/mozilla-embed-single.cpp (.../RELEASE_2_22_2) (revision 8272) ++++ b/embed/mozilla/mozilla-embed-single.cpp (.../RELEASE_2_22_1_1) (revision 8272) +@@ -389,6 +389,8 @@ + do_GetService (NS_LOGINMANAGER_CONTRACTID); + if (!loginManager) + g_warning ("Failed to instantiate LoginManager"); ++ else ++ g_debug ("LoginManager tapped"); + #endif /* HAVE_GECKO_1_9 */ + } + +@@ -587,13 +589,14 @@ + NS_LogInit (); + #endif + ++ nsresult rv; + #ifdef XPCOM_GLUE + static const GREVersionRange greVersion = { + "1.9a", PR_TRUE, + "2", PR_TRUE + }; + char xpcomLocation[4096]; +- nsresult rv = GRE_GetGREPathWithProperties(&greVersion, 1, nsnull, 0, xpcomLocation, sizeof (xpcomLocation)); ++ rv = GRE_GetGREPathWithProperties(&greVersion, 1, nsnull, 0, xpcomLocation, 4096); + if (NS_FAILED (rv)) + { + g_warning ("Could not find a suitable GRE!\n"); +@@ -1072,59 +1075,49 @@ + impl_remove_password (EphyPasswordManager *manager, + EphyPasswordInfo *info) + { +- nsString userName; +- +- if (info->username) +- NS_CStringToUTF16 (nsCString(info->username), +- NS_CSTRING_ENCODING_UTF8, userName); +-#ifdef HAVE_GECKO_1_9 +- else +- userName.SetIsVoid (PR_TRUE); +- ++ nsresult rv; + nsString host; ++ nsString userName; + nsString userNameField; + nsString password; + nsString passwordField; + nsString httpRealm; + nsString formSubmitURL; + +- if (info->host) +- NS_CStringToUTF16 (nsCString(info->host), +- NS_CSTRING_ENCODING_UTF8, userName); +- else +- host.SetIsVoid (PR_TRUE); ++ nsCOMPtr idnService ++ (do_GetService ("@mozilla.org/network/idn-service;1")); ++ NS_ENSURE_TRUE (idnService, ); + +- if (info->usernameField) +- NS_CStringToUTF16 (nsCString(info->usernameField), +- NS_CSTRING_ENCODING_UTF8, userNameField); +- else +- userNameField.SetIsVoid (PR_TRUE); ++ if(info->formSubmitURL != nsnull) ++ g_debug("form submit url: %s", info->formSubmitURL); ++ else ++ g_debug("form submit url is NULL"); + +- if (info->httpRealm) +- NS_CStringToUTF16 (nsCString(info->httpRealm), +- NS_CSTRING_ENCODING_UTF8, httpRealm); +- else +- userName.SetIsVoid (PR_TRUE); ++ NS_CStringToUTF16 (nsCString(info->username), ++ NS_CSTRING_ENCODING_UTF8, userName); ++ NS_CStringToUTF16 (nsCString(info->usernameField), ++ NS_CSTRING_ENCODING_UTF8, userNameField); ++ NS_CStringToUTF16 (nsCString(info->host), ++ NS_CSTRING_ENCODING_UTF8, host); ++ NS_CStringToUTF16 (nsCString(info->httpRealm), ++ NS_CSTRING_ENCODING_UTF8, httpRealm); ++ NS_CStringToUTF16 (nsCString(info->password), ++ NS_CSTRING_ENCODING_UTF8, password); ++ NS_CStringToUTF16 (nsCString(info->passwordField), ++ NS_CSTRING_ENCODING_UTF8, passwordField); ++ NS_CStringToUTF16 (nsCString(info->formSubmitURL), ++ NS_CSTRING_ENCODING_UTF8, formSubmitURL); + +- if (info->password) +- NS_CStringToUTF16 (nsCString(info->password), +- NS_CSTRING_ENCODING_UTF8, password); +- else +- password.SetIsVoid (PR_TRUE); ++#ifdef HAVE_GECKO_1_9 ++ if(!info->username) userName.SetIsVoid(PR_TRUE); ++ if(!info->usernameField) userNameField.SetIsVoid(PR_TRUE); ++ if(!info->host) host.SetIsVoid(PR_TRUE); ++ if(!info->httpRealm) httpRealm.SetIsVoid(PR_TRUE); ++ if(!info->password) password.SetIsVoid(PR_TRUE); ++ if(!info->passwordField) passwordField.SetIsVoid(PR_TRUE); ++ if(!info->formSubmitURL) formSubmitURL.SetIsVoid(PR_TRUE); + +- if (info->passwordField) +- NS_CStringToUTF16 (nsCString(info->passwordField), +- NS_CSTRING_ENCODING_UTF8, passwordField); +- else +- passwordField.SetIsVoid (PR_TRUE); +- +- if (info->formSubmitURL) +- NS_CStringToUTF16 (nsCString(info->formSubmitURL), +- NS_CSTRING_ENCODING_UTF8, formSubmitURL); +- else +- formSubmitURL.SetIsVoid (PR_TRUE); +- +- nsCOMPtr loginManager = ++ nsCOMPtr loginManager = + do_GetService (NS_LOGINMANAGER_CONTRACTID); + NS_ENSURE_TRUE (loginManager, ); + +@@ -1139,18 +1132,14 @@ + login->SetPassword(password); + login->SetPasswordField(passwordField); + +- loginManager->RemoveLogin(login); ++ rv = loginManager->RemoveLogin(login); + + #else /* !HAVE_GECKO_1_9 */ +- if (!info->host) +- return; +- + nsCOMPtr pm = + do_GetService (NS_PASSWORDMANAGER_CONTRACTID); + if (!pm) return; + +- nsCString host (info->host); +- pm->RemoveUser (host, userName); ++ pm->RemoveUser (nsCString(info->host), userName); + #endif /* HAVE_GECKO_1_9 */ + } + only in patch2: unchanged: --- epiphany-browser-2.22.2.orig/debian/patches/98b_fix_remove_password_2.22.2.patch +++ epiphany-browser-2.22.2/debian/patches/98b_fix_remove_password_2.22.2.patch @@ -0,0 +1,47 @@ +Summary (asac): +* reverted 2.22.1.1 to 2.22.2 changes in password (remove impl) code. + (see https://bugs.edge.launchpad.net/ubuntu/+source/epiphany-browser/+bug/236116) + +--- +--- + embed/mozilla/mozilla-embed-single.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +Index: epiphany-browser-2.22.2/embed/mozilla/mozilla-embed-single.cpp +=================================================================== +--- epiphany-browser-2.22.2.orig/embed/mozilla/mozilla-embed-single.cpp ++++ epiphany-browser-2.22.2/embed/mozilla/mozilla-embed-single.cpp +@@ -1085,31 +1085,31 @@ + nsString userNameField; + nsString password; + nsString passwordField; + nsString httpRealm; + nsString formSubmitURL; + + if (info->host) + NS_CStringToUTF16 (nsCString(info->host), +- NS_CSTRING_ENCODING_UTF8, userName); ++ NS_CSTRING_ENCODING_UTF8, host); + else + host.SetIsVoid (PR_TRUE); + + if (info->usernameField) + NS_CStringToUTF16 (nsCString(info->usernameField), + NS_CSTRING_ENCODING_UTF8, userNameField); + else + userNameField.SetIsVoid (PR_TRUE); + + if (info->httpRealm) + NS_CStringToUTF16 (nsCString(info->httpRealm), + NS_CSTRING_ENCODING_UTF8, httpRealm); + else +- userName.SetIsVoid (PR_TRUE); ++ httpRealm.SetIsVoid (PR_TRUE); + + if (info->password) + NS_CStringToUTF16 (nsCString(info->password), + NS_CSTRING_ENCODING_UTF8, password); + else + password.SetIsVoid (PR_TRUE); + + if (info->passwordField)