Re: CGDisplayReconfigurationCallBack
Re: CGDisplayReconfigurationCallBack
- Subject: Re: CGDisplayReconfigurationCallBack
- From: Jean-Daniel Dupas <email@hidden>
- Date: Sun, 30 Mar 2008 16:05:24 +0200
It does not say to not use longjmp, it sais to not use longjmp to jump
outside this function.
Just encapsulate your code in a @try / @catch() block to ensure that
even if an exception occurs (@throw use longjmp in the 32 bits
runtime), it will jump in your catch block and not outside your
callback.
In the same way, if you are using C++ call in the call back, you have
to use a try/catch block to avoid that an exception trigger a non-
local return.
Le 30 mars 08 à 15:31, Trygve Inda a écrit :
void MyDisplayReconfigurationCallBack (
CGDirectDisplayID display,
CGDisplayChangeSummaryFlags flags,
void *userInfo
);
Your callback function should avoid attempting to change display
configurations, and should not raise exceptions or perform a non-
local return
such as calling longjmp.
Does this mean I should stuff display and flags into a dict and use
something like
- (void)performSelector:(SEL)aSelector withObject:(id)anArgument
afterDelay:(NSTimeInterval)delay
How can I ensure a longjmp is not used here?
Thanks,
Trygve
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden