summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKristian Høgsberg <krh@bitplanet.net>2014-01-10 00:27:35 -0800
committerKristian Høgsberg <krh@bitplanet.net>2014-01-10 00:27:35 -0800
commitb637a40df950398cb0b4ab7f77f73fc7e7886fe8 (patch)
treeee29dfec6f00cf3a6323083f568ca019b4aa9d6d
parent9046d2424ab388a0acde1bf0a0c51e292d146f9f (diff)
window: Properly destroy tooltip windows when parent window is destroyed1.3.92
If we destroy a window with an active tooltip, we leave the tooltip hanging around. Call tooltip destructor when destroying a window. This fixes the stuck tooltip observed when unplugging a monitor with an active tooltip on the panel. Closes: https://bugs.freedesktop.org/show_bug.cgi?id=72931
-rw-r--r--clients/window.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/clients/window.c b/clients/window.c
index 19519b3c..d59b9c7f 100644
--- a/clients/window.c
+++ b/clients/window.c
@@ -1653,10 +1653,8 @@ widget_destroy(struct widget *widget)
if (surface->widget == widget && surface->subsurface)
surface_destroy(widget->surface);
- if (widget->tooltip) {
- free(widget->tooltip);
- widget->tooltip = NULL;
- }
+ if (widget->tooltip)
+ widget_destroy_tooltip(widget);
wl_list_for_each(input, &display->input_list, link) {
if (input->focus_widget == widget)