Mercurial > octave-antonio
comparison scripts/image/imread.m @ 16967:52c1b832d98e
imread: make sure test file is removed if imread() errors.
* imread.m: file removal is made before the test so it occurs even
if test fails. However, if imread() errors, file was never removed.
Fixed with use of unwind_protect block. Also, use tmpnam() to
choose filename instead of current working directory.
author | Carnë Draug <carandraug@octave.org> |
---|---|
date | Fri, 12 Jul 2013 18:06:20 +0100 |
parents | fb940d48c6f7 |
children | 997efb8d0b19 |
comparison
equal
deleted
inserted
replaced
16966:269e96910ae9 | 16967:52c1b832d98e |
---|---|
91 %! 73, 68, 65, 84, 24, 87, 99, 96, 96, 96, ... | 91 %! 73, 68, 65, 84, 24, 87, 99, 96, 96, 96, ... |
92 %! 248, 255, 255, 63, 144, 4, 81, 111, 101, 84, ... | 92 %! 248, 255, 255, 63, 144, 4, 81, 111, 101, 84, ... |
93 %! 16, 28, 160, 16, 0, 197, 214, 13, 34, 74, ... | 93 %! 16, 28, 160, 16, 0, 197, 214, 13, 34, 74, ... |
94 %! 117, 213, 17, 0, 0, 0, 0, 73, 69, 78, ... | 94 %! 117, 213, 17, 0, 0, 0, 0, 73, 69, 78, ... |
95 %! 68, 174, 66, 96, 130]; | 95 %! 68, 174, 66, 96, 130]; |
96 %! fid = fopen ("test.png", "wb"); | 96 %! filename = [tmpnam() ".png"]; |
97 %! fwrite (fid, vpng); | 97 %! unwind_protect |
98 %! fclose (fid); | 98 %! fid = fopen (filename, "wb"); |
99 %! A = imread ("test.png"); | 99 %! fwrite (fid, vpng); |
100 %! delete ("test.png"); | 100 %! fclose (fid); |
101 %! A = imread (filename); | |
102 %! unwind_protect_cleanup | |
103 %! unlink (filename); | |
104 %! end_unwind_protect | |
101 %! assert (A(:,:,1), uint8 ([0, 255, 0; 255, 237, 255; 0, 255, 0])); | 105 %! assert (A(:,:,1), uint8 ([0, 255, 0; 255, 237, 255; 0, 255, 0])); |
102 %! assert (A(:,:,2), uint8 ([0, 255, 0; 255, 28, 255; 0, 255, 0])); | 106 %! assert (A(:,:,2), uint8 ([0, 255, 0; 255, 28, 255; 0, 255, 0])); |
103 %! assert (A(:,:,3), uint8 ([0, 255, 0; 255, 36, 255; 0, 255, 0])); | 107 %! assert (A(:,:,3), uint8 ([0, 255, 0; 255, 36, 255; 0, 255, 0])); |
104 | 108 |