projects
/
goodguy
/
cinelerra.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Credit Andrew - cleanup for Slackware, etc.
[goodguy/cinelerra.git]
/
cinelerra-5.1
/
cinelerra
/
filepng.C
diff --git
a/cinelerra-5.1/cinelerra/filepng.C
b/cinelerra-5.1/cinelerra/filepng.C
index e79c45d547bc307bdd42c391380610ba83696994..f4b09d7d178f65dd7a473ea2b40aa2217e41a6bb 100644
(file)
--- a/
cinelerra-5.1/cinelerra/filepng.C
+++ b/
cinelerra-5.1/cinelerra/filepng.C
@@
-261,6
+261,11
@@
int FilePNG::read_frame(VFrame *output, VFrame *input)
png_ptr = png_create_read_struct(PNG_LIBPNG_VER_STRING, 0, 0, 0);
if(!png_ptr) return 0;
info_ptr = png_create_info_struct(png_ptr);
png_ptr = png_create_read_struct(PNG_LIBPNG_VER_STRING, 0, 0, 0);
if(!png_ptr) return 0;
info_ptr = png_create_info_struct(png_ptr);
+ if(!info_ptr) return 0;
+ if (setjmp(png_jmpbuf(png_ptr))) {
+ png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
+ return 0;
+ }
png_set_read_fn(png_ptr, input, (png_rw_ptr)read_function);
png_read_info(png_ptr, info_ptr);
png_set_read_fn(png_ptr, input, (png_rw_ptr)read_function);
png_read_info(png_ptr, info_ptr);