From fd20296c27fd95859d623a2bc23ac9b4799710e3 Mon Sep 17 00:00:00 2001 From: "git-you.kim72.gmail.com" Date: Mon, 30 Jul 2012 17:06:41 +0900 Subject: [PATCH] Fix Issue #35489: drm content corruption on GB If rawContent is copied into mediaBuf, readBuf is copied to wrong address. mediaBuf should be forwarded by readBytes. Change-Id: I4fc9c1f7f4e3d5dfe3c7e5cd92261608f6b3e248 Signed-off-by: git-you.kim72.gmail.com --- media/libdrm/mobile1/src/objmng/drm_api.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/media/libdrm/mobile1/src/objmng/drm_api.c b/media/libdrm/mobile1/src/objmng/drm_api.c index 249cdbeb734f4..232d9f44a1c3b 100644 --- a/media/libdrm/mobile1/src/objmng/drm_api.c +++ b/media/libdrm/mobile1/src/objmng/drm_api.c @@ -1478,13 +1478,13 @@ static int32_t drm_readBinaryContentFromInputStream(T_DRM_Session_Node* s, int32 if (NULL != s->readBuf && s->readBufLen > 0) { /* read from backup buffer */ if (leftLen <= s->readBufLen) { - memcpy(mediaBuf, s->readBuf + s->readBufOff, leftLen); + memcpy(mediaBuf + readBytes, s->readBuf + s->readBufOff, leftLen); s->readBufOff += leftLen; s->readBufLen -= leftLen; readBytes += leftLen; leftLen = 0; } else { - memcpy(mediaBuf, s->readBuf + s->readBufOff, s->readBufLen); + memcpy(mediaBuf + readBytes, s->readBuf + s->readBufOff, s->readBufLen); s->readBufOff += s->readBufLen; leftLen -= s->readBufLen; readBytes += s->readBufLen;