ports/graphics/exact-image/files/patch-codecs__bmp.cc
Martin Wilke fc3b6a0406 - Update to 0.7.5
PR:		142954
Submitted by:	bf <bf1783@gmail.com> (maintainer)
2010-01-21 21:14:51 +00:00

40 lines
1.1 KiB
C++

--- codecs/bmp.cc.orig 2009-04-27 13:54:29.000000000 -0400
+++ codecs/bmp.cc 2010-01-17 00:32:01.000000000 -0500
@@ -441,6 +441,8 @@
uint8_t* row_data = (uint8_t*) malloc (file_stride);
if (!data || !row_data) {
std::cerr << "Can't allocate space for image buffer\n";
+ free(data);
+ free(row_data);
goto bad1;
}
@@ -522,6 +524,7 @@
comprbuf = (uint8_t *) malloc( compr_size );
if (!comprbuf) {
std::cerr << "Can't allocate space for compressed scanline buffer\n";
+ free(comprbuf);
goto bad1;
}
uncomprbuf = (uint8_t *) malloc( uncompr_size );
@@ -593,6 +596,7 @@
data = (uint8_t *) malloc( uncompr_size );
if (!data) {
std::cerr << "Can't allocate space for final uncompressed scanline buffer\n";
+ free(data);
goto bad1;
}
@@ -628,9 +632,9 @@
colorspace_de_palette (image, clr_tbl_size, rmap, gmap, bmap);
- delete (rmap);
- delete (gmap);
- delete (bmap);
+ delete[] rmap;
+ delete[] gmap;
+ delete[] bmap;
free(clr_tbl);
clr_tbl = NULL;