summaryrefslogtreecommitdiffstats
path: root/drm/java
diff options
context:
space:
mode:
authorGloria Wang <gwang@google.com>2011-07-21 15:10:22 -0700
committerGloria Wang <gwang@google.com>2011-07-25 16:09:58 -0700
commita17d454fd0d20d14cf1fbc09f0f296cb6cbb870b (patch)
treee7ecaa5d516248aee80cf5887f50c5b75e91a0f4 /drm/java
parentae5df05f2246515a652f0c935c6deb85a0bdee01 (diff)
downloadframeworks_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-xdrm/java/android/drm/DrmManagerClient.java6
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);