summaryrefslogtreecommitdiffstats
path: root/chrome/browser/gtk/task_manager_gtk.h
diff options
context:
space:
mode:
authorthestig@chromium.org <thestig@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-02 18:33:28 +0000
committerthestig@chromium.org <thestig@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-02 18:33:28 +0000
commitd0a90c26431a82a4be49f642a65cd478463a0215 (patch)
tree9547cbf609c83c2358c36d482c768d37a18632a4 /chrome/browser/gtk/task_manager_gtk.h
parentf8c92984e016fbed8a7f225cf03329472707b7d0 (diff)
downloadchromium_src-d0a90c26431a82a4be49f642a65cd478463a0215.zip
chromium_src-d0a90c26431a82a4be49f642a65cd478463a0215.tar.gz
chromium_src-d0a90c26431a82a4be49f642a65cd478463a0215.tar.bz2
Destroy the TaskManagerGtk singleton instance when its window is destroyed, otherwise its treeview will still be getting notifications and trying to manipulate the destroyed treeview.
BUG=none TEST=Install an extension, open the task manager, and quit the browser should not result in a GTK error. Review URL: http://codereview.chromium.org/345031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30720 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/gtk/task_manager_gtk.h')
-rw-r--r--chrome/browser/gtk/task_manager_gtk.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/chrome/browser/gtk/task_manager_gtk.h b/chrome/browser/gtk/task_manager_gtk.h
index c236b15..8a9ae4a 100644
--- a/chrome/browser/gtk/task_manager_gtk.h
+++ b/chrome/browser/gtk/task_manager_gtk.h
@@ -69,6 +69,9 @@ class TaskManagerGtk : public TaskManagerModelObserver {
gint CompareImpl(GtkTreeModel* tree_model, GtkTreeIter* a,
GtkTreeIter* b, int id);
+ // response signal handler that notifies us of dialog destruction.
+ static void OnDestroy(GtkDialog* dialog, TaskManagerGtk* task_manager);
+
// response signal handler that notifies us of dialog responses.
static void OnResponse(GtkDialog* dialog, gint response_id,
TaskManagerGtk* task_manager);
@@ -193,6 +196,9 @@ class TaskManagerGtk : public TaskManagerModelObserver {
// The number of processes in |process_list_|.
int process_count_;
+ // The id of the |dialog_| destroy signal handler.
+ gulong destroy_handler_id_;
+
// The context menu controller.
scoped_ptr<ContextMenuController> menu_controller_;