2010-08-23 Sheriff Bot <webkit.review.bot@gmail.com>
authoreric@webkit.org <eric@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 23 Aug 2010 22:59:51 +0000 (22:59 +0000)
committereric@webkit.org <eric@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 23 Aug 2010 22:59:51 +0000 (22:59 +0000)
        Unreviewed, rolling out r65703.
        http://trac.webkit.org/changeset/65703
        https://bugs.webkit.org/show_bug.cgi?id=44460

        "Causing lots of crashes on Snow Leopard when running the
        layout tests" (Requested by eseidel2 on #webkit).

        * WebProcess/Plugins/Netscape/NetscapePluginModule.cpp:
        (WebKit::NetscapePluginModule::tryLoad):
2010-08-23  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r65703.
        http://trac.webkit.org/changeset/65703
        https://bugs.webkit.org/show_bug.cgi?id=44460

        "Causing lots of crashes on Snow Leopard when running the
        layout tests" (Requested by eseidel2 on #webkit).

        * DumpRenderTree/TestNetscapePlugIn/main.cpp:
        (NP_Initialize):
        (NP_GetEntryPoints):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@65838 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebKit2/ChangeLog
WebKit2/WebProcess/Plugins/Netscape/NetscapePluginModule.cpp
WebKitTools/ChangeLog
WebKitTools/DumpRenderTree/TestNetscapePlugIn/main.cpp

index cdec9ad..1e29563 100644 (file)
@@ -1,3 +1,15 @@
+2010-08-23  Sheriff Bot  <webkit.review.bot@gmail.com>
+
+        Unreviewed, rolling out r65703.
+        http://trac.webkit.org/changeset/65703
+        https://bugs.webkit.org/show_bug.cgi?id=44460
+
+        "Causing lots of crashes on Snow Leopard when running the
+        layout tests" (Requested by eseidel2 on #webkit).
+
+        * WebProcess/Plugins/Netscape/NetscapePluginModule.cpp:
+        (WebKit::NetscapePluginModule::tryLoad):
+
 2010-08-23  Jon Honeycutt  <jhoneycutt@apple.com>
 
         Layout tests do not run when using WebKitTestRunner in a Debug build.
index b7d4a8e..a3b8788 100644 (file)
@@ -129,19 +129,13 @@ bool NetscapePluginModule::tryLoad()
     if (!m_shutdownProcPtr)
         return false;
 
+    if (initializeFuncPtr(netscapeBrowserFuncs()) != NPERR_NO_ERROR)
+        return false;
+
     m_pluginFuncs.size = sizeof(NPPluginFuncs);
     m_pluginFuncs.version = (NP_VERSION_MAJOR << 8) | NP_VERSION_MINOR;
-
-    // On Mac, NP_Initialize must be called first, then NP_GetEntryPoints. On Windows, the order is
-    // reversed. Failing to follow this order results in crashes (e.g., in Silverlight on Mac and
-    // in Flash and QuickTime on Windows).
-#if PLATFORM(MAC)
-    if (initializeFuncPtr(netscapeBrowserFuncs()) != NPERR_NO_ERROR || getEntryPointsFuncPtr(&m_pluginFuncs) != NPERR_NO_ERROR)
-        return false;
-#elif PLATFORM(WIN)
-    if (getEntryPointsFuncPtr(&m_pluginFuncs) != NPERR_NO_ERROR || initializeFuncPtr(netscapeBrowserFuncs()) != NPERR_NO_ERROR)
+    if (getEntryPointsFuncPtr(&m_pluginFuncs) != NPERR_NO_ERROR)
         return false;
-#endif
 
     return true;
 }
index c5ba2bb..6323a4f 100644 (file)
@@ -1,3 +1,16 @@
+2010-08-23  Sheriff Bot  <webkit.review.bot@gmail.com>
+
+        Unreviewed, rolling out r65703.
+        http://trac.webkit.org/changeset/65703
+        https://bugs.webkit.org/show_bug.cgi?id=44460
+
+        "Causing lots of crashes on Snow Leopard when running the
+        layout tests" (Requested by eseidel2 on #webkit).
+
+        * DumpRenderTree/TestNetscapePlugIn/main.cpp:
+        (NP_Initialize):
+        (NP_GetEntryPoints):
+
 2010-08-23  Jon Honeycutt  <jhoneycutt@apple.com>
 
         Layout tests do not run when using WebKitTestRunner in a Debug build.
index 6088d5b..fcda50b 100644 (file)
 
 using namespace std;
 
-#define CRASH() do { \
-    *(int *)(uintptr_t)0xbbadbeef = 0; \
-    ((void(*)())0)(); /* More reliable, but doesn't say BBADBEEF */ \
-} while(false)
-
-static bool getEntryPointsWasCalled;
-
 #if XP_WIN
 #define STDCALL __stdcall
 
@@ -54,16 +47,6 @@ static inline int strcasecmp(const char* s1, const char* s2)
 extern "C"
 NPError STDCALL NP_Initialize(NPNetscapeFuncs *browserFuncs)
 {
-#if XP_WIN
-    // Simulate Flash and QuickTime's behavior of crashing when NP_Initialize is called before NP_GetEntryPoints.
-    if (!getEntryPointsWasCalled)
-        CRASH();
-#elif XP_MACOSX
-    // Simulate Silverlight's behavior of crashing when NP_GetEntryPoints is called before NP_Initialize.
-    if (getEntryPointsWasCalled)
-        CRASH();
-#endif
-
     browser = browserFuncs;
     return NPERR_NO_ERROR;
 }
@@ -71,8 +54,6 @@ NPError STDCALL NP_Initialize(NPNetscapeFuncs *browserFuncs)
 extern "C"
 NPError STDCALL NP_GetEntryPoints(NPPluginFuncs *pluginFuncs)
 {
-    getEntryPointsWasCalled = true;
-
     pluginFuncs->version = (NP_VERSION_MAJOR << 8) | NP_VERSION_MINOR;
     pluginFuncs->size = sizeof(pluginFuncs);
     pluginFuncs->newp = NPP_New;