eh, make ’em volatile, this is not time-critical code anyway
[alioth/magicpoint.git] / draw.c
diff --git a/draw.c b/draw.c
index aa5bc46..730e683 100644 (file)
--- a/draw.c
+++ b/draw.c
@@ -87,7 +87,8 @@ static Window search_child_window(void);
 static Window tsearch_child_window(const char *name);
 static Window getNamedWindow(const char *name, Window top);
 static void reparent_child_window(Window, int, int);
-static char *epstoimage(const char *, int, int, int, int, int, int);
+static char *epstoimage(const char *, int, int, int, int,
+    volatile int, volatile int);
 static void image_setcolor(struct render_state *);
 static void x_registerseed(struct render_state *, char *, const char *);
 static const char *x_findseed(struct render_state *, const char *);
@@ -3417,20 +3418,15 @@ draw_reinit(struct render_state *state)
        x_registerseed(state, NULL, NULL);
 }
 
-/*
- *XXX TODO: fd, xzoom, yzoom might be clobbered by vfork
- *
- * perhaps move relevant code out into another function?
- */
 static char *
 epstoimage(const char *epsfile, int x, int y,
-    int width, int height, int xzoom, int yzoom)
+    int width, int height, volatile int xzoom, volatile int yzoom)
 {
-       int fd, pfd[3][2];
-       int i, j;
+       volatile int fd;
+       volatile pid_t pid = 0;
+       int i, j, status, pfd[3][2];
        FILE *fp;
-       int status;
-       pid_t pid = 0, gspid;
+       pid_t gspid;
        char *cp;
        int scale = 1;
        struct stat stbuf;