diff options
Diffstat (limited to 'gs/base/gxclrast.c')
-rw-r--r-- | gs/base/gxclrast.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/gs/base/gxclrast.c b/gs/base/gxclrast.c index 244cae8d0..c68a1bcad 100644 --- a/gs/base/gxclrast.c +++ b/gs/base/gxclrast.c @@ -1727,7 +1727,7 @@ idata: data_size = 0; static const byte op_num_operands[] = { cmd_segment_op_num_operands_values }; - + rgapto: if (!in_path) { ppos.x = int2fixed(state.rect.x); ppos.y = int2fixed(state.rect.y); @@ -1795,7 +1795,12 @@ idata: data_size = 0; case cmd_op_path >> 4: { gx_path fpath; - gx_path * ppath = &path; + gx_path *ppath; + + if (op == cmd_opv_rgapto) + goto rgapto; + + ppath = &path; if_debug0('L', "\n"); /* if in clip, flatten path first */ @@ -3115,6 +3120,9 @@ clist_decode_segment(gx_path * ppath, int op, fixed vs[6], case cmd_opv_rlineto: code = gx_path_add_line_notes(ppath, px += A, py += B, notes); break; + case cmd_opv_rgapto: + code = gx_path_add_gap_notes(ppath, px += A, py += B, notes); + break; case cmd_opv_hlineto: code = gx_path_add_line_notes(ppath, px += A, py, notes); break; |