Index: ui/app_list/views/search_result_tile_item_view.cc |
diff --git a/ui/app_list/views/search_result_tile_item_view.cc b/ui/app_list/views/search_result_tile_item_view.cc |
index ae3d8b43f3022a8bd4ed45a134f7f909f93c79e4..1823514ad7705001656591dbc88f11c98e4ab94b 100644 |
--- a/ui/app_list/views/search_result_tile_item_view.cc |
+++ b/ui/app_list/views/search_result_tile_item_view.cc |
@@ -26,6 +26,10 @@ SearchResultTileItemView::~SearchResultTileItemView() { |
} |
void SearchResultTileItemView::SetSearchResult(SearchResult* item) { |
+ // Handle the case where this may be called from a nested run loop while its |
+ // context menu is showing. This cancels the menu (it's for the old item). |
+ context_menu_runner_.reset(); |
+ |
SetVisible(item != NULL); |
SearchResult* old_item = item_; |