From: David Elliott Date: Tue, 19 Oct 2004 04:43:03 +0000 (+0000) Subject: Fixed incorrect comment about [NSDate distantPast]. We aren't seeking to X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/eba2de69ccdfc52b6adc02ba90c124aa4681f7ab Fixed incorrect comment about [NSDate distantPast]. We aren't seeking to block for an infinite amount of time but rather to not block at all. Also added a bit of an overview since apparently the purpose of this code was not readily apparent even with the existing comments. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29986 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/cocoa/app.mm b/src/cocoa/app.mm index e2336ca1b1..188343584f 100644 --- a/src/cocoa/app.mm +++ b/src/cocoa/app.mm @@ -71,13 +71,15 @@ WX_IMPLEMENT_POSER(wxPoserNSApplication); the queue to ensure this method will return. See wxEventLoop::Exit() for more information. - Ê ÊRN: We used to use nil as the untilDate in previous versions since nil -Ê Êis a shorter and more concise way of specifying an infinite amount of -ÊÊ Êtime than [NSDate distantPast]. ÊHowever, Apple neglects to mention in -Ê Êtheir documentation that nil is not handled correctly in OSX 10.2 -Ê Ê(and possibly lower) and when the call is reached the system comes to -Ê Êa screeching halt, therefore we need to specify [NSDate distantPast] -Ê Êexplicitly so that wxCocoa will work correctly in OSX 10.2. + This overridden method calls the superclass method with an untilDate + parameter that indicates nil should be returned if there are no pending + events. That is, nextEventMatchingMask: should not wait for an event. + If nil is returned then idle event processing occurs until the user + does not request anymore idle events or until a real event comes through. + + Apple documentation states that nil can be passed in place of + [NSDate distantPast] to the untilDate parameter. However, according + to Ryan Norton this crashes on Jaguar (10.2). */ - (NSEvent *)nextEventMatchingMask:(unsigned int)mask untilDate:(NSDate *)expiration inMode:(NSString *)mode dequeue:(BOOL)flag