diff --git a/src/feh_png.c b/src/feh_png.c index f02aecbea75ac45a7d18670997d67fcc7ed65cfd..129eb45b2d62d700302ecddb24c3659e7b76528a 100644 --- a/src/feh_png.c +++ b/src/feh_png.c @@ -115,12 +115,15 @@ int feh_png_write_png(Imlib_Image image, char *file, ...) return 0; png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL); - if (!png_ptr) + if (!png_ptr) { + fclose(fp); return 0; + } info_ptr = png_create_info_struct(png_ptr); if (!info_ptr) { png_destroy_write_struct(&png_ptr, (png_infopp) NULL); + fclose(fp); return 0; }