From: Seunghwan Lee Date: Thu, 3 Jan 2013 10:10:50 +0000 (+0900) Subject: P121210-0492 fixed smilparser for problem that image area changed to attachment X-Git-Tag: accepted/tizen_2.1/20130425.035101~14^2~23^2~3 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6744e87415461be3533155487165f5d89508a1f7;p=framework%2Fmessaging%2Fmsg-service.git P121210-0492 fixed smilparser for problem that image area changed to attachment --- diff --git a/plugin/mms_plugin/MmsPluginSmil.cpp b/plugin/mms_plugin/MmsPluginSmil.cpp index a1a9e37..16ef186 100755 --- a/plugin/mms_plugin/MmsPluginSmil.cpp +++ b/plugin/mms_plugin/MmsPluginSmil.cpp @@ -341,43 +341,44 @@ void MmsSmilGetElement(MMS_MESSAGE_DATA_S *pMmsMsg, xmlNode *a_node) break; case ATTRIBUTE_SRC: - { - char *szSrc; - char szTmpSrc[MSG_FILEPATH_LEN_MAX] = {0,}; - char szOutBuf[MSG_FILEPATH_LEN_MAX] = {0, }; - int cLen; - MsgMultipart *pPart = NULL; - MmsMsg *pMsg; - - szSrc = MsgChangeHexString((char *)pAttr->children->content); - if (szSrc == NULL) - break; - - memcpy(pMedia->szSrc, szSrc, strlen(szSrc) + 1); - free(szSrc); - - cLen = strlen(pMedia->szSrc); - if (!strncasecmp(pMedia->szSrc, "cid:", 4)) { - strncpy(szTmpSrc, pMedia->szSrc + 4, cLen - 4); - szTmpSrc[cLen - 4] = '\0'; - } else { - strncpy(szTmpSrc, pMedia->szSrc, cLen); - szTmpSrc[cLen] = '\0'; - } + { + char *szSrc; + char szTmpSrc[MSG_FILEPATH_LEN_MAX] = {0,}; + char szOutBuf[MSG_FILEPATH_LEN_MAX] = {0, }; + int cLen; + int ret; + MsgMultipart *pPart = NULL; + MmsMsg *pMsg; + + szSrc = MsgChangeHexString((char *)pAttr->children->content); + if (szSrc == NULL) + break; + + memcpy(pMedia->szSrc, szSrc, strlen(szSrc) + 1); + free(szSrc); - MmsPluginStorage::instance()->getMmsMessage(&pMsg); - pPart = pMsg->msgBody.body.pMultipart; + cLen = strlen(pMedia->szSrc); + if (!strncasecmp(pMedia->szSrc, "cid:", 4)) { + strncpy(szTmpSrc, pMedia->szSrc + 4, cLen - 4); + szTmpSrc[cLen - 4] = '\0'; + } else { + strncpy(szTmpSrc, pMedia->szSrc, cLen); + szTmpSrc[cLen] = '\0'; + } + + MmsPluginStorage::instance()->getMmsMessage(&pMsg); + pPart = pMsg->msgBody.body.pMultipart; #ifndef __SUPPORT_DRM__ - MmsSmilGetMediaSrcForNormalMsg(szOutBuf, szTmpSrc, pPart); + ret = MmsSmilGetMediaSrcForNormalMsg(szOutBuf, szTmpSrc, pPart); #else - MmsSmilGetMediaSrcForNormalMsg(szOutBuf, szTmpSrc, pPart, pMedia); + ret = MmsSmilGetMediaSrcForNormalMsg(szOutBuf, szTmpSrc, pPart, pMedia); #endif - + if (ret >= 0 && strlen(szOutBuf) > 0) { strcpy(pMedia->szSrc, szOutBuf); MmsSmilGetMediaFilePath(pMedia, szTmpSrc, pMsg->msgID); } break; - + } case ATTRIBUTE_COLOR: if (cmd[ELEMENT_TEXT]) pMedia->sMedia.sText.nColor = MmsSmilGetColorValue(pAttr->children->content);