summaryrefslogtreecommitdiffstats
path: root/chrome/browser/gtk/options/cookies_view.cc
diff options
context:
space:
mode:
authormattm@chromium.org <mattm@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-23 01:51:33 +0000
committermattm@chromium.org <mattm@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-23 01:51:33 +0000
commit70853b00ae4f3a0b3c96978cfa4a5caeabacb60b (patch)
tree0963c7a0aeb351e66f7ece5f1ac52ec8be9f8667 /chrome/browser/gtk/options/cookies_view.cc
parent7bf54f5ec74d9d3b3498c02b83da572a78fc1df6 (diff)
downloadchromium_src-70853b00ae4f3a0b3c96978cfa4a5caeabacb60b.zip
chromium_src-70853b00ae4f3a0b3c96978cfa4a5caeabacb60b.tar.gz
chromium_src-70853b00ae4f3a0b3c96978cfa4a5caeabacb60b.tar.bz2
Linux: fix crash in PopulateCookieDetails called by OnSelectionChanged callback
which can be called while the view and model are in inconsistent states. BUG=25535 TEST=open cookies manager, select all, remove all Review URL: http://codereview.chromium.org/334001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29860 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/gtk/options/cookies_view.cc')
-rw-r--r--chrome/browser/gtk/options/cookies_view.cc9
1 files changed, 9 insertions, 0 deletions
diff --git a/chrome/browser/gtk/options/cookies_view.cc b/chrome/browser/gtk/options/cookies_view.cc
index b2b16e0..6e47043 100644
--- a/chrome/browser/gtk/options/cookies_view.cc
+++ b/chrome/browser/gtk/options/cookies_view.cc
@@ -366,7 +366,16 @@ void CookiesView::RemoveSelectedCookies() {
}
}
+void CookiesView::OnAnyModelUpdateStart() {
+ g_signal_handlers_block_by_func(
+ G_OBJECT(selection_), reinterpret_cast<gpointer>(OnSelectionChanged),
+ this);
+}
+
void CookiesView::OnAnyModelUpdate() {
+ g_signal_handlers_unblock_by_func(
+ G_OBJECT(selection_), reinterpret_cast<gpointer>(OnSelectionChanged),
+ this);
EnableControls();
}