diff options
author | Alex Cherepanov <alex.cherepanov@artifex.com> | 2003-11-07 04:40:17 +0000 |
---|---|---|
committer | Alex Cherepanov <alex.cherepanov@artifex.com> | 2003-11-07 04:40:17 +0000 |
commit | f666189b22233d5d4a3038483b30ede68a6374b9 (patch) | |
tree | ca3b3a2b56b5c686f7f9aa51690771b09fb78506 /gs/src/gscolor1.c | |
parent | cb255467d6dac05da9910db30586db46549c128b (diff) |
Restore the invariant: effective_transfer always points to the transfer
functions in the graphic state or halftone. Old code briefly left
effective_transfer pointing to garbage, which caused relocation of garbage
pointers and crash if GC happened at the right time.
Fix bug 687101
git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@4343 a1074d23-0009-0410-80fe-cf8c14f379e6
Diffstat (limited to 'gs/src/gscolor1.c')
-rw-r--r-- | gs/src/gscolor1.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gs/src/gscolor1.c b/gs/src/gscolor1.c index 4a0494d9a..cc5eed386 100644 --- a/gs/src/gscolor1.c +++ b/gs/src/gscolor1.c @@ -168,7 +168,8 @@ gs_setcolortransfer_remap(gs_state * pgs, gs_mapping_proc red_proc, load_transfer_map(pgs, ptran->gray, 0.0); gx_set_effective_transfer(pgs); gx_unset_dev_color(pgs); - } + } else + gx_set_effective_transfer(pgs); return 0; fblue: rc_assign(ptran->green, old.green, "setcolortransfer"); |