[SCM] WebKit Debian packaging branch, webkit-1.3, updated. upstream/1.3.7-4207-g178b198
carlosgc at webkit.org
carlosgc at webkit.org
Sun Feb 20 23:47:52 UTC 2011
The following commit has been merged in the webkit-1.3 branch:
commit 96982e93b59bacf86d9bd0d296422523bdffe8dd
Author: carlosgc at webkit.org <carlosgc at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Tue Jan 25 08:43:48 2011 +0000
2011-01-25 Carlos Garcia Campos <cgarcia at igalia.com>
Reviewed by Martin Robinson.
[GTK] Crash in some pages containing flash
https://bugs.webkit.org/show_bug.cgi?id=53016
Flash plugin can produce X errors that are handled by the GDK X
error handler, which exits the process. Since we don't want to
crash due to flash bugs, we install a custom error handler to show
a warning when a X error happens without aborting.
* plugins/gtk/PluginPackageGtk.cpp:
(WebCore::webkitgtkXError):
(WebCore::PluginPackage::load):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76578 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
index 0d48edb..da3c8c9 100644
--- a/Source/WebCore/ChangeLog
+++ b/Source/WebCore/ChangeLog
@@ -2,6 +2,22 @@
Reviewed by Martin Robinson.
+ [GTK] Crash in some pages containing flash
+ https://bugs.webkit.org/show_bug.cgi?id=53016
+
+ Flash plugin can produce X errors that are handled by the GDK X
+ error handler, which exits the process. Since we don't want to
+ crash due to flash bugs, we install a custom error handler to show
+ a warning when a X error happens without aborting.
+
+ * plugins/gtk/PluginPackageGtk.cpp:
+ (WebCore::webkitgtkXError):
+ (WebCore::PluginPackage::load):
+
+2011-01-25 Carlos Garcia Campos <cgarcia at igalia.com>
+
+ Reviewed by Martin Robinson.
+
[GTK] Implement spin buttons in RenderThemeGtk
https://bugs.webkit.org/show_bug.cgi?id=51454
diff --git a/Source/WebCore/plugins/gtk/PluginPackageGtk.cpp b/Source/WebCore/plugins/gtk/PluginPackageGtk.cpp
index a702296..26409a7 100644
--- a/Source/WebCore/plugins/gtk/PluginPackageGtk.cpp
+++ b/Source/WebCore/plugins/gtk/PluginPackageGtk.cpp
@@ -104,6 +104,22 @@ bool PluginPackage::fetchInfo()
#endif
}
+#if defined(XP_UNIX)
+static int webkitgtkXError(Display* xdisplay, XErrorEvent* error)
+{
+ gchar errorMessage[64];
+ XGetErrorText(xdisplay, error->error_code, errorMessage, 63);
+ g_warning("The program '%s' received an X Window System error.\n"
+ "This probably reflects a bug in the Adobe Flash plugin.\n"
+ "The error was '%s'.\n"
+ " (Details: serial %ld error_code %d request_code %d minor_code %d)\n",
+ g_get_prgname(), errorMessage,
+ error->serial, error->error_code,
+ error->request_code, error->minor_code);
+ return 0;
+}
+#endif
+
bool PluginPackage::load()
{
if (m_isLoaded) {
@@ -137,6 +153,15 @@ bool PluginPackage::load()
m_isLoaded = true;
+#if defined(XP_UNIX)
+ if (!g_strcmp0(baseName.get(), "libflashplayer.so")) {
+ // Flash plugin can produce X errors that are handled by the GDK X error handler, which
+ // exits the process. Since we don't want to crash due to flash bugs, we install a
+ // custom error handler to show a warning when a X error happens without aborting.
+ XSetErrorHandler(webkitgtkXError);
+ }
+#endif
+
NP_InitializeFuncPtr NP_Initialize = 0;
m_NPP_Shutdown = 0;
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list