Index: chrome/browser/ui/cocoa/download/download_item_button.mm |
diff --git a/chrome/browser/ui/cocoa/download/download_item_button.mm b/chrome/browser/ui/cocoa/download/download_item_button.mm |
index d6f1c522a7a419d712deae344c38befb3c182bb7..de5c873e5e0b72380f294263e6ef1b46a9287c5c 100644 |
--- a/chrome/browser/ui/cocoa/download/download_item_button.mm |
+++ b/chrome/browser/ui/cocoa/download/download_item_button.mm |
@@ -43,6 +43,13 @@ |
} |
} |
+// Override to retain the controller, in case a closure is pumped that deletes |
+// the DownloadItemController while the menu is open <http://crbug.com/129826>. |
+- (void)rightMouseDown:(NSEvent*)event { |
+ scoped_nsobject<DownloadItemController> ref([controller_ retain]); |
+ [super rightMouseDown:event]; |
+} |
+ |
- (void)menuDidClose:(NSMenu*)menu { |
[[self cell] setHighlighted:NO]; |
} |