diff options
Diffstat (limited to 'gs/base/gsicc_manage.c')
-rw-r--r-- | gs/base/gsicc_manage.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gs/base/gsicc_manage.c b/gs/base/gsicc_manage.c index c27fd6096..b475d526e 100644 --- a/gs/base/gsicc_manage.c +++ b/gs/base/gsicc_manage.c @@ -966,6 +966,10 @@ rc_free_profile_array(gs_memory_t * mem, void *ptr_in, client_name_t cname) if_debug0(gs_debug_flag_icc,"[icc] Releasing proof profile\n"); rc_decrement(icc_struct->proof_profile, "rc_free_profile_array"); } + if (icc_struct->oi_profile != NULL) { + if_debug0(gs_debug_flag_icc,"[icc] Releasing output intent profile\n"); + rc_decrement(icc_struct->oi_profile, "rc_free_profile_array"); + } if_debug0(gs_debug_flag_icc,"[icc] Releasing device profile struct\n"); gs_free_object(mem_nongc, icc_struct, "rc_free_profile_array"); } @@ -990,8 +994,10 @@ gsicc_new_device_profile_array(gs_memory_t *memory) } result->proof_profile = NULL; result->link_profile = NULL; + result->oi_profile = NULL; result->devicegraytok = true; /* Default is to map gray to pure K */ result->usefastcolor = false; /* Default is to not use fast color */ + result->pdfx3 = false; rc_init_free(result, memory->non_gc_memory, 1, rc_free_profile_array); return(result); } |