summaryrefslogtreecommitdiffstats
path: root/abs/core/qt/qt-webkit-4.6.3-flash-plugin-segfault.patch
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core/qt/qt-webkit-4.6.3-flash-plugin-segfault.patch')
-rw-r--r--abs/core/qt/qt-webkit-4.6.3-flash-plugin-segfault.patch43
1 files changed, 0 insertions, 43 deletions
diff --git a/abs/core/qt/qt-webkit-4.6.3-flash-plugin-segfault.patch b/abs/core/qt/qt-webkit-4.6.3-flash-plugin-segfault.patch
deleted file mode 100644
index 6fc87ca..0000000
--- a/abs/core/qt/qt-webkit-4.6.3-flash-plugin-segfault.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-This patch fixes WebKit Bug 40567: [Qt] QtWebKit crashes while initializing
-flash plugin 10.1.53.64...
-https://bugs.webkit.org/show_bug.cgi?id=40567
-
---- src/3rdparty/webkit/WebCore/plugins/qt/PluginPackageQt.cpp
-+++ src/3rdparty/webkit/WebCore/plugins/qt/PluginPackageQt.cpp
-@@ -35,4 +35,6 @@
-
- namespace WebCore {
-+
-+typedef void gtkInitFunc(int *argc, char ***argv);
-
- bool PluginPackage::fetchInfo()
-@@ -110,4 +112,5 @@
- NP_InitializeFuncPtr NP_Initialize;
- NPError npErr;
-+ gtkInitFunc* gtkInit;
-
- NP_Initialize = (NP_InitializeFuncPtr)m_module->resolve("NP_Initialize");
-@@ -126,4 +129,24 @@
- // It does so in NP_Initialize with a null instance, therefore it is done this way:
- m_browserFuncs.getvalue = staticPluginQuirkRequiresGtkToolKit_NPN_GetValue;
-+ }
-+
-+ // WORKAROUND: Prevent gtk based plugin crashes such as BR# 40567 by
-+ // explicitly forcing the initializing of Gtk, i.e. calling gtk_init,
-+ // whenver the symbol is present in the plugin library loaded above.
-+ // Note that this workaround is based on code from the NSPluginClass ctor
-+ // in KDE's kdebase/apps/nsplugins/viewer/nsplugin.cpp file.
-+ gtkInit = (gtkInitFunc*)m_module->resolve("gtk_init");
-+ if (gtkInit) {
-+ // Prevent gtk_init() from replacing the X error handlers, since the Gtk
-+ // handlers abort when they receive an X error, thus killing the viewer.
-+#ifdef Q_WS_X11
-+ int (*old_error_handler)(Display*, XErrorEvent*) = XSetErrorHandler(0);
-+ int (*old_io_error_handler)(Display*) = XSetIOErrorHandler(0);
-+#endif
-+ gtkInit(0, 0);
-+#ifdef Q_WS_X11
-+ XSetErrorHandler(old_error_handler);
-+ XSetIOErrorHandler(old_io_error_handler);
-+#endif
- }