History log of /haiku/src/add-ons/translators/gif/GIFLoad.cpp
Revision Date Author Comments
# 7fd9865e 21-Sep-2019 Murai Takashi <tmurai01@gmail.com>

translators/gif: Fix mismatching malloc/delete

fHeadMemblock is allocated by malloc() in MemblockAllocate(),
but freed by delete.
Pointed out by LGTM.

Change-Id: I5019c2c3e4d240051e6f8a1ac70a9738f6f97131
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1878
Reviewed-by: Axel Dörfler <axeld@pinc-software.de>


# 66246a75 15-Jul-2014 John Scipione <jscipione@gmail.com>

GIF Translator: tiny style fix


# 9592cbe5 06-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: Return false if read fails


# 2d612ef7 05-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: Whitespace style fixes

Also remove break in last case.


# 78bfaa98 05-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: try hard to not throw an exception

... by calling new(std::nothrow)

Also try really hard not to leak any memory in the process.

Lots of error checking added to check if reads and writes fail
returning B_IO_ERROR and if initialization fails returning B_NO_MEMORY


# c030befb 05-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: Reorder includes

Thanks Jérôme


# f4b50731 03-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: error if out of bounds

Error out if we're trying to access an out-of-bounds array index
(which should never happen, but let's check just in case.)


# 9504d995 03-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: rename cs and size to codeSize


# 4389d323 03-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: Read the left and top image coordinates


# 5a7193d5 03-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: Replace magic constants

Introduce GIFPrivate.h to define these magic constants

Also, make sure that we don't go over LZ_MAX_CODE bits


# c14b552e 01-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: check if NULL before accessing member


# 4ac43a1b 01-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: use ENTRY_COUNT define instead of 4096


# 5b53a45a 01-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: Use array notation instead of pointer


# 84bff752 01-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: Log info messages with LOG_INFO not LOG_ERR


# 6ff3ca26 01-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: Style change, uchar => unsigned char


# 071f3a6e 28-Feb-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: don't call an implicit constructor for Memblock


# 5e4c29a6 28-Feb-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: Style fixes


# 0b269c60 28-Feb-2013 Pawel Dziepak <pdziepak@quarnos.org>

Fix #9487: GIFLoad array subscript below array bounds

Recently enabled variable range propagation enables GCC to among others analyze
whether array subscript is in a valid range. While being quite useful this
particular feature also happens to produce false positives. This is merely
a workaround to make compiler happy.

The actual reason why compiler is reporting false positive is that array is
indexed with a signed integer and it is not clear for compiler what value it may
have due to it being a member of the class and and external procedure being
invoked between its initialization and usage.


# 70d59669 04-Feb-2011 Siarzhuk Zharski <zharik@gmx.li>

Applied following patches proposed by Jorma Karvonen:
#7135 #7140 #7141 #7145 #7186 #7188 #7191
#7136 #7187 #7184 #7185 #7192 #7138 #7139

with some changes and exclusions:
- all attempts to localize "fprintf(stderr,..." and "printf(..."
replaced by _untranslated_ "syslog(LOG_ERR ...";
- following *Translator.rdef files, that were not added in mentioned patches
were additionally created:
SGI, TIFF, RAW, RTF, PPM, WebP, EXR, STXT, WonderBrush, GIF, TGA;
- some small fixes for consistent catalogs building.

Thank you, Jorma! Please check. ;-)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40357 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b7ef02aa 19-Sep-2008 Stefano Ceccherini <stefano.ceccherini@gmail.com>

use defines for some gif flags, for clearer code. Reordered initializers to avoid warnings.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27633 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ad7014b0 14-Sep-2008 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Other small style changes

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27519 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6aa49afc 15-Sep-2008 Stefano Ceccherini <stefano.ceccherini@gmail.com>

set fScanLine to NULL after freeing it.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27518 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a50feb07 15-Sep-2008 Stefano Ceccherini <stefano.ceccherini@gmail.com>

more style changes

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27517 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6da7e645 15-Sep-2008 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Style changes. No functional change

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27516 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9949213a 19-Oct-2005 Stephan Aßmus <superstippi@gmx.de>

removed the redundant "translator" from the folder names, fixed some warnings in the JPEG2000Translator

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14449 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 66246a75a1303e05f43186148cac9ae76db4eb51 15-Jul-2014 John Scipione <jscipione@gmail.com>

GIF Translator: tiny style fix


# 9592cbe5d8dc967305bad8792e144f00d059a5a0 06-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: Return false if read fails


# 2d612ef7ae7c3c0c76a1b197b8098bd28a274abe 05-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: Whitespace style fixes

Also remove break in last case.


# 78bfaa98e14d02fffe60aa9ac1d6c4943c8d09af 05-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: try hard to not throw an exception

... by calling new(std::nothrow)

Also try really hard not to leak any memory in the process.

Lots of error checking added to check if reads and writes fail
returning B_IO_ERROR and if initialization fails returning B_NO_MEMORY


# c030befbf93382ba9feb91787c97573ca5a4cee6 05-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: Reorder includes

Thanks Jérôme


# f4b507313b823d572033099d6429635b4eb914d1 03-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: error if out of bounds

Error out if we're trying to access an out-of-bounds array index
(which should never happen, but let's check just in case.)


# 9504d99506e522fc7ccdf39c42a5fd6c01295cfa 03-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: rename cs and size to codeSize


# 4389d32381eb26734fb4451d3f1f883fcf1c3342 03-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: Read the left and top image coordinates


# 5a7193d55818af7419e95ede22e678d45a0786bb 03-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: Replace magic constants

Introduce GIFPrivate.h to define these magic constants

Also, make sure that we don't go over LZ_MAX_CODE bits


# c14b552e41f9cc63b97796f22ca6d88ae6913ba9 01-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: check if NULL before accessing member


# 4ac43a1be48427b88ac17804af44e6de33aac3fc 01-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: use ENTRY_COUNT define instead of 4096


# 5b53a45a945f044e6ee4a2e7b06d57ad2c0becd8 01-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: Use array notation instead of pointer


# 84bff7524538da9da3fbefc8e811b09042a52566 01-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: Log info messages with LOG_INFO not LOG_ERR


# 6ff3ca264dff905fc97b525a141c5d332dd55ee8 01-Mar-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: Style change, uchar => unsigned char


# 071f3a6ea0bcfe18d11ade820b6df21f8291ac4e 28-Feb-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: don't call an implicit constructor for Memblock


# 5e4c29a6b7d6cf23b6ea0d9dd22bd4abf5c89c1a 28-Feb-2014 John Scipione <jscipione@gmail.com>

GIFTranslator: Style fixes


# 0b269c601fca3163876b463baaa5a52cef8ccf26 28-Feb-2013 Pawel Dziepak <pdziepak@quarnos.org>

Fix #9487: GIFLoad array subscript below array bounds

Recently enabled variable range propagation enables GCC to among others analyze
whether array subscript is in a valid range. While being quite useful this
particular feature also happens to produce false positives. This is merely
a workaround to make compiler happy.

The actual reason why compiler is reporting false positive is that array is
indexed with a signed integer and it is not clear for compiler what value it may
have due to it being a member of the class and and external procedure being
invoked between its initialization and usage.


# 70d5966963513ff47a456ba70b7d2eec0f99648d 04-Feb-2011 Siarzhuk Zharski <zharik@gmx.li>

Applied following patches proposed by Jorma Karvonen:
#7135 #7140 #7141 #7145 #7186 #7188 #7191
#7136 #7187 #7184 #7185 #7192 #7138 #7139

with some changes and exclusions:
- all attempts to localize "fprintf(stderr,..." and "printf(..."
replaced by _untranslated_ "syslog(LOG_ERR ...";
- following *Translator.rdef files, that were not added in mentioned patches
were additionally created:
SGI, TIFF, RAW, RTF, PPM, WebP, EXR, STXT, WonderBrush, GIF, TGA;
- some small fixes for consistent catalogs building.

Thank you, Jorma! Please check. ;-)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40357 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b7ef02aac642cc74903c83cc3387e599fc9dc3a1 19-Sep-2008 Stefano Ceccherini <stefano.ceccherini@gmail.com>

use defines for some gif flags, for clearer code. Reordered initializers to avoid warnings.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27633 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ad7014b0d8436839100e5a3c95726fbc3be6a49b 14-Sep-2008 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Other small style changes

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27519 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6aa49afc14b5e0d2d0b9180d4812593543428ad8 15-Sep-2008 Stefano Ceccherini <stefano.ceccherini@gmail.com>

set fScanLine to NULL after freeing it.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27518 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a50feb079d8cbc342922e5500de76d9845ff90d2 15-Sep-2008 Stefano Ceccherini <stefano.ceccherini@gmail.com>

more style changes

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27517 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6da7e6450fa0798f82cdab357bde7d19275a2115 15-Sep-2008 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Style changes. No functional change

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27516 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9949213a25979d177b420bc71891c2bff02a331d 19-Oct-2005 Stephan Aßmus <superstippi@gmx.de>

removed the redundant "translator" from the folder names, fixed some warnings in the JPEG2000Translator

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14449 a95241bf-73f2-0310-859d-f6bbb57e9c96