libmix: when terminate VA, reset mSignalBufferPre[] even va is not initialized
BZ: 191657
when terminate VA, reset mSignalBufferPre[] even va is not initialized
or else after output reconfiguration, unreseted mSignalBufferPre[] will cause
buffer renderdone flag mismatch and buffer status failure.
Change-Id: I8cffbbfc104882900718f7f85555f6cd6fc5a6b2
Signed-off-by: ywan171 <yi.a.wang@intel.com>
diff --git a/videodecoder/VideoDecoderBase.cpp b/videodecoder/VideoDecoderBase.cpp
index a5b73f4..30b92af 100644
--- a/videodecoder/VideoDecoderBase.cpp
+++ b/videodecoder/VideoDecoderBase.cpp
@@ -978,6 +978,11 @@
}
Decode_Status VideoDecoderBase::terminateVA(void) {
+ mSignalBufferSize = 0;
+ for (int i = 0; i < MAX_GRAPHIC_BUFFER_NUM; i++) {
+ mSignalBufferPre[i] = NULL;
+ }
+
if (mVAStarted == false) {
// VA hasn't been started yet
return DECODE_SUCCESS;
@@ -1044,10 +1049,6 @@
mVAStarted = false;
mInitialized = false;
mErrReportEnabled = false;
- mSignalBufferSize = 0;
- for (int i = 0; i < MAX_GRAPHIC_BUFFER_NUM; i++) {
- mSignalBufferPre[i] = NULL;
- }
return DECODE_SUCCESS;
}