Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
SDK
/
exoplayer
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
6b2b6ca4
authored
Sep 11, 2014
by
Oliver Woodman
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
Prevent device provisioning when another device provisioning request is already under process.
parent
bc01a4f4
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
7 additions
and
0 deletions
library/src/main/java/com/google/android/exoplayer/drm/StreamingDrmSessionManager.java
library/src/main/java/com/google/android/exoplayer/drm/StreamingDrmSessionManager.java
View file @
6b2b6ca4
...
@@ -71,6 +71,7 @@ public class StreamingDrmSessionManager implements DrmSessionManager {
...
@@ -71,6 +71,7 @@ public class StreamingDrmSessionManager implements DrmSessionManager {
private
Handler
postRequestHandler
;
private
Handler
postRequestHandler
;
private
int
openCount
;
private
int
openCount
;
private
boolean
provisioningInProgress
;
private
int
state
;
private
int
state
;
private
MediaCrypto
mediaCrypto
;
private
MediaCrypto
mediaCrypto
;
private
Exception
lastException
;
private
Exception
lastException
;
...
@@ -179,6 +180,7 @@ public class StreamingDrmSessionManager implements DrmSessionManager {
...
@@ -179,6 +180,7 @@ public class StreamingDrmSessionManager implements DrmSessionManager {
return
;
return
;
}
}
state
=
STATE_CLOSED
;
state
=
STATE_CLOSED
;
provisioningInProgress
=
false
;
mediaDrmHandler
.
removeCallbacksAndMessages
(
null
);
mediaDrmHandler
.
removeCallbacksAndMessages
(
null
);
postResponseHandler
.
removeCallbacksAndMessages
(
null
);
postResponseHandler
.
removeCallbacksAndMessages
(
null
);
postRequestHandler
.
removeCallbacksAndMessages
(
null
);
postRequestHandler
.
removeCallbacksAndMessages
(
null
);
...
@@ -212,11 +214,16 @@ public class StreamingDrmSessionManager implements DrmSessionManager {
...
@@ -212,11 +214,16 @@ public class StreamingDrmSessionManager implements DrmSessionManager {
}
}
private
void
postProvisionRequest
()
{
private
void
postProvisionRequest
()
{
if
(
provisioningInProgress
)
{
return
;
}
provisioningInProgress
=
true
;
ProvisionRequest
request
=
mediaDrm
.
getProvisionRequest
();
ProvisionRequest
request
=
mediaDrm
.
getProvisionRequest
();
postRequestHandler
.
obtainMessage
(
MSG_PROVISION
,
request
).
sendToTarget
();
postRequestHandler
.
obtainMessage
(
MSG_PROVISION
,
request
).
sendToTarget
();
}
}
private
void
onProvisionResponse
(
Object
response
)
{
private
void
onProvisionResponse
(
Object
response
)
{
provisioningInProgress
=
false
;
if
(
state
!=
STATE_OPENING
&&
state
!=
STATE_OPENED
&&
state
!=
STATE_OPENED_WITH_KEYS
)
{
if
(
state
!=
STATE_OPENING
&&
state
!=
STATE_OPENED
&&
state
!=
STATE_OPENED_WITH_KEYS
)
{
// This event is stale.
// This event is stale.
return
;
return
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment