[gs-commits] ghostpdl branch, master, updated. jbig2dec-0.14-1841-gc198ac5

[email protected] (Ray Johnston) Sat, 9 Nov 2019 20:56:31 +0000 (UTC)
Newsgroups gmane.comp.printing.ghostscript.cvs
Message-ID <[email protected]>
The ghostpdl branch, master has been updated
       via  c198ac5dcb26fadc53074525cabb413e5395cdba (commit)
      from  7174b69e6c0027277fe1a9ece341c3380fe7979d (commit)

----------------------------------------------------------------------
commit c198ac5dcb26fadc53074525cabb413e5395cdba
Author: Ray Johnston <[email protected]>
Date:   Sat Nov 9 12:51:05 2019 -0800

    Clear out gs_gstate at the start of clist playback.
    
    There are some elements of the (stack based) gs_gstate that were not being
    set by either GS_STATE_INIT_VALUES_CLIST, or gs_gstate_initialize, so set
    the entire structure to 0 before setting the values we care about. This
    was prompted by a customer that has made modifications to the clist playback
    that relied on gs_gstate.color[0/1].color_space being NULL or valid, but
    since it is so quick and only happens once per band, go ahead and do it.

diff --git a/base/gxclrast.c b/base/gxclrast.c
index 30c7e36..b75054f 100644
--- a/base/gxclrast.c
+++ b/base/gxclrast.c
@@ -608,6 +608,7 @@ in:                             /* Initialize for a new page. */
     }
     if (target != 0)
         (*dev_proc(target, get_clipping_box))(target, &target_box);
+    memset(&gs_gstate, 0, sizeof(gs_gstate));
     GS_STATE_INIT_VALUES_CLIST((&gs_gstate));
     code = gs_gstate_initialize(&gs_gstate, mem);
     /* Remove the ICC link cache and replace with the device link cache


Summary of changes:
 base/gxclrast.c | 1 +
 1 file changed, 1 insertion(+)