summaryrefslogtreecommitdiffstats
path: root/chrome/browser/cocoa/hung_renderer_controller.h
diff options
context:
space:
mode:
authorshess@chromium.org <shess@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-12-10 21:18:03 +0000
committershess@chromium.org <shess@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-12-10 21:18:03 +0000
commit9e43ee4061beb03ab170520b6b511025b8eaf236 (patch)
treefde04088071f2d696f90928874470cf07055b3ab /chrome/browser/cocoa/hung_renderer_controller.h
parente8c20ffc89d4194aa290206d95f6fdf19b4d12ea (diff)
downloadchromium_src-9e43ee4061beb03ab170520b6b511025b8eaf236.zip
chromium_src-9e43ee4061beb03ab170520b6b511025b8eaf236.tar.gz
chromium_src-9e43ee4061beb03ab170520b6b511025b8eaf236.tar.bz2
[Mac] Attempt to fix ref-after-free problems with NSTableView dataSource.
Clearing dataSource in the source's -dealloc seems generally good. HungRendererController having a local copy of the titles is in case the table view is redrawn as part of closing the window (this can happen if the window is closed while the user is mousing on the table, and perhaps at other times). BUG=29558 TEST=Crash noted in bug stops happening. Review URL: http://codereview.chromium.org/469016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34281 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/cocoa/hung_renderer_controller.h')
-rw-r--r--chrome/browser/cocoa/hung_renderer_controller.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/chrome/browser/cocoa/hung_renderer_controller.h b/chrome/browser/cocoa/hung_renderer_controller.h
index 9b890c7..4a4ceaf 100644
--- a/chrome/browser/cocoa/hung_renderer_controller.h
+++ b/chrome/browser/cocoa/hung_renderer_controller.h
@@ -22,6 +22,7 @@
#include <vector>
#import "base/cocoa_protocols_mac.h"
+#import "base/scoped_nsobject.h"
@class MultiKeyEquivalentButton;
class TabContents;
@@ -38,9 +39,9 @@ class TabContents;
// NULL while this dialog is open.
TabContents* hungContents_;
- // Backing data for |tableView_|. Contains a list of all
- // TabContents that share a renderer process with |hungContents_|.
- std::vector<TabContents*> hungRenderers_;
+ // Backing data for |tableView_|. Titles of each TabContents that
+ // shares a renderer process with |hungContents_|.
+ scoped_nsobject<NSArray> hungTitles_;
}
// Kills the hung renderers.