diff options
author | Arpit Jain <jain.arpit@samsung.com> | 2015-07-06 14:13:06 -0700 |
---|---|---|
committer | Bryce Harrington <bryce@osg.samsung.com> | 2015-07-06 14:13:24 -0700 |
commit | f6843d5cbb79c35f7b331ac31c4a55c9574928fc (patch) | |
tree | 1363fc20332738dd29e7507e004800c0e8ba0a2d /src/cairo-xlib-render-compositor.c | |
parent | 06a2696d5fa0ea50adb1463e2ee923ac92aabbdf (diff) | |
download | cairo-f6843d5cbb79c35f7b331ac31c4a55c9574928fc.tar.gz |
xlib: Fix deferencing of uninitialised 'display'
Initialising 'display' to NULL and checking before deferencing during display->base.
This patch will check the deferencing of uninitialised 'display' in case,
_cairo_xlib_display_acquire does not return CAIRO_STATUS_SUCCESS.
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=87893
Signed-off-by: Arpit Jain <jain.arpit@samsung.com>
Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
Diffstat (limited to 'src/cairo-xlib-render-compositor.c')
-rw-r--r-- | src/cairo-xlib-render-compositor.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/cairo-xlib-render-compositor.c b/src/cairo-xlib-render-compositor.c index 8a1ec7bd7..055780dd7 100644 --- a/src/cairo-xlib-render-compositor.c +++ b/src/cairo-xlib-render-compositor.c @@ -958,7 +958,7 @@ _cairo_xlib_font_fini (cairo_scaled_font_private_t *abstract_private, { cairo_xlib_font_t *priv = (cairo_xlib_font_t *) abstract_private; cairo_status_t status; - cairo_xlib_display_t *display; + cairo_xlib_display_t *display = NULL; int i; cairo_list_del (&priv->base.link); @@ -978,7 +978,11 @@ _cairo_xlib_font_fini (cairo_scaled_font_private_t *abstract_private, cairo_device_release (&display->base); BAIL: - cairo_device_destroy (&display->base); + if(display) + cairo_device_destroy (&display->base); + else + cairo_device_destroy (priv->device); + free (priv); } |