diff options
author | Gloria Wang <gwang@google.com> | 2011-07-21 15:10:22 -0700 |
---|---|---|
committer | Gloria Wang <gwang@google.com> | 2011-07-25 16:09:58 -0700 |
commit | a17d454fd0d20d14cf1fbc09f0f296cb6cbb870b (patch) | |
tree | e7ecaa5d516248aee80cf5887f50c5b75e91a0f4 /drm/java | |
parent | ae5df05f2246515a652f0c935c6deb85a0bdee01 (diff) | |
download | frameworks_base-a17d454fd0d20d14cf1fbc09f0f296cb6cbb870b.zip frameworks_base-a17d454fd0d20d14cf1fbc09f0f296cb6cbb870b.tar.gz frameworks_base-a17d454fd0d20d14cf1fbc09f0f296cb6cbb870b.tar.bz2 |
Fix for bug 4371230.
- Generate unique ID for each DrmManagerClient in native side
- Fix the bug where multiple clients could use the same ID
- Return the correct unique ID back to Java
- Add a flag in the unique ID to separate native client and Java client
Change-Id: Ia4574b6b0a526f2335a65380975dc62f9a6e7f9b
Diffstat (limited to 'drm/java')
-rwxr-xr-x | drm/java/android/drm/DrmManagerClient.java | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/drm/java/android/drm/DrmManagerClient.java b/drm/java/android/drm/DrmManagerClient.java index f3a0343..9a7194c 100755 --- a/drm/java/android/drm/DrmManagerClient.java +++ b/drm/java/android/drm/DrmManagerClient.java @@ -248,9 +248,7 @@ public class DrmManagerClient { mEventHandler = new EventHandler(eventThread.getLooper()); // save the unique id - mUniqueId = hashCode(); - - _initialize(mUniqueId, new WeakReference<DrmManagerClient>(this)); + mUniqueId = _initialize(new WeakReference<DrmManagerClient>(this)); } protected void finalize() { @@ -794,7 +792,7 @@ public class DrmManagerClient { } // private native interfaces - private native void _initialize(int uniqueId, Object weak_this); + private native int _initialize(Object weak_this); private native void _finalize(int uniqueId); |