Make NSAnimation work a bit

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27604 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Richard Frith-MacDonald 2009-01-15 15:19:19 +00:00
parent e2d0694264
commit 8a78246d12
2 changed files with 19 additions and 5 deletions

View file

@ -1,3 +1,9 @@
2009-01-15 Richard Frith-Macdonald <rfm@gnu.org>
* Source/NSRunLoop.m: Cleaned up a little and added hack as a temporary
fix for #25327, though I'm suspecting that the actual problme is in the
NSAnimation code.
2009-01-15 Richard Frith-Macdonald <rfm@gnu.org>
* Source/NSRunLoop.m:

View file

@ -1109,9 +1109,6 @@ static inline BOOL timerInvalidated(NSTimer *t)
NS_DURING
{
GSIArray watchers;
unsigned i;
/*
* If we have a housekeeping timer, and it is earlier than the
* limit date we have been given, we use the date of the housekeeper
@ -1124,8 +1121,7 @@ static inline BOOL timerInvalidated(NSTimer *t)
limit_date = timerDate(context->housekeeper);
}
if ((context == nil || (watchers = context->watchers) == 0
|| (i = GSIArrayCount(watchers)) == 0))
if (context == nil || GSIArrayCount(context->watchers) == 0)
{
NSDebugMLLog(@"NSRunLoop", @"no inputs in mode %@", mode);
GSPrivateNotifyASAP();
@ -1216,6 +1212,7 @@ static inline BOOL timerInvalidated(NSTimer *t)
- (BOOL) runMode: (NSString*)mode beforeDate: (NSDate*)date
{
CREATE_AUTORELEASE_POOL(arp);
GSRunLoopCtxt *context;
NSDate *d;
NSAssert(mode != nil, NSInvalidArgumentException);
@ -1236,6 +1233,17 @@ static inline BOOL timerInvalidated(NSTimer *t)
return NO;
}
#if 0
/* Check to see if we have any input sources.
*/
context = NSMapGet(_contextMap, mode);
if (context == nil || GSIArrayCount(context->watchers) == 0)
{
RELEASE(arp);
return NO;
}
#endif
/*
* Use the earlier of the two dates we have.
* Retain the date in case the firing of a timer (or some other event)