|
 |
10f0d1 |
diff --git eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT WebKit/gtk/org/eclipse/swt/browser/WebKit.java eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT WebKit/gtk/org/eclipse/swt/browser/WebKit.java
|
|
 |
10f0d1 |
index 7ef6236..5d434fe 100644
|
|
 |
10f0d1 |
--- eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT WebKit/gtk/org/eclipse/swt/browser/WebKit.java
|
|
 |
10f0d1 |
+++ eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT WebKit/gtk/org/eclipse/swt/browser/WebKit.java
|
|
 |
10f0d1 |
@@ -135,6 +135,23 @@ class WebKit extends WebBrowser {
|
|
 |
10f0d1 |
String webkit2 = System.getenv("SWT_WEBKIT2"); // $NON-NLS-1$
|
|
 |
10f0d1 |
WEBKIT2 = webkit2 != null && webkit2.equals("1") && OS.GTK3; // $NON-NLS-1$
|
|
 |
10f0d1 |
|
|
 |
10f0d1 |
+ /*
|
|
 |
10f0d1 |
+ * WebKitGTK version 1.8.x and newer can crash sporadically in
|
|
 |
10f0d1 |
+ * webkitWebViewRegisterForIconNotification(). The root issue appears
|
|
 |
10f0d1 |
+ * to be WebKitGTK accessing its icon database from a background
|
|
 |
10f0d1 |
+ * thread. Work around this crash by disabling the use of WebKitGTK's
|
|
 |
10f0d1 |
+ * icon database, which should not affect the Browser in any way.
|
|
 |
10f0d1 |
+ */
|
|
 |
10f0d1 |
+ if (WEBKIT2){
|
|
 |
10f0d1 |
+ WebKitGTK.webkit_web_context_set_favicon_database_directory(WebKitGTK.webkit_web_context_get_default(), 0);
|
|
 |
10f0d1 |
+ } else {
|
|
 |
10f0d1 |
+ long /*int*/ database = WebKitGTK.webkit_get_favicon_database ();
|
|
 |
10f0d1 |
+ if (database != 0) {
|
|
 |
10f0d1 |
+ /* WebKitGTK version is >= 1.8.x */
|
|
 |
10f0d1 |
+ WebKitGTK.webkit_favicon_database_set_path (database, 0);
|
|
 |
10f0d1 |
+ }
|
|
 |
10f0d1 |
+ }
|
|
 |
10f0d1 |
+
|
|
 |
10f0d1 |
WebViewType = WebKitGTK.webkit_web_view_get_type ();
|
|
 |
10f0d1 |
|
|
 |
10f0d1 |
Proc2 = new Callback (WebKit.class, "Proc", 2); //$NON-NLS-1$
|
|
 |
10f0d1 |
@@ -604,22 +621,6 @@ public void create (Composite parent, int style) {
|
|
 |
10f0d1 |
PostString = C.malloc (bytes.length);
|
|
 |
10f0d1 |
C.memmove (PostString, bytes, bytes.length);
|
|
 |
10f0d1 |
|
|
 |
10f0d1 |
- /*
|
|
 |
10f0d1 |
- * WebKitGTK version 1.8.x and newer can crash sporadically in
|
|
 |
10f0d1 |
- * webkitWebViewRegisterForIconNotification(). The root issue appears
|
|
 |
10f0d1 |
- * to be WebKitGTK accessing its icon database from a background
|
|
 |
10f0d1 |
- * thread. Work around this crash by disabling the use of WebKitGTK's
|
|
 |
10f0d1 |
- * icon database, which should not affect the Browser in any way.
|
|
 |
10f0d1 |
- */
|
|
 |
10f0d1 |
- if (WEBKIT2){
|
|
 |
10f0d1 |
- WebKitGTK.webkit_web_context_set_favicon_database_directory(WebKitGTK.webkit_web_context_get_default(), 0);
|
|
 |
10f0d1 |
- } else {
|
|
 |
10f0d1 |
- long /*int*/ database = WebKitGTK.webkit_get_favicon_database ();
|
|
 |
10f0d1 |
- if (database != 0) {
|
|
 |
10f0d1 |
- /* WebKitGTK version is >= 1.8.x */
|
|
 |
10f0d1 |
- WebKitGTK.webkit_favicon_database_set_path (database, 0);
|
|
 |
10f0d1 |
- }
|
|
 |
10f0d1 |
- }
|
|
 |
10f0d1 |
}
|
|
 |
10f0d1 |
|
|
 |
10f0d1 |
if (!WEBKIT2){
|