diff options
author | Gloria Wang <gwang@google.com> | 2011-03-21 17:22:13 -0700 |
---|---|---|
committer | Gloria Wang <gwang@google.com> | 2011-03-21 19:08:18 -0700 |
commit | 6b2a35bbec228ce012065260ba153ee894f17a4e (patch) | |
tree | b7877f5457bbb5885e7eea0213a5e4c9c6113612 /drm/common | |
parent | 4dabc20fa21f78a0bc2f91f772ad449ac8b17028 (diff) | |
download | frameworks_av-6b2a35bbec228ce012065260ba153ee894f17a4e.zip frameworks_av-6b2a35bbec228ce012065260ba153ee894f17a4e.tar.gz frameworks_av-6b2a35bbec228ce012065260ba153ee894f17a4e.tar.bz2 |
Add one more field in DecryptHandle to support bug 4126624
Change-Id: Ic7ea5fd211c4f8283de8fdf722f89b6a94e5750b
Diffstat (limited to 'drm/common')
-rw-r--r-- | drm/common/IDrmManagerService.cpp | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/drm/common/IDrmManagerService.cpp b/drm/common/IDrmManagerService.cpp index 16f1dd0..346934b 100644 --- a/drm/common/IDrmManagerService.cpp +++ b/drm/common/IDrmManagerService.cpp @@ -51,6 +51,13 @@ static void writeDecrptHandleToParcelData( data->writeInt32(handle->copyControlVector.valueAt(i)); } + size = handle->extendedData.size(); + data->writeInt32(size); + for(int i = 0; i < size; i++) { + data->writeString8(handle->extendedData.keyAt(i)); + data->writeString8(handle->extendedData.valueAt(i)); + } + if (NULL != handle->decryptInfo) { data->writeInt32(handle->decryptInfo->decryptBufferLength); } else { @@ -71,8 +78,16 @@ static void readDecryptHandleFromParcelData( int size = data.readInt32(); for (int i = 0; i < size; i ++) { - handle->copyControlVector.add( - (DrmCopyControl)data.readInt32(), data.readInt32()); + DrmCopyControl key = (DrmCopyControl)data.readInt32(); + int value = data.readInt32(); + handle->copyControlVector.add(key, value); + } + + size = data.readInt32(); + for (int i = 0; i < size; i ++) { + String8 key = data.readString8(); + String8 value = data.readString8(); + handle->extendedData.add(key, value); } handle->decryptInfo = NULL; |