From: mitz@apple.com Date: Wed, 12 Oct 2011 21:34:38 +0000 (+0000) Subject: Hang beneath PluginProcessProxy::createPropertyListFile() when using a thin build X-Git-Url: https://git.webkit.org/?p=WebKit-https.git;a=commitdiff_plain;h=5b777cf64a5eeafa38bab8535909570cc698bde4 Hang beneath PluginProcessProxy::createPropertyListFile() when using a thin build https://bugs.webkit.org/show_bug.cgi?id=69960 Reviewed by Adam Roben. * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: (WebKit::PluginProcessProxy::createPropertyListFile): Check for any non-zero return value from posix_spawn() rather than for a negative return value. The old, incorrect check, caused this function to hang in waitpid() after failing to spawn a plug-in process for a 32-bit plug-in when WebKit2 was built for 64-bit only. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@97304 268f45cc-cd09-0410-ab3c-d52691b4dbfc --- diff --git a/Source/WebKit2/ChangeLog b/Source/WebKit2/ChangeLog index 2b588a70e921..2f2cc1f88ef8 100644 --- a/Source/WebKit2/ChangeLog +++ b/Source/WebKit2/ChangeLog @@ -1,3 +1,16 @@ +2011-10-12 Dan Bernstein + + Hang beneath PluginProcessProxy::createPropertyListFile() when using a thin build + https://bugs.webkit.org/show_bug.cgi?id=69960 + + Reviewed by Adam Roben. + + * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: + (WebKit::PluginProcessProxy::createPropertyListFile): Check for any non-zero return value + from posix_spawn() rather than for a negative return value. The old, incorrect check, caused + this function to hang in waitpid() after failing to spawn a plug-in process for a 32-bit plug-in + when WebKit2 was built for 64-bit only. + 2011-10-12 Jesus Sanchez-Palencia [Qt][WK2] Move qweberror* out of API/qt diff --git a/Source/WebKit2/UIProcess/Plugins/mac/PluginProcessProxyMac.mm b/Source/WebKit2/UIProcess/Plugins/mac/PluginProcessProxyMac.mm index cd1c3ad160cd..b072417fea28 100644 --- a/Source/WebKit2/UIProcess/Plugins/mac/PluginProcessProxyMac.mm +++ b/Source/WebKit2/UIProcess/Plugins/mac/PluginProcessProxyMac.mm @@ -97,7 +97,7 @@ bool PluginProcessProxy::createPropertyListFile(const PluginModuleInfo& plugin) int result = posix_spawn(&pid, args[0], 0, &attr, const_cast(args), environmentVariables.environmentPointer()); posix_spawnattr_destroy(&attr); - if (result < 0) + if (result) return false; int status; if (waitpid(pid, &status, 0) < 0)