diff options
author | Andy Hung <hunga@google.com> | 2019-03-07 19:45:54 -0800 |
---|---|---|
committer | Andy Hung <hunga@google.com> | 2019-03-08 10:37:15 -0800 |
commit | abfab20fdbdc41168f816272c31caa6c1264ba46 (patch) | |
tree | 940b8444b6e54cd0beee1b51427dab2715d7453a /services/audioflinger/PatchPanel.h | |
parent | 4e7c08a1343cc9a47c17950359fb0845b262dc40 (diff) | |
download | frameworks_av-abfab20fdbdc41168f816272c31caa6c1264ba46.tar.gz frameworks_av-abfab20fdbdc41168f816272c31caa6c1264ba46.tar.bz2 frameworks_av-abfab20fdbdc41168f816272c31caa6c1264ba46.zip |
PatchPanel: Keep peer alive during use.
Test: BT call, switch from hearing aid to headset
Bug: 126789266
Change-Id: I589e5ecaac25c1ce1d504a387662b96cf50f63ba
Diffstat (limited to 'services/audioflinger/PatchPanel.h')
-rw-r--r-- | services/audioflinger/PatchPanel.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/services/audioflinger/PatchPanel.h b/services/audioflinger/PatchPanel.h index 612855f57c..aba2cc27db 100644 --- a/services/audioflinger/PatchPanel.h +++ b/services/audioflinger/PatchPanel.h @@ -122,11 +122,11 @@ private: mThread = thread; mCloseThread = closeThread; } - void setTrackAndPeer(const sp<TrackType>& track, - ThreadBase::PatchProxyBufferProvider *peer) { + template <typename T> + void setTrackAndPeer(const sp<TrackType>& track, const sp<T> &peer) { mTrack = track; mThread->addPatchTrack(mTrack); - mTrack->setPeerProxy(peer); + mTrack->setPeerProxy(peer, true /* holdReference */); } void stopTrack() { if (mTrack) mTrack->stop(); } |