diff options
| author | Victor Kareh <[email protected]> | 2019-12-02 11:08:12 -0500 | 
|---|---|---|
| committer | Victor Kareh <[email protected]> | 2019-12-06 10:09:07 -0500 | 
| commit | d0b6c3b1d2498031d4d50644a4bc5eece6a4aa4d (patch) | |
| tree | caf202c5ffc7f881df246064a53283a548cb7a09 | |
| parent | af17e33e008e948e25e3df5dbe0931d0c1cf8908 (diff) | |
| download | marco-d0b6c3b1d2498031d4d50644a4bc5eece6a4aa4d.tar.bz2 marco-d0b6c3b1d2498031d4d50644a4bc5eece6a4aa4d.tar.xz | |
Revert "compositor: fix possible crash closing/destroying window"
This reverts commit df56628979abc17474b001c58c28c6f3637ada9d.
It causes an issue where windows remain in the background even when
being drawn in the foreground.
| -rw-r--r-- | src/compositor/compositor-private.h | 3 | ||||
| -rw-r--r-- | src/compositor/compositor-xrender.c | 34 | ||||
| -rw-r--r-- | src/compositor/compositor.c | 4 | 
3 files changed, 9 insertions, 32 deletions
| diff --git a/src/compositor/compositor-private.h b/src/compositor/compositor-private.h index 1fa64695..fcb15187 100644 --- a/src/compositor/compositor-private.h +++ b/src/compositor/compositor-private.h @@ -50,9 +50,6 @@ struct _MetaCompositor                               MetaScreen     *screen,                               MetaWindow     *window); -  void (*free_window) (MetaCompositor *compositor, -                       MetaWindow     *window); -    void (*maximize_window)   (MetaCompositor *compositor,                               MetaWindow     *window);    void (*unmaximize_window) (MetaCompositor *compositor, diff --git a/src/compositor/compositor-xrender.c b/src/compositor/compositor-xrender.c index abcf51ae..dc7ac15f 100644 --- a/src/compositor/compositor-xrender.c +++ b/src/compositor/compositor-xrender.c @@ -3040,38 +3040,23 @@ xrender_end_move (MetaCompositor *compositor,  #ifdef HAVE_COMPOSITE_EXTENSIONS  #endif  } -#endif /* 0 */  static void  xrender_free_window (MetaCompositor *compositor,                       MetaWindow     *window)  {  #ifdef HAVE_COMPOSITE_EXTENSIONS -  MetaCompositorXRender *xrc; -  MetaFrame *frame; -  Window xwindow; - -  xrc = (MetaCompositorXRender *) compositor; -  frame = meta_window_get_frame (window); -  xwindow = None; - -  if (frame) -    { -      xwindow = meta_frame_get_xwindow (frame); -    } -  else -    { -      /* FIXME: When an undecorated window is hidden this is called, but the -       * window does not get readded if it is subsequentally shown again. See: -       * http://bugzilla.gnome.org/show_bug.cgi?id=504876 -       */ -      /* xwindow = meta_window_get_xwindow (window); */ -    } - -  if (xwindow != None) -    destroy_win (xrc->display, xwindow, FALSE); +  /* FIXME: When an undecorated window is hidden this is called, +     but the window does not get readded if it is subsequentally shown again +     See http://bugzilla.gnome.org/show_bug.cgi?id=504876 + +     I don't *think* theres any need for this call anyway, leaving it out +     does not seem to cause any side effects so far, but I should check with +     someone who understands more. */ +  /* destroy_win (compositor->display, window->xwindow, FALSE); */  #endif  } +#endif /* 0 */  static void  xrender_process_event (MetaCompositor *compositor, @@ -3375,7 +3360,6 @@ static MetaCompositor comp_info = {    xrender_process_event,    xrender_get_window_surface,    xrender_set_active_window, -  xrender_free_window,    xrender_maximize_window,    xrender_unmaximize_window,  }; diff --git a/src/compositor/compositor.c b/src/compositor/compositor.c index 39344e82..7e3c79c2 100644 --- a/src/compositor/compositor.c +++ b/src/compositor/compositor.c @@ -156,10 +156,6 @@ void meta_compositor_end_move (MetaCompositor *compositor,  void meta_compositor_free_window (MetaCompositor *compositor,                                    MetaWindow     *window)  { -#ifdef HAVE_COMPOSITE_EXTENSIONS -  if (compositor && compositor->free_window) -    compositor->free_window (compositor, window); -#endif  }  void | 
