diff --git a/src/cairo-ps-surface.c b/src/cairo-ps-surface.c index 03fa4f7c7..dde2aeb9d 100644 --- a/src/cairo-ps-surface.c +++ b/src/cairo-ps-surface.c @@ -1628,16 +1628,16 @@ _string_array_stream_write (cairo_output_stream_t *base, stream->column++; stream->string_size++; break; - /* Have to also be careful to never split the final ~> sequence. */ - case '~': - _cairo_output_stream_write (stream->output, &c, 1); - stream->column++; - stream->string_size++; - length--; - c = *data++; - break; } } + /* Have to be careful to never split the final ~> sequence. */ + if (c == '~') { + _cairo_output_stream_write (stream->output, &c, 1); + stream->column++; + stream->string_size++; + length--; + c = *data++; + } _cairo_output_stream_write (stream->output, &c, 1); stream->column++; stream->string_size++;