Fixed unguarded critical sections.

CQTexperiment
vspader 2007-10-13 08:14:05 +00:00
parent d5919bc93e
commit fc9069d7c7
1 changed files with 23 additions and 18 deletions

View File

@ -54,6 +54,7 @@
output = [[OutputNode alloc] initWithController:self previous:nil];
[output setup];
@synchronized(chainQueue) {
NSEnumerator *enumerator = [chainQueue objectEnumerator];
id anObject;
while (anObject = [enumerator nextObject])
@ -68,6 +69,8 @@
[bufferChain release];
}
}
bufferChain = [[BufferChain alloc] initWithController:self];
while (![bufferChain open:url withOutputFormat:[output format]])
@ -263,12 +266,14 @@
return;
}
@synchronized(chainQueue) {
bufferChain = [chainQueue objectAtIndex:0];
[bufferChain retain];
NSLog(@"New!!! %@ %@", bufferChain, [[bufferChain inputNode] decoder]);
[chainQueue removeObjectAtIndex:0];
}
[self notifyStreamChanged:[bufferChain userInfo]];
[output setEndOfStream:NO];