diff --git a/src/image/image-pam.cpp b/src/image/image-pam.cpp index 86e43abd..45160559 100644 --- a/src/image/image-pam.cpp +++ b/src/image/image-pam.cpp @@ -68,6 +68,7 @@ bool image_load_pam_fp(FILE *fp, Image& image) { #ifndef SUPPORT_HDR if (maxval > 0xff) { e_printf("PAM file has more than 8 bit per channel, this FLIF cannot handle that.\n"); + fclose(fp); return false; } #endif @@ -78,8 +79,16 @@ bool image_load_pam_fp(FILE *fp, Image& image) { for (unsigned int y=0; y maxval) + pixel = maxval; image.set(c,y,x, pixel); } } @@ -88,7 +97,15 @@ bool image_load_pam_fp(FILE *fp, Image& image) { for (unsigned int y=0; y maxval) + pixel = maxval; + image.set(c,y,x, pixel); } } }