diff options
Diffstat (limited to 'drm/drmserver/DrmManager.cpp')
| -rw-r--r-- | drm/drmserver/DrmManager.cpp | 6 | 
1 files changed, 5 insertions, 1 deletions
diff --git a/drm/drmserver/DrmManager.cpp b/drm/drmserver/DrmManager.cpp index 537791c95e21..49df1c8f4b53 100644 --- a/drm/drmserver/DrmManager.cpp +++ b/drm/drmserver/DrmManager.cpp @@ -117,7 +117,11 @@ status_t DrmManager::unloadPlugIns() {  status_t DrmManager::setDrmServiceListener(              int uniqueId, const sp<IDrmServiceListener>& drmServiceListener) {      Mutex::Autolock _l(mLock); -    mServiceListeners.add(uniqueId, drmServiceListener); +    if (NULL != drmServiceListener.get()) { +        mServiceListeners.add(uniqueId, drmServiceListener); +    } else { +        mServiceListeners.removeItem(uniqueId); +    }      return DRM_NO_ERROR;  }  |