diff options
| author | 2011-09-27 14:07:45 -0700 | |
|---|---|---|
| committer | 2011-09-27 14:07:45 -0700 | |
| commit | ab7ed38d5fea82db64eb90bad9d4c646d61d15df (patch) | |
| tree | 85da44c3e465acf308f5a2ace7a76c3b7a864bd8 /services/audioflinger/AudioFlinger.cpp | |
| parent | d33b3881f7647e721181c46f9166ee139cec7e38 (diff) | |
| parent | 4a64a6e32c40c2708208864961844b242568ea17 (diff) | |
Merge "Fix issue 5373658: memory leak in AudioFlinger."
Diffstat (limited to 'services/audioflinger/AudioFlinger.cpp')
| -rw-r--r-- | services/audioflinger/AudioFlinger.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/services/audioflinger/AudioFlinger.cpp b/services/audioflinger/AudioFlinger.cpp index 88a05b2efcbb..01f5a6f433be 100644 --- a/services/audioflinger/AudioFlinger.cpp +++ b/services/audioflinger/AudioFlinger.cpp @@ -985,6 +985,10 @@ AudioFlinger::ThreadBase::~ThreadBase() mNewParameters.clear(); // do not lock the mutex in destructor releaseWakeLock_l(); + if (mPowerManager != 0) { + sp<IBinder> binder = mPowerManager->asBinder(); + binder->unlinkToDeath(mDeathRecipient); + } } void AudioFlinger::ThreadBase::exit() |