Resume HW after forced pause during flush
Test: see bug, compiles
Bug: 226349461
Change-Id: I48b41a79a04c42d3ca05bb66f1bc43122ed1568a
diff --git a/services/audioflinger/Threads.cpp b/services/audioflinger/Threads.cpp
index 7546c9d..4722a44 100644
--- a/services/audioflinger/Threads.cpp
+++ b/services/audioflinger/Threads.cpp
@@ -6393,6 +6393,7 @@
(doHwPause || (mFlushPending && !mHwPaused && (count != 0)))) {
status_t result = mOutput->stream->pause();
ALOGE_IF(result != OK, "Error when pausing output stream: %d", result);
+ doHwResume = !doHwPause; // resume if pause is due to flush.
}
if (mFlushPending) {
flushHw_l();
@@ -6961,6 +6962,7 @@
if (!mStandby && (doHwPause || (mFlushPending && !mHwPaused && (count != 0)))) {
status_t result = mOutput->stream->pause();
ALOGE_IF(result != OK, "Error when pausing output stream: %d", result);
+ doHwResume = !doHwPause; // resume if pause is due to flush.
}
if (mFlushPending) {
flushHw_l();