Route drm@1.0-service.widevine libbinder to /dev/vndbinder

b/37309712: [Marlin/Sailfish] Fatal signal 6 (SIGABRT) when playing Exo
	    Player L1 encrypted content
Test: marlin

Change-Id: I05b12ea334138498be13bca92c9b1db6ed1b9870
Signed-off-by: Iliyan Malchev <malchev@google.com>
This commit is contained in:
Iliyan Malchev
2017-04-14 01:22:04 -07:00
parent c3ea64aa89
commit 28b89a9b4f
2 changed files with 7 additions and 0 deletions

View File

@@ -24,6 +24,7 @@ LOCAL_SHARED_LIBRARIES := \
liblog \
libutils \
libwvhidl \
libbinder \
LOCAL_MODULE := android.hardware.drm@1.0-service.widevine
LOCAL_INIT_RC := src_hidl/android.hardware.drm@1.0-service.widevine.rc

View File

@@ -21,6 +21,8 @@
#include <android-base/logging.h>
#include <hidl/HidlTransportSupport.h>
#include <binder/ProcessState.h>
using ::android::hardware::configureRpcThreadpool;
using ::android::hardware::joinRpcThreadpool;
using ::android::sp;
@@ -33,6 +35,10 @@ using wvdrm::hardware::drm::V1_0::widevine::WVDrmFactory;
int main(int /* argc */, char** /* argv */) {
ALOGD("android.hardware.drm@1.0-service.widevine starting...");
// The DRM HAL may communicate to other vendor components via
// /dev/vndbinder
android::ProcessState::initWithDriver("/dev/vndbinder");
sp<IDrmFactory> drmFactory = new WVDrmFactory;
sp<ICryptoFactory> cryptoFactory = new WVCryptoFactory;