goto __CATCH;
}
+ if (pMsgBody->body.pMultipart != NULL)
+ pLastMultipart = pMsgBody->body.pMultipart;
+
while (nEntries) {
MSG_DEBUG("decoding %dth multipart\n", index);
presentationInfo.pCurPresentation = pMultipart;
}
- if (pMsgBody->body.pMultipart == NULL) {
- /* first multipart */
- pMsgBody->body.pMultipart = pMultipart;
- }
-
if (pLastMultipart == NULL) {
/* first multipart */
+ pMsgBody->body.pMultipart = pMultipart;
pLastMultipart = pMultipart;
pPreMultipart = NULL;
} else {
goto __CATCH;
}
- if (pSelectedPart->pBody != NULL)
- memcpy(pPartBody, pSelectedPart->pBody, sizeof(MsgBody));
-
if (pSelectedPart != NULL) {
+
+ if (pSelectedPart->pBody != NULL)
+ memcpy(pPartBody, pSelectedPart->pBody, sizeof(MsgBody));
+
#ifdef __SUPPORT_DRM__
MmsReleaseMsgDRMInfo(&pSelectedPart->type.drmInfo);
#endif