--- src/spuunmux.c
+++ src/spuunmux.c
@@ -37,6 +37,7 @@
 
 #include <netinet/in.h>
 
+#include <zlib.h>
 #include <png.h>
 
 #include "rgb.h"
@@ -483,7 +484,7 @@
     return -1;
     }
 
-    if (setjmp(png_ptr->jmpbuf)) {
+    if (setjmp(png_jmpbuf(png_ptr))) {
     png_destroy_write_struct(&png_ptr, &info_ptr);
     fclose(fp);
     return -1;