Skip navigation.
 
mlRe: CGDisplayReconfigurationCallBack
FROM : Jean-Daniel Dupas
DATE : Sun Mar 30 16:05:24 2008

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_removed>)
>
> 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:
> http://lists.apple.com/mailman/options/cocoa-dev/<email_removed>
>
> This email sent to <email_removed>
>

Related mailsAuthorDate
mlCGDisplayReconfigurationCallBack Trygve Inda Mar 30, 15:31
mlRe: CGDisplayReconfigurationCallBack Jean-Daniel Dupas Mar 30, 16:05
mlRe: CGDisplayReconfigurationCallBack Trygve Inda Apr 2, 00:12
mlRe: CGDisplayReconfigurationCallBack Jean-Daniel Dupas Apr 2, 01:19