Fix multi-plugin cascade to handle non-seeking readers, where disposing of some data while finding an input is okay
parent
58b435dd88
commit
117ab53343
|
@ -85,12 +85,7 @@ NSArray * sortClassesByPriority(NSArray * theClasses)
|
|||
for (NSDictionary *obsItem in cachedObservers) {
|
||||
[theDecoder removeObserver:[obsItem objectForKey:@"observer"] forKeyPath:[obsItem objectForKey:@"keyPath"]];
|
||||
}
|
||||
if (![source seekable]) {
|
||||
NSURL * url = [source url];
|
||||
[source close];
|
||||
[source open:url];
|
||||
}
|
||||
else
|
||||
if ([source seekable])
|
||||
[source seek:0 whence:SEEK_SET];
|
||||
}
|
||||
theDecoder = nil;
|
||||
|
@ -185,12 +180,7 @@ NSArray * sortClassesByPriority(NSArray * theClasses)
|
|||
NSDictionary * data = [reader propertiesForSource:source];
|
||||
if ([data count])
|
||||
return data;
|
||||
if (![source seekable]) {
|
||||
NSURL * url = [source url];
|
||||
[source close];
|
||||
[source open:url];
|
||||
}
|
||||
else
|
||||
if ([source seekable])
|
||||
[source seek:0 whence:SEEK_SET];
|
||||
}
|
||||
return nil;
|
||||
|
|
Loading…
Reference in New Issue