summaryrefslogtreecommitdiff
path: root/mozilla-gnome-shell-search-fixes.patch
diff options
context:
space:
mode:
Diffstat (limited to 'mozilla-gnome-shell-search-fixes.patch')
-rw-r--r--mozilla-gnome-shell-search-fixes.patch157
1 files changed, 0 insertions, 157 deletions
diff --git a/mozilla-gnome-shell-search-fixes.patch b/mozilla-gnome-shell-search-fixes.patch
deleted file mode 100644
index 41a11e8..0000000
--- a/mozilla-gnome-shell-search-fixes.patch
+++ /dev/null
@@ -1,157 +0,0 @@
-diff -up firefox-75.0/browser/components/shell/nsGNOMEShellSearchProvider.cpp.gnome-shell-search-fixes firefox-75.0/browser/components/shell/nsGNOMEShellSearchProvider.cpp
---- firefox-75.0/browser/components/shell/nsGNOMEShellSearchProvider.cpp.gnome-shell-search-fixes 2020-04-07 08:01:50.587124776 +0200
-+++ firefox-75.0/browser/components/shell/nsGNOMEShellSearchProvider.cpp 2020-04-07 10:14:02.530380225 +0200
-@@ -26,6 +26,8 @@
- #include "nsIStringBundle.h"
- #include "imgIContainer.h"
- #include "imgITools.h"
-+#include "nsNetCID.h"
-+#include "nsIIOService.h"
-
- #include "mozilla/gfx/DataSurfaceHelpers.h"
-
-@@ -289,20 +291,12 @@ AsyncFaviconDataReady::OnComplete(nsIURI
- }
-
- void nsGNOMEShellSearchProvider::ComposeSearchResultReply(
-- DBusMessage* reply, const char* aSearchTerm) {
-+ DBusMessage* reply, const char* aSearchTerm, bool aSearchOnly) {
- uint32_t childCount = 0;
-- nsresult rv = mHistResultContainer->GetChildCount(&childCount);
-- if (NS_FAILED(rv) || childCount == 0) {
-- return;
-- }
--
-- // Obtain the favicon service and get the favicon for the specified page
-- nsCOMPtr<nsIFaviconService> favIconSvc(
-- do_GetService("@mozilla.org/browser/favicon-service;1"));
-- nsCOMPtr<nsIIOService> ios(do_GetService(NS_IOSERVICE_CONTRACTID));
-+ nsresult rv = NS_OK;
-
-- if (childCount > MAX_SEARCH_RESULTS_NUM) {
-- childCount = MAX_SEARCH_RESULTS_NUM;
-+ if (!aSearchOnly) {
-+ nsresult rv = mHistResultContainer->GetChildCount(&childCount);
- }
-
- DBusMessageIter iter;
-@@ -310,30 +304,41 @@ void nsGNOMEShellSearchProvider::Compose
- DBusMessageIter iterArray;
- dbus_message_iter_open_container(&iter, DBUS_TYPE_ARRAY, "s", &iterArray);
-
-- for (uint32_t i = 0; i < childCount; i++) {
-- nsCOMPtr<nsINavHistoryResultNode> child;
-- mHistResultContainer->GetChild(i, getter_AddRefs(child));
-- if (NS_WARN_IF(NS_FAILED(rv))) {
-- continue;
-- }
-- if (!IsHistoryResultNodeURI(child)) {
-- continue;
-+ if (NS_SUCCEEDED(rv) && childCount > 0) {
-+ // Obtain the favicon service and get the favicon for the specified page
-+ nsCOMPtr<nsIFaviconService> favIconSvc(
-+ do_GetService("@mozilla.org/browser/favicon-service;1"));
-+ nsCOMPtr<nsIIOService> ios(do_GetService(NS_IOSERVICE_CONTRACTID));
-+
-+ if (childCount > MAX_SEARCH_RESULTS_NUM) {
-+ childCount = MAX_SEARCH_RESULTS_NUM;
- }
-
-- nsAutoCString uri;
-- child->GetUri(uri);
-+ for (uint32_t i = 0; i < childCount; i++) {
-+ nsCOMPtr<nsINavHistoryResultNode> child;
-+ mHistResultContainer->GetChild(i, getter_AddRefs(child));
-+ if (NS_WARN_IF(NS_FAILED(rv))) {
-+ continue;
-+ }
-+ if (!child || !IsHistoryResultNodeURI(child)) {
-+ continue;
-+ }
-
-- nsCOMPtr<nsIURI> iconIri;
-- ios->NewURI(uri, nullptr, nullptr, getter_AddRefs(iconIri));
-- nsCOMPtr<nsIFaviconDataCallback> callback =
-- new AsyncFaviconDataReady(this, i, mSearchSerial);
-- favIconSvc->GetFaviconDataForPage(iconIri, callback, 0);
-+ nsAutoCString uri;
-+ child->GetUri(uri);
-
-- nsAutoCString idKey;
-- GetIDKeyForURI(i, uri, idKey);
-+ nsCOMPtr<nsIURI> iconIri;
-+ ios->NewURI(uri, nullptr, nullptr, getter_AddRefs(iconIri));
-+ nsCOMPtr<nsIFaviconDataCallback> callback =
-+ new AsyncFaviconDataReady(this, i, mSearchSerial);
-+ favIconSvc->GetFaviconDataForPage(iconIri, callback, 0);
-
-- const char* id = idKey.get();
-- dbus_message_iter_append_basic(&iterArray, DBUS_TYPE_STRING, &id);
-+ nsAutoCString idKey;
-+ GetIDKeyForURI(i, uri, idKey);
-+
-+ const char* id = idKey.get();
-+ dbus_message_iter_append_basic(&iterArray, DBUS_TYPE_STRING, &id);
-+ }
- }
-
- nsPrintfCString searchString("%s:%s", KEYWORD_SEARCH_STRING, aSearchTerm);
-@@ -346,7 +351,7 @@ void nsGNOMEShellSearchProvider::Compose
- DBusHandlerResult nsGNOMEShellSearchProvider::GetInitialResultSet(
- DBusMessage* aMsg) {
- DBusMessage* reply;
-- char** stringArray;
-+ char** stringArray = nullptr;
- int elements;
-
- if (!dbus_message_get_args(aMsg, nullptr, DBUS_TYPE_ARRAY, DBUS_TYPE_STRING,
-@@ -356,9 +361,10 @@ DBusHandlerResult nsGNOMEShellSearchProv
- } else {
- reply = dbus_message_new_method_return(aMsg);
- nsresult rv = NewHistorySearch(stringArray[0]);
-- if (NS_SUCCEEDED(rv)) {
-- ComposeSearchResultReply(reply, stringArray[0]);
-- }
-+ ComposeSearchResultReply(reply, stringArray[0],
-+ /* search only */ NS_FAILED(rv));
-+ }
-+ if (stringArray) {
- dbus_free_string_array(stringArray);
- }
-
-@@ -384,9 +390,8 @@ DBusHandlerResult nsGNOMEShellSearchProv
- } else {
- reply = dbus_message_new_method_return(aMsg);
- nsresult rv = NewHistorySearch(stringArray[0]);
-- if (NS_SUCCEEDED(rv)) {
-- ComposeSearchResultReply(reply, stringArray[0]);
-- }
-+ ComposeSearchResultReply(reply, stringArray[0],
-+ /* search only */ NS_FAILED(rv));
- }
-
- if (unusedArray) {
-@@ -556,6 +561,10 @@ void nsGNOMEShellSearchProvider::LaunchW
- nsCOMPtr<nsINavHistoryResultNode> child;
- mHistResultContainer->GetChild(keyIndex, getter_AddRefs(child));
-
-+ if (!child) {
-+ return;
-+ }
-+
- nsAutoCString uri;
- nsresult rv = child->GetUri(uri);
- if (NS_FAILED(rv)) {
-diff -up firefox-75.0/browser/components/shell/nsGNOMEShellSearchProvider.h.gnome-shell-search-fixes firefox-75.0/browser/components/shell/nsGNOMEShellSearchProvider.h
---- firefox-75.0/browser/components/shell/nsGNOMEShellSearchProvider.h.gnome-shell-search-fixes 2020-04-07 08:01:50.587124776 +0200
-+++ firefox-75.0/browser/components/shell/nsGNOMEShellSearchProvider.h 2020-04-07 09:56:30.857553820 +0200
-@@ -70,7 +70,8 @@ class nsGNOMEShellSearchProvider : publi
- bool IsHistoryResultNodeURI(nsINavHistoryResultNode* aHistoryNode);
- void AppendResultID(DBusMessageIter* aIter, const char* aID);
- void AppendSearchID(DBusMessageIter* aIter, const char* aID);
-- void ComposeSearchResultReply(DBusMessage* aReply, const char* aSearchTerm);
-+ void ComposeSearchResultReply(DBusMessage* aReply, const char* aSearchTerm,
-+ bool aSearchOnly);
- void LaunchWithID(const char* aID, uint32_t aTimeStamp);
- void LaunchWithAllResults(uint32_t aTimeStamp);
-
bgstack15