summaryrefslogtreecommitdiffstats
path: root/WebCore/platform/gtk/PopupMenuGtk.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/platform/gtk/PopupMenuGtk.cpp')
-rw-r--r--WebCore/platform/gtk/PopupMenuGtk.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/WebCore/platform/gtk/PopupMenuGtk.cpp b/WebCore/platform/gtk/PopupMenuGtk.cpp
index 54b41ab..121d7b0 100644
--- a/WebCore/platform/gtk/PopupMenuGtk.cpp
+++ b/WebCore/platform/gtk/PopupMenuGtk.cpp
@@ -28,7 +28,6 @@
#include "CString.h"
#include "FrameView.h"
#include "HostWindow.h"
-#include "NotImplemented.h"
#include "PlatformString.h"
#include <gtk/gtk.h>
@@ -42,8 +41,11 @@ PopupMenu::PopupMenu(PopupMenuClient* client)
PopupMenu::~PopupMenu()
{
- if (m_popup)
+ if (m_popup) {
+ g_signal_handlers_disconnect_matched(m_popup, G_SIGNAL_MATCH_DATA, 0, 0, 0, 0, this);
+ hide();
g_object_unref(m_popup);
+ }
}
void PopupMenu::show(const IntRect& rect, FrameView* view, int index)