[gnome-continuous] manifest: patch webkitgtk4 to avoid crash while adding GOA accounts
- From: Vadim Rutkovsky <vrutkovsky src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-continuous] manifest: patch webkitgtk4 to avoid crash while adding GOA accounts
- Date: Tue, 17 Mar 2015 14:01:15 +0000 (UTC)
commit 99fc016abfec6c54e4f76c752e7bdf71e787593a
Author: Your Name <you example com>
Date: Tue Mar 17 13:31:03 2015 +0000
manifest: patch webkitgtk4 to avoid crash while adding GOA accounts
manifest.json | 2 +-
.../webkitgtk-2.7.91-webview-webcontext-ref.patch | 122 ++++++++++++++++++++
2 files changed, 123 insertions(+), 1 deletions(-)
---
diff --git a/manifest.json b/manifest.json
index e5d9593..c53da66 100644
--- a/manifest.json
+++ b/manifest.json
@@ -763,7 +763,7 @@
{"src": "tarball:http://www.webkitgtk.org/releases/webkitgtk-2.7.91.tar.xz",
"name": "webkitgtk4",
"checksum": "9d2b70a0dba6e2b6f74b82b2ceb92605921ecf0a554633ed98bc277c55b091e1",
- "patches": ["webkitgtk-cmake-buildapi.patch"]},
+ "patches": ["webkitgtk-cmake-buildapi.patch",
"webkitgtk-2.7.91-webview-webcontext-ref.patch"]},
{"src": "gnome:libgee",
"patches": ["gee-builddir.patch"]},
diff --git a/patches/webkitgtk-2.7.91-webview-webcontext-ref.patch
b/patches/webkitgtk-2.7.91-webview-webcontext-ref.patch
new file mode 100644
index 0000000..5b03dde
--- /dev/null
+++ b/patches/webkitgtk-2.7.91-webview-webcontext-ref.patch
@@ -0,0 +1,122 @@
+From 70b59360a89b92dc2e5d01c78b4e67286e679bb6 Mon Sep 17 00:00:00 2001
+From: Your Name <you example com>
+Date: Tue, 17 Mar 2015 13:29:25 +0000
+Subject: [PATCH] webkitgtk-2.7.91-webview-webcontext-ref.patch
+
+---
+ Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp | 22 +++++++++++-----------
+ 1 file changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp
b/Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp
+index 9d41fa9..058e3e0 100644
+--- a/Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp
++++ b/Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp
+@@ -170,7 +170,6 @@ struct _WebKitWebViewPrivate {
+ g_main_loop_quit(modalLoop.get());
+ }
+
+- WebKitWebContext* context;
+ WebKitWebView* relatedView;
+ CString title;
+ CString customTextEncoding;
+@@ -185,6 +184,7 @@ struct _WebKitWebViewPrivate {
+ GRefPtr<WebKitBackForwardList> backForwardList;
+ GRefPtr<WebKitSettings> settings;
+ GRefPtr<WebKitUserContentManager> userContentManager;
++ GRefPtr<WebKitWebContext> context;
+ GRefPtr<WebKitWindowProperties> windowProperties;
+
+ GRefPtr<GMainLoop> modalLoop;
+@@ -448,7 +448,7 @@ static void webkitWebViewRequestFavicon(WebKitWebView* webView)
+
+ WebKitWebViewPrivate* priv = webView->priv;
+ priv->faviconCancellable = adoptGRef(g_cancellable_new());
+- WebKitFaviconDatabase* database = webkit_web_context_get_favicon_database(priv->context);
++ WebKitFaviconDatabase* database = webkit_web_context_get_favicon_database(priv->context.get());
+ webkit_favicon_database_get_favicon(database, priv->activeURI.data(), priv->faviconCancellable.get(),
gotFaviconCallback, webView);
+ }
+
+@@ -510,7 +510,7 @@ static void webkitWebViewWatchForChangesInFavicon(WebKitWebView* webView)
+ if (priv->faviconChangedHandlerID)
+ return;
+
+- WebKitFaviconDatabase* database = webkit_web_context_get_favicon_database(priv->context);
++ WebKitFaviconDatabase* database = webkit_web_context_get_favicon_database(priv->context.get());
+ priv->faviconChangedHandlerID = g_signal_connect(database, "favicon-changed",
G_CALLBACK(faviconChangedCallback), webView);
+ }
+
+@@ -518,7 +518,7 @@ static void webkitWebViewDisconnectFaviconDatabaseSignalHandlers(WebKitWebView*
+ {
+ WebKitWebViewPrivate* priv = webView->priv;
+ if (priv->faviconChangedHandlerID)
+- g_signal_handler_disconnect(webkit_web_context_get_favicon_database(priv->context),
priv->faviconChangedHandlerID);
++ g_signal_handler_disconnect(webkit_web_context_get_favicon_database(priv->context.get()),
priv->faviconChangedHandlerID);
+ priv->faviconChangedHandlerID = 0;
+ }
+
+@@ -639,7 +639,7 @@ static void webkitWebViewConstructed(GObject* object)
+ if (!priv->settings)
+ priv->settings = adoptGRef(webkit_settings_new());
+
+- webkitWebContextCreatePageForWebView(priv->context, webView, priv->userContentManager.get(),
priv->relatedView);
++ webkitWebContextCreatePageForWebView(priv->context.get(), webView, priv->userContentManager.get(),
priv->relatedView);
+
+ priv->loadObserver = std::make_unique<PageLoadStateObserver>(webView);
+ getPage(webView)->pageLoadState().addObserver(*priv->loadObserver);
+@@ -706,7 +706,7 @@ static void webkitWebViewGetProperty(GObject* object, guint propId, GValue* valu
+
+ switch (propId) {
+ case PROP_WEB_CONTEXT:
+- g_value_set_object(value, webView->priv->context);
++ g_value_set_object(value, webView->priv->context.get());
+ break;
+ case PROP_SETTINGS:
+ g_value_set_object(value, webkit_web_view_get_settings(webView));
+@@ -756,7 +756,7 @@ static void webkitWebViewDispose(GObject* object)
+ webView->priv->loadObserver.reset();
+ }
+
+- webkitWebContextWebViewDestroyed(webView->priv->context, webView);
++ webkitWebContextWebViewDestroyed(webView->priv->context.get(), webView);
+
+ G_OBJECT_CLASS(webkit_web_view_parent_class)->dispose(object);
+ }
+@@ -1811,7 +1811,7 @@ void webkitWebViewLoadChanged(WebKitWebView* webView, WebKitLoadEvent loadEvent)
+ priv->mainResource = 0;
+ priv->waitingForMainResource = false;
+ } else if (loadEvent == WEBKIT_LOAD_COMMITTED) {
+- WebKitFaviconDatabase* database = webkit_web_context_get_favicon_database(priv->context);
++ WebKitFaviconDatabase* database = webkit_web_context_get_favicon_database(priv->context.get());
+ GUniquePtr<char> faviconURI(webkit_favicon_database_get_favicon_uri(database,
priv->activeURI.data()));
+ webkitWebViewUpdateFaviconURI(webView, faviconURI.get());
+
+@@ -1843,7 +1843,7 @@ void webkitWebViewLoadFailedWithTLSErrors(WebKitWebView* webView, const char* fa
+ {
+ webkitWebViewCancelAuthenticationRequest(webView);
+
+- WebKitTLSErrorsPolicy tlsErrorsPolicy =
webkit_web_context_get_tls_errors_policy(webView->priv->context);
++ WebKitTLSErrorsPolicy tlsErrorsPolicy =
webkit_web_context_get_tls_errors_policy(webView->priv->context.get());
+ if (tlsErrorsPolicy == WEBKIT_TLS_ERRORS_POLICY_FAIL) {
+ gboolean returnValue;
+ g_signal_emit(webView, signals[LOAD_FAILED_WITH_TLS_ERRORS], 0, failingURI, certificate, tlsErrors,
&returnValue);
+@@ -2247,7 +2247,7 @@ WebKitWebContext* webkit_web_view_get_context(WebKitWebView *webView)
+ {
+ g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), 0);
+
+- return webView->priv->context;
++ return webView->priv->context.get();
+ }
+
+ /**
+@@ -3381,7 +3381,7 @@ WebKitDownload* webkit_web_view_download_uri(WebKitWebView* webView, const char*
+ g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), 0);
+ g_return_val_if_fail(uri, 0);
+
+- WebKitDownload* download = webkitWebContextStartDownload(webView->priv->context, uri, getPage(webView));
++ WebKitDownload* download = webkitWebContextStartDownload(webView->priv->context.get(), uri,
getPage(webView));
+ webkitDownloadSetWebView(download, webView);
+
+ return download;
+--
+2.1.0
+
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]