From ee32ede54063415fd6c48742ff6a2bf407adf971 Mon Sep 17 00:00:00 2001 From: Jae Seo Date: Tue, 31 May 2016 10:31:15 -0700 Subject: [PATCH] TIF: Release an existing audio patch before creating a new one Bug: 28115694, Bug: 28954262 Change-Id: I04e2e9176a008b72468592db7dc3c7ce376b94f2 --- .../com/android/server/tv/TvInputHardwareManager.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/tv/TvInputHardwareManager.java b/services/core/java/com/android/server/tv/TvInputHardwareManager.java index 5c6a69682b61d..8043c651751ce 100644 --- a/services/core/java/com/android/server/tv/TvInputHardwareManager.java +++ b/services/core/java/com/android/server/tv/TvInputHardwareManager.java @@ -742,7 +742,10 @@ class TvInputHardwareManager implements TvInputHal.Callback { synchronized (mImplLock) { mAudioSource = null; mAudioSink.clear(); - mAudioPatch = null; + if (mAudioPatch != null) { + mAudioManager.releaseAudioPatch(mAudioPatch); + mAudioPatch = null; + } } } }; @@ -980,6 +983,9 @@ class TvInputHardwareManager implements TvInputHal.Callback { } if (shouldRecreateAudioPatch) { mCommittedVolume = volume; + if (mAudioPatch != null) { + mAudioManager.releaseAudioPatch(mAudioPatch); + } mAudioManager.createAudioPatch( audioPatchArray, new AudioPortConfig[] { sourceConfig },