X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=adaptors%2Fdevel-api%2Fadaptor-framework%2Fgif-loading.cpp;h=93e7b71f1017f257f4596e7218a8d5f6372b6ad7;hb=b420d5ea8aadc44b925f0a56977cf1e9fc100149;hp=5611d2bbb1ddda01b771553173a86e00cce29659;hpb=c77e183c6af5a02742d25e9b29308373e7afc486;p=platform%2Fcore%2Fuifw%2Fdali-adaptor.git diff --git a/adaptors/devel-api/adaptor-framework/gif-loading.cpp b/adaptors/devel-api/adaptor-framework/gif-loading.cpp index 5611d2b..93e7b71 100644 --- a/adaptors/devel-api/adaptor-framework/gif-loading.cpp +++ b/adaptors/devel-api/adaptor-framework/gif-loading.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 Samsung Electronics Co., Ltd. + * Copyright (c) 2017 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -87,7 +87,8 @@ int DGifExtensionToGCB(const size_t GifExtensionLength, char *GifExtension, GraphicsControlBlock *GCB) { - if (GifExtensionLength != 4) { + if (GifExtensionLength != 4) + { return GIF_ERROR; } @@ -95,9 +96,13 @@ int DGifExtensionToGCB(const size_t GifExtensionLength, GCB->UserInputFlag = (GifExtension[0] & 0x02) != 0; GCB->DelayTime = UNSIGNED_LITTLE_ENDIAN(GifExtension[1], GifExtension[2]); if (GifExtension[0] & 0x01) - GCB->TransparentColor = ((int)GifExtension[3]+256)%256; + { + GCB->TransparentColor = reinterpret_cast< int >( GifExtension[3]+256 ) % 256; + } else + { GCB->TransparentColor = NO_TRANSPARENT_COLOR; + } return GIF_OK; } @@ -123,7 +128,7 @@ int DGifSavedExtensionToGCB(GifFileType *GifFile, int ImageIndex, GraphicsContro return DGifExtensionToGCB(ep->ByteCount, ep->Bytes, GCB); } - return GIF_OK; + return GIF_ERROR; } /****************************************************************************** @@ -363,7 +368,8 @@ unsigned char* DecodeOneFrame( int& delay, GifFileType* gifInfo, const Dali::Vec { // Fetch the graphics control block GraphicsControlBlock graphicsControlBlock; - if( int errorCode = DGifSavedExtensionToGCB( gifInfo, frameIndex, &graphicsControlBlock ) != GIF_OK ) + if( int errorCode = DGifSavedExtensionToGCB( gifInfo, frameIndex, &graphicsControlBlock ) != GIF_OK + && gifInfo->ImageCount > 1 ) // for static gif, graphics control block may not been specified { DALI_LOG_ERROR( "GIF Loader: DGifSavedExtensionToGCB Error. Code: %d\n", errorCode ); }