ref: 4d913096a150691cea0a4d5305d30bb31a534494
parent: 78ab4000c086c07d6841365541fd86d12ca98e4d
author: huili2 <huili2@cisco.com>
date: Wed Apr 8 07:14:39 EDT 2015
bug fix for nodelay API for buffer storage
--- a/codec/decoder/plus/src/welsDecoderExt.cpp
+++ b/codec/decoder/plus/src/welsDecoderExt.cpp
@@ -400,11 +400,19 @@
SBufferInfo* pDstInfo) {
int iRet;
SBufferInfo sTmpBufferInfo;
+ unsigned char* ppTmpDst[3] = {NULL, NULL, NULL};
+
iRet = (int) DecodeFrame2 (kpSrc, kiSrcLen, ppDst, pDstInfo);
memcpy (&sTmpBufferInfo, pDstInfo, sizeof (SBufferInfo));
+ ppTmpDst[0] = ppDst[0];
+ ppTmpDst[1] = ppDst[1];
+ ppTmpDst[2] = ppDst[2];
iRet |= DecodeFrame2 (NULL, 0, ppDst, pDstInfo);
if ((pDstInfo->iBufferStatus == 0) && (sTmpBufferInfo.iBufferStatus == 1)) {
memcpy (pDstInfo, &sTmpBufferInfo, sizeof (SBufferInfo));
+ ppDst[0] = ppTmpDst[0];
+ ppDst[1] = ppTmpDst[1];
+ ppDst[2] = ppTmpDst[2];
}
return (DECODING_STATE) iRet;