Reviewed by Darin.
authorap <ap@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 13 Jul 2006 15:54:37 +0000 (15:54 +0000)
committerap <ap@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 13 Jul 2006 15:54:37 +0000 (15:54 +0000)
        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9880
          Memory leaks running DOM-Hanoi

        No change in behavior, thus no test included.

        * bridge/mac/FrameMac.mm:
        (WebCore::FrameMac::setStatusBarText): Use a local autorelease pool to release the temporaries -
        the test runs non-stop, and the enclosing pool doesn't get a chance to be drained.

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

WebCore/ChangeLog
WebCore/bridge/mac/FrameMac.mm

index 91bccc5..778e8e6 100644 (file)
@@ -1,3 +1,16 @@
+2006-07-13  Alexey Proskuryakov  <ap@nypop.com>
+
+        Reviewed by Darin.
+
+        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9880
+          Memory leaks running DOM-Hanoi
+
+        No change in behavior, thus no test included.
+
+        * bridge/mac/FrameMac.mm:
+        (WebCore::FrameMac::setStatusBarText): Use a local autorelease pool to release the temporaries - 
+        the test runs non-stop, and the enclosing pool doesn't get a chance to be drained.
+
 2006-07-12  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
         Reviewed by Adele.
index c890e4d..5d99637 100644 (file)
@@ -610,9 +610,15 @@ void FrameMac::setStatusBarText(const String& status)
     String text = status;
     text.replace('\\', backslashAsCurrencySymbol());
     
+    // We want the temporaries allocated here to be released even before returning to the 
+    // event loop; see <http://bugzilla.opendarwin.org/show_bug.cgi?id=9880>.
+    NSAutoreleasePool* localPool = [[NSAutoreleasePool alloc] init];
+
     BEGIN_BLOCK_OBJC_EXCEPTIONS;
     [_bridge setStatusText:text];
     END_BLOCK_OBJC_EXCEPTIONS;
+
+    [localPool release];
 }
 
 void FrameMac::scheduleClose()