diff --git a/drm/1.0/default/DrmPlugin.cpp b/drm/1.0/default/DrmPlugin.cpp index 1b2f90e6d3..6f51e0e9cd 100644 --- a/drm/1.0/default/DrmPlugin.cpp +++ b/drm/1.0/default/DrmPlugin.cpp @@ -321,6 +321,7 @@ namespace implementation { Return DrmPlugin::setListener(const sp& listener) { mListener = listener; + mLegacyPlugin->setListener(listener == NULL ? NULL : this); return Void(); } @@ -372,8 +373,10 @@ namespace implementation { break; } if (sendEvent) { - mListener->sendEvent(eventType, toHidlVec(*sessionId), - toHidlVec(*data)); + Vector emptyVector; + mListener->sendEvent(eventType, + toHidlVec(sessionId == NULL ? emptyVector: *sessionId), + toHidlVec(data == NULL ? emptyVector: *data)); } }