diff --git a/ChangeLog b/ChangeLog index 2e1dde120..d733b73cc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2003-04-06 Richard Frith-Macdonald + + * Source/NSThread.m: (GSPerformHolder) execute perform operations + in the same order in which they were submitted. + 2003-04-04 Stephane Corthesy * macosx/config.h, macosx/preface.h: Update. diff --git a/Source/NSThread.m b/Source/NSThread.m index c75f0bfd2..e47542ef9 100644 --- a/Source/NSThread.m +++ b/Source/NSThread.m @@ -725,7 +725,8 @@ static NSDate *theFuture; forMode: (NSString*)mode { NSRunLoop *loop = [NSRunLoop currentRunLoop]; - unsigned c; + unsigned int i; + unsigned int c; char dummy; read(inputFd, &dummy, 1); @@ -733,9 +734,9 @@ static NSDate *theFuture; [subthreadsLock lock]; c = [perfArray count]; - while (c-- > 0) + for (i = 0; i < c; i++) { - GSPerformHolder *h = [perfArray objectAtIndex: c]; + GSPerformHolder *h = [perfArray objectAtIndex: i]; [loop performSelector: @selector(fire) target: h