[cairo] infinite loop when CAIRO_FIXED_FRAC_BITS is 8

Fernando Herrera fherrera at onirica.com
Mon Nov 19 10:43:53 PST 2007


When using cairo defining CAIRO_FIXED_FRAC_BITS as 8 in
cairo-fixed-private.h I am hitting an infinite loop with the next test
case[1] (that works fine using 16bits):

  cairo_t *cr;
  cr = gdk_cairo_create (widget->window);
  cairo_save (cr);
  cairo_scale (cr, 1, 0.0001);
  cairo_translate (cr, 1, 0.0001);
  cairo_move_to (cr, 44.12, 106);
  cairo_curve_to (cr, 43.946765, 93.855989, 38.653008,89.286968,26,90);
  cairo_stroke (cr);
  cairo_restore (cr);
  cairo_destroy (cr);

it loops inside _cairo_pen_stroke_spline_half because the step neves
increases. Any hints?



[1]  Full source here: http://pastebin.com/f1cc9f415

More information about the cairo mailing list