[SCM] WebKit Debian packaging branch, webkit-1.2, updated. upstream/1.1.90-6072-g9a69373

timothy at apple.com timothy at apple.com
Thu Apr 8 00:12:53 UTC 2010


The following commit has been merged in the webkit-1.2 branch:
commit 82d5b0f99d82a35abc0d2e63d0fec0e9fd37cb1e
Author: timothy at apple.com <timothy at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Wed Dec 2 23:39:02 2009 +0000

    Fixes a crash when scrolling a frame that goes away mid-scroll.
    
    <rdar://problem/7400263>
    
    Reviewed by John Sullivan.
    
    * WebView/WebDynamicScrollBarsView.mm:
    (-[WebDynamicScrollBarsView scrollWheel:]): Retain self incase the last
    reference is released when calling super.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@51616 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKit/mac/ChangeLog b/WebKit/mac/ChangeLog
index 9c55241..2853bf9 100644
--- a/WebKit/mac/ChangeLog
+++ b/WebKit/mac/ChangeLog
@@ -1,3 +1,15 @@
+2009-12-02  Timothy Hatcher  <timothy at apple.com>
+
+        Fixes a crash when scrolling a frame that goes away mid-scroll.
+
+        <rdar://problem/7400263>
+
+        Reviewed by John Sullivan.
+
+        * WebView/WebDynamicScrollBarsView.mm:
+        (-[WebDynamicScrollBarsView scrollWheel:]): Retain self incase the last
+        reference is released when calling super.
+
 2009-11-13  Timothy Hatcher  <timothy at apple.com>
 
         Migrate DOMHTMLInputElementPrivate.h as a private header.
diff --git a/WebKit/mac/WebView/WebDynamicScrollBarsView.mm b/WebKit/mac/WebView/WebDynamicScrollBarsView.mm
index 3c28e3c..b4424e1 100644
--- a/WebKit/mac/WebView/WebDynamicScrollBarsView.mm
+++ b/WebKit/mac/WebView/WebDynamicScrollBarsView.mm
@@ -354,6 +354,10 @@ static const unsigned cMaxUpdateScrollbarsPass = 2;
         }
     }
 
+    // Calling super can release the last reference. <rdar://problem/7400263>
+    // Hold a reference so the code following the super call will not crash.
+    [self retain];
+
     [super scrollWheel:event];
 
     if (!isLatchingEvent) {
@@ -363,6 +367,8 @@ static const unsigned cMaxUpdateScrollbarsPass = 2;
         verticallyPinnedByPreviousWheelEvent = (verticalPosition == 0.0 || verticalPosition == 1.0);
         horizontallyPinnedByPreviousWheelEvent = (horizontalPosition == 0.0 || horizontalPosition == 1.0);
     }
+
+    [self release];
 }
 
 - (BOOL)accessibilityIsIgnored 

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list