Fixed openForSeek on STKHTTPDataSource potentially handling old URLs if URL provider is async

This commit is contained in:
Thong Nguyen 2014-02-12 19:53:21 +00:00
parent 03e9b8b208
commit 8c5b4fb298
1 changed files with 12 additions and 0 deletions

View File

@ -42,6 +42,8 @@
long long relativePosition;
long long fileLength;
int discontinuous;
int requestSerialNumber;
NSURL* currentUrl;
STKAsyncURLProvider asyncUrlProvider;
NSDictionary* httpHeaders;
@ -262,8 +264,18 @@
-(void) openForSeek:(BOOL)forSeek
{
int localRequestSerialNumber;
requestSerialNumber++;
localRequestSerialNumber = requestSerialNumber;
asyncUrlProvider(self, forSeek, ^(NSURL* url)
{
if (localRequestSerialNumber != self->requestSerialNumber)
{
return;
}
self->currentUrl = url;
if (url == nil)