Loading media/apex/java/android/media/MediaPlayer2.java +15 −5 Original line number Diff line number Diff line Loading @@ -63,6 +63,8 @@ import java.net.URL; import java.nio.ByteOrder; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Iterator; import java.util.LinkedList; Loading Loading @@ -414,6 +416,7 @@ public class MediaPlayer2 implements AutoCloseable synchronized (mDrmEventCallbackLock) { mDrmEventCallback = null; } clearMediaDrmObjects(); native_release(); Loading @@ -424,6 +427,16 @@ public class MediaPlayer2 implements AutoCloseable mReleased = true; } void clearMediaDrmObjects() { Collection<MediaDrm> drmObjs = mDrmObjs.values(); synchronized (mDrmObjs) { for (MediaDrm drmObj : drmObjs) { drmObj.close(); } mDrmObjs.clear(); } } private native void native_release(); // Have to declare protected for finalize() since it is protected Loading @@ -448,6 +461,7 @@ public class MediaPlayer2 implements AutoCloseable // This is a synchronous call. public void reset() { clearSourceInfos(); clearMediaDrmObjects(); stayAwake(false); native_reset(); Loading Loading @@ -4510,7 +4524,7 @@ public class MediaPlayer2 implements AutoCloseable }; // Modular DRM private final Map<UUID, MediaDrm> mDrmObjs = new HashMap<>(); private final Map<UUID, MediaDrm> mDrmObjs = Collections.synchronizedMap(new HashMap<>()); private class DrmHandle { static final int PROVISION_TIMEOUT_MS = 60000; Loading Loading @@ -4897,10 +4911,6 @@ public class MediaPlayer2 implements AutoCloseable mDrmObj.closeSession(mDrmSessionId); mDrmSessionId = null; } if (mDrmObj != null) { mDrmObj.close(); mDrmObj = null; } } void release() throws NoDrmSchemeException { Loading Loading
media/apex/java/android/media/MediaPlayer2.java +15 −5 Original line number Diff line number Diff line Loading @@ -63,6 +63,8 @@ import java.net.URL; import java.nio.ByteOrder; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Iterator; import java.util.LinkedList; Loading Loading @@ -414,6 +416,7 @@ public class MediaPlayer2 implements AutoCloseable synchronized (mDrmEventCallbackLock) { mDrmEventCallback = null; } clearMediaDrmObjects(); native_release(); Loading @@ -424,6 +427,16 @@ public class MediaPlayer2 implements AutoCloseable mReleased = true; } void clearMediaDrmObjects() { Collection<MediaDrm> drmObjs = mDrmObjs.values(); synchronized (mDrmObjs) { for (MediaDrm drmObj : drmObjs) { drmObj.close(); } mDrmObjs.clear(); } } private native void native_release(); // Have to declare protected for finalize() since it is protected Loading @@ -448,6 +461,7 @@ public class MediaPlayer2 implements AutoCloseable // This is a synchronous call. public void reset() { clearSourceInfos(); clearMediaDrmObjects(); stayAwake(false); native_reset(); Loading Loading @@ -4510,7 +4524,7 @@ public class MediaPlayer2 implements AutoCloseable }; // Modular DRM private final Map<UUID, MediaDrm> mDrmObjs = new HashMap<>(); private final Map<UUID, MediaDrm> mDrmObjs = Collections.synchronizedMap(new HashMap<>()); private class DrmHandle { static final int PROVISION_TIMEOUT_MS = 60000; Loading Loading @@ -4897,10 +4911,6 @@ public class MediaPlayer2 implements AutoCloseable mDrmObj.closeSession(mDrmSessionId); mDrmSessionId = null; } if (mDrmObj != null) { mDrmObj.close(); mDrmObj = null; } } void release() throws NoDrmSchemeException { Loading