summaryrefslogtreecommitdiff
path: root/gs/base/gxclrast.c
diff options
context:
space:
mode:
Diffstat (limited to 'gs/base/gxclrast.c')
-rw-r--r--gs/base/gxclrast.c12
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;