fixed graphics bug
[swftools.git] / lib / drawer.c
index d371657..0fc4307 100644 (file)
@@ -22,6 +22,7 @@
 
 #include <stdlib.h>
 #include <stdio.h>
+#include <string.h>
 #include <memory.h>
 #include <math.h>
 #include "drawer.h"
@@ -242,6 +243,10 @@ void draw_cubicTo(drawer_t*draw, FPOINT*  control1, FPOINT* control2, FPOINT*  t
 {
     struct qspline q[128];
     struct cspline c;
+    double quality = 80;
+    double maxerror = (500-(quality*5)>1?500-(quality*5):1)/20.0;
+    int t,num;
+
     c.start.x = draw->pos.x;
     c.start.y = draw->pos.y;
     c.control1.x = control1->x;
@@ -250,11 +255,9 @@ void draw_cubicTo(drawer_t*draw, FPOINT*  control1, FPOINT* control2, FPOINT*  t
     c.control2.y = control2->y;
     c.end.x = to->x;
     c.end.y = to->y;
-    double quality = 80;
-    double maxerror = (500-(quality*5)>1?500-(quality*5):1)/20.0;
+    
+    num = approximate3(&c, q, 128, maxerror*maxerror);
 
-    int num = approximate3(&c, q, 128, maxerror*maxerror);
-    int t;
     for(t=0;t<num;t++) {
        FPOINT mid;
        FPOINT to;