cairo-fsm: Tolerate negative "space" argument to xr_fsm_draw_slice().
authorBen Pfaff <blp@cs.stanford.edu>
Fri, 8 Jan 2021 02:06:08 +0000 (18:06 -0800)
committerBen Pfaff <blp@cs.stanford.edu>
Fri, 8 Jan 2021 02:07:44 +0000 (18:07 -0800)
Fixes infinite loop converting the .spv file attached to bug #59837
to a PDF file.

src/output/cairo-fsm.c

index df8df7e68fec0b0f2303e8b156fffe587dd5185b..1671edac4f512f93095d0071cfc48f4a64521ae5 100644 (file)
@@ -1250,7 +1250,7 @@ xr_fsm_draw_slice (struct xr_fsm *fsm, cairo_t *cr, int space)
 {
   assert (fsm->print);
 
-  if (fsm->done)
+  if (fsm->done || space <= 0)
     return 0;
 
   cairo_save (cr);