mutter/cogl
Marco Trevisan (Treviño) 61c173b777 cogl/xlib-renderer: Save Xlib renderer data in custom winsys pointer
XLib renderer saves its data as the object cogl user data, however this data
is free'd as part of the object destruction that happens before free'ing the
renderer in _cogl_renderer_free(), from where we're calling the renderer
disconnect vfunc.
Thus in _cogl_xlib_renderer_disconnect() we happen to get an invalid pointer to
CoglXlibRenderer and we try access to it in order to close the X11 display.

This causes all the cogl tests to crash when G_SLICE=always-malloc is set and
when using MALLOC_CHECK_.

Fix this using the renderer winsys custom data instead of using cogl object data
for storing the CoglXlibRenderer, and handling the destruction of it manually.

As bonus this also makes access to the renderer data faster.

https://gitlab.gnome.org/GNOME/mutter/merge_requests/581
2019-05-27 17:14:25 -05:00
..
cogl cogl/xlib-renderer: Save Xlib renderer data in custom winsys pointer 2019-05-27 17:14:25 -05:00
cogl-gles2 build: Don't use absolute paths with subdir keyword 2019-03-18 12:37:14 +00:00
cogl-pango Use free_full on GSList's instead of foreach + free 2019-05-15 14:49:56 -05:00
cogl-path build: Don't use absolute paths with subdir keyword 2019-03-18 12:37:14 +00:00
test-fixtures cogl: Remove unused TEXTURE_RECTANGLE feature flag 2019-04-18 12:53:28 -04:00
tests cogl/tests: Remove configure_file workaround for installed tests 2019-05-21 12:36:15 -05:00
.gitignore cogl-framebuffer: Remove swap_throttled config 2018-12-06 14:29:34 +00:00
cogl-config.h.meson Add meson build support 2018-11-06 18:51:44 +01:00
cogl-mutter-config.h.in cogl: Make cogl-config.h include check explicit 2018-11-06 17:17:36 +01:00
config-custom.h move everything into a cogl/ directory 2016-04-22 16:44:31 +02:00
meson.build cogl/meson: Remove uneeded cogl-mutter-config.h generation 2019-05-21 12:36:10 -05:00