|
|
4796795 |
From cc695e3523901ba44fa7f0fa4c0b36018cb61246 Mon Sep 17 00:00:00 2001
|
|
|
4796795 |
From: raveit65 <mate@raveit.de>
|
|
|
4796795 |
Date: Tue, 2 May 2017 13:21:51 +0200
|
|
|
4796795 |
Subject: [PATCH] Revert "compositor: fix possible crash closing/destroying
|
|
|
4796795 |
window"
|
|
|
4796795 |
|
|
|
4796795 |
This reverts commit 768fdd8d3852e67555a585da28b6404a97853cbd.
|
|
|
4796795 |
|
|
|
4796795 |
Possible fix for issue 251
|
|
|
4796795 |
---
|
|
|
4796795 |
src/compositor/compositor-private.h | 3 ---
|
|
|
4796795 |
src/compositor/compositor-xrender.c | 34 +++++++++-------------------------
|
|
|
4796795 |
src/compositor/compositor.c | 4 ----
|
|
|
4796795 |
3 files changed, 9 insertions(+), 32 deletions(-)
|
|
|
4796795 |
|
|
|
4796795 |
diff --git a/src/compositor/compositor-private.h b/src/compositor/compositor-private.h
|
|
|
4796795 |
index 1eef963..fed5e8e 100644
|
|
|
4796795 |
--- a/src/compositor/compositor-private.h
|
|
|
4796795 |
+++ b/src/compositor/compositor-private.h
|
|
|
4796795 |
@@ -55,9 +55,6 @@ struct _MetaCompositor
|
|
|
4796795 |
MetaScreen *screen,
|
|
|
4796795 |
MetaWindow *window);
|
|
|
4796795 |
|
|
|
4796795 |
- void (*free_window) (MetaCompositor *compositor,
|
|
|
4796795 |
- MetaWindow *window);
|
|
|
4796795 |
-
|
|
|
4796795 |
void (*maximize_window) (MetaCompositor *compositor,
|
|
|
4796795 |
MetaWindow *window);
|
|
|
4796795 |
void (*unmaximize_window) (MetaCompositor *compositor,
|
|
|
4796795 |
diff --git a/src/compositor/compositor-xrender.c b/src/compositor/compositor-xrender.c
|
|
|
4796795 |
index 1da598c..c65a7eb 100644
|
|
|
4796795 |
--- a/src/compositor/compositor-xrender.c
|
|
|
4796795 |
+++ b/src/compositor/compositor-xrender.c
|
|
|
4796795 |
@@ -2694,38 +2694,23 @@ xrender_end_move (MetaCompositor *compositor,
|
|
|
4796795 |
#ifdef HAVE_COMPOSITE_EXTENSIONS
|
|
|
4796795 |
#endif
|
|
|
4796795 |
}
|
|
|
4796795 |
-#endif /* 0 */
|
|
|
4796795 |
|
|
|
4796795 |
static void
|
|
|
4796795 |
xrender_free_window (MetaCompositor *compositor,
|
|
|
4796795 |
MetaWindow *window)
|
|
|
4796795 |
{
|
|
|
4796795 |
#ifdef HAVE_COMPOSITE_EXTENSIONS
|
|
|
4796795 |
- MetaCompositorXRender *xrc;
|
|
|
4796795 |
- MetaFrame *frame;
|
|
|
4796795 |
- Window xwindow;
|
|
|
4796795 |
-
|
|
|
4796795 |
- xrc = (MetaCompositorXRender *) compositor;
|
|
|
4796795 |
- frame = meta_window_get_frame (window);
|
|
|
4796795 |
- xwindow = None;
|
|
|
4796795 |
-
|
|
|
4796795 |
- if (frame)
|
|
|
4796795 |
- {
|
|
|
4796795 |
- xwindow = meta_frame_get_xwindow (frame);
|
|
|
4796795 |
- }
|
|
|
4796795 |
- else
|
|
|
4796795 |
- {
|
|
|
4796795 |
- /* FIXME: When an undecorated window is hidden this is called, but the
|
|
|
4796795 |
- * window does not get readded if it is subsequentally shown again. See:
|
|
|
4796795 |
- * http://bugzilla.gnome.org/show_bug.cgi?id=504876
|
|
|
4796795 |
- */
|
|
|
4796795 |
- /* xwindow = meta_window_get_xwindow (window); */
|
|
|
4796795 |
- }
|
|
|
4796795 |
-
|
|
|
4796795 |
- if (xwindow != None)
|
|
|
4796795 |
- destroy_win (xrc->display, xwindow, FALSE);
|
|
|
4796795 |
+ /* FIXME: When an undecorated window is hidden this is called,
|
|
|
4796795 |
+ but the window does not get readded if it is subsequentally shown again
|
|
|
4796795 |
+ See http://bugzilla.gnome.org/show_bug.cgi?id=504876
|
|
|
4796795 |
+
|
|
|
4796795 |
+ I don't *think* theres any need for this call anyway, leaving it out
|
|
|
4796795 |
+ does not seem to cause any side effects so far, but I should check with
|
|
|
4796795 |
+ someone who understands more. */
|
|
|
4796795 |
+ /* destroy_win (compositor->display, window->xwindow, FALSE); */
|
|
|
4796795 |
#endif
|
|
|
4796795 |
}
|
|
|
4796795 |
+#endif /* 0 */
|
|
|
4796795 |
|
|
|
4796795 |
static void
|
|
|
4796795 |
xrender_process_event (MetaCompositor *compositor,
|
|
|
4796795 |
@@ -3052,7 +3037,6 @@ static MetaCompositor comp_info = {
|
|
|
4796795 |
xrender_get_window_pixmap,
|
|
|
4796795 |
#endif
|
|
|
4796795 |
xrender_set_active_window,
|
|
|
4796795 |
- xrender_free_window,
|
|
|
4796795 |
xrender_maximize_window,
|
|
|
4796795 |
xrender_unmaximize_window,
|
|
|
4796795 |
};
|
|
|
4796795 |
diff --git a/src/compositor/compositor.c b/src/compositor/compositor.c
|
|
|
4796795 |
index 4d3f370..263606e 100644
|
|
|
4796795 |
--- a/src/compositor/compositor.c
|
|
|
4796795 |
+++ b/src/compositor/compositor.c
|
|
|
4796795 |
@@ -172,10 +172,6 @@ void meta_compositor_end_move (MetaCompositor *compositor,
|
|
|
4796795 |
void meta_compositor_free_window (MetaCompositor *compositor,
|
|
|
4796795 |
MetaWindow *window)
|
|
|
4796795 |
{
|
|
|
4796795 |
-#ifdef HAVE_COMPOSITE_EXTENSIONS
|
|
|
4796795 |
- if (compositor && compositor->free_window)
|
|
|
4796795 |
- compositor->free_window (compositor, window);
|
|
|
4796795 |
-#endif
|
|
|
4796795 |
}
|
|
|
4796795 |
|
|
|
4796795 |
void
|
|
|
4796795 |
--
|
|
|
4796795 |
2.12.2
|
|
|
4796795 |
|