diff options
author | Ravi Nanjundappa <nravi.n@samsung.com> | 2016-10-05 15:16:10 +0530 |
---|---|---|
committer | Ravi Nanjundappa <nravi.n@samsung.com> | 2016-10-05 15:16:10 +0530 |
commit | 9bc3e5ab934f3aab30a8dcde41494d8021be766c (patch) | |
tree | 1aadd00b302db724dc3b002b451a2ab2339b6b42 /src | |
parent | 9819660fc447c5d1723960c092394b35d80b2ffb (diff) | |
download | cairo-9bc3e5ab934f3aab30a8dcde41494d8021be766c.tar.gz cairo-9bc3e5ab934f3aab30a8dcde41494d8021be766c.tar.bz2 cairo-9bc3e5ab934f3aab30a8dcde41494d8021be766c.zip |
Fix for VDSvace issue: DF160920-00051
Assigned the group handle to NULL after free inside _cairo_pdf_smask_group_destroy()
and then checking against NULL value before freeing its members further.
Change-Id: Icf9eacf075478244fb09dc6e2678b8d12cd7e292
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/cairo-pdf-surface.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/cairo-pdf-surface.c b/src/cairo-pdf-surface.c index 552e4bf4f..db5006294 100644 --- a/src/cairo-pdf-surface.c +++ b/src/cairo-pdf-surface.c @@ -1101,18 +1101,22 @@ _cairo_pdf_surface_create_smask_group (cairo_pdf_surface_t *surface, static void _cairo_pdf_smask_group_destroy (cairo_pdf_smask_group_t *group) { + if(group != NULL) + { if (group->operation == PDF_FILL || group->operation == PDF_STROKE) - _cairo_path_fixed_fini (&group->path); + _cairo_path_fixed_fini (&group->path); if (group->source) - cairo_pattern_destroy (group->source); + cairo_pattern_destroy (group->source); if (group->mask) - cairo_pattern_destroy (group->mask); + cairo_pattern_destroy (group->mask); free (group->utf8); free (group->glyphs); free (group->clusters); if (group->scaled_font) - cairo_scaled_font_destroy (group->scaled_font); + cairo_scaled_font_destroy (group->scaled_font); free (group); + group = NULL; + } } static cairo_int_status_t |