[SCM] WebKit Debian packaging branch, debian/experimental, updated. debian/1.3.8-1-142-g786665c

andersca at apple.com andersca at apple.com
Mon Dec 27 16:27:48 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit b0642acaa4247eeefcd96c6c7cd0d7661790bbaf
Author: andersca at apple.com <andersca at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Tue Dec 21 21:18:56 2010 +0000

    Fix crash when a Carbon plug-in fails to initialize correctly
    https://bugs.webkit.org/show_bug.cgi?id=51415
    
    Reviewed by Dan Bernstein.
    
    * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
    (WebKit::NPN_GetValue):
    Don't claim to support the QuickDraw event model.
    
    * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
    (WebKit::NetscapePlugin::platformDestroy):
    Only try to remove the window from the map if it's not null.
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@74423 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKit2/ChangeLog b/WebKit2/ChangeLog
index 927f7db..272a1ac 100644
--- a/WebKit2/ChangeLog
+++ b/WebKit2/ChangeLog
@@ -1,5 +1,20 @@
 2010-12-21  Anders Carlsson  <andersca at apple.com>
 
+        Reviewed by Dan Bernstein.
+
+        Fix crash when a Carbon plug-in fails to initialize correctly
+        https://bugs.webkit.org/show_bug.cgi?id=51415
+
+        * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
+        (WebKit::NPN_GetValue):
+        Don't claim to support the QuickDraw event model.
+
+        * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
+        (WebKit::NetscapePlugin::platformDestroy):
+        Only try to remove the window from the map if it's not null.
+
+2010-12-21  Anders Carlsson  <andersca at apple.com>
+
         Reviewed by Darin Adler.
 
         Add ArgumentCoder support for CFDataRef
diff --git a/WebKit2/WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp b/WebKit2/WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp
index bb59cb7..c09f779 100644
--- a/WebKit2/WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp
+++ b/WebKit2/WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp
@@ -415,6 +415,11 @@ static NPError NPN_GetValue(NPP npp, NPNVariable variable, void *value)
             break;
         }
 #if PLATFORM(MAC)
+        case NPNVsupportsQuickDrawBool:
+            // We don't support the QuickDraw drawing model.
+            *(NPBool*)value = false;
+            break;
+
         case NPNVsupportsCoreGraphicsBool:
             // Always claim to support the Core Graphics drawing model.
             *(NPBool*)value = true;
diff --git a/WebKit2/WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm b/WebKit2/WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm
index add76c3..5a82cba 100644
--- a/WebKit2/WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm
+++ b/WebKit2/WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm
@@ -170,12 +170,13 @@ void NetscapePlugin::platformDestroy()
 {
 #ifndef NP_NO_CARBON
     if (m_eventModel == NPEventModelCarbon) {
-        // Destroy the fake Carbon window.
-        if (m_npCGContext.window)
-            DisposeWindow(static_cast<WindowRef>(m_npCGContext.window));
+        if (WindowRef window = windowRef()) {
+            // Destroy the fake Carbon window.
+            DisposeWindow(window);
 
-        ASSERT(windowMap().contains(windowRef()));
-        windowMap().remove(windowRef());
+            ASSERT(windowMap().contains(window));
+            windowMap().remove(window);
+        }
 
         // Stop the null event timer.
         m_nullEventTimer.stop();

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list