Lines 303-309
Link Here
|
303 |
static unsigned int decode16Bit(char* signedLoc) |
303 |
static unsigned int decode16Bit(char* signedLoc) |
304 |
{ |
304 |
{ |
305 |
unsigned char* loc = reinterpret_cast<unsigned char*>(signedLoc); |
305 |
unsigned char* loc = reinterpret_cast<unsigned char*>(signedLoc); |
306 |
|
306 |
return decode16Bit(loc); |
|
|
307 |
} |
308 |
|
309 |
static unsigned int decode16Bit(unsigned char* loc) |
310 |
{ |
307 |
//GIFs are little-endian |
311 |
//GIFs are little-endian |
308 |
return loc[0] | (((unsigned int)loc[1]) << 8); |
312 |
return loc[0] | (((unsigned int)loc[1]) << 8); |
309 |
} |
313 |
} |
Lines 348-357
Link Here
|
348 |
virtual int processEOF() |
348 |
virtual int processEOF() |
349 |
{ |
349 |
{ |
350 |
//Feed the buffered data to libUnGif |
350 |
//Feed the buffered data to libUnGif |
351 |
GifFileType* file = DGifOpen(this, gifReaderBridge); |
351 |
#ifdef GIFLIB_MAJOR >= 5 |
|
|
352 |
int error = 0; |
353 |
GifFileType* file = DGifOpen(this, gifReaderBridge, &error); |
352 |
|
354 |
|
|
|
355 |
if (error) |
356 |
return Error; |
357 |
#else |
358 |
GifFileType* file = DGifOpen(this, gifReaderBridge); |
359 |
|
353 |
if (!file) |
360 |
if (!file) |
354 |
return Error; |
361 |
return Error; |
|
|
362 |
#endif |
355 |
|
363 |
|
356 |
if (DGifSlurp(file) == GIF_ERROR) |
364 |
if (DGifSlurp(file) == GIF_ERROR) |
357 |
{ |
365 |
{ |