Mercurial > dwindows
comparison ios/dw.m @ 2725:2dd68d2810ca
iOS: dw_messagebox() can't be called recursively...
This might not be the best solution... but it prevents deadlocks for now.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Thu, 09 Dec 2021 20:07:39 +0000 |
parents | 27fd270cb0db |
children | 7a15401e73f4 |
comparison
equal
deleted
inserted
replaced
2724:c1f8e598960d | 2725:2dd68d2810ca |
---|---|
3429 NSString *mtitle = [NSString stringWithUTF8String:title]; | 3429 NSString *mtitle = [NSString stringWithUTF8String:title]; |
3430 NSString *mtext; | 3430 NSString *mtext; |
3431 UIAlertControllerStyle mstyle = UIAlertControllerStyleAlert; | 3431 UIAlertControllerStyle mstyle = UIAlertControllerStyleAlert; |
3432 NSArray *params; | 3432 NSArray *params; |
3433 va_list args; | 3433 va_list args; |
3434 static int in_mb = FALSE; | |
3435 | |
3436 /* Prevent recursion */ | |
3437 if(in_mb) | |
3438 return 0; | |
3439 in_mb = TRUE; | |
3434 | 3440 |
3435 if(flags & DW_MB_OKCANCEL) | 3441 if(flags & DW_MB_OKCANCEL) |
3436 { | 3442 { |
3437 button2 = @"Cancel"; | 3443 button2 = @"Cancel"; |
3438 } | 3444 } |
3452 mtext = [[[NSString alloc] initWithFormat:[NSString stringWithUTF8String:format] arguments:args] autorelease]; | 3458 mtext = [[[NSString alloc] initWithFormat:[NSString stringWithUTF8String:format] arguments:args] autorelease]; |
3453 va_end(args); | 3459 va_end(args); |
3454 | 3460 |
3455 params = [NSMutableArray arrayWithObjects:mtitle, mtext, [NSNumber numberWithInteger:mstyle], button1, button2, button3, nil]; | 3461 params = [NSMutableArray arrayWithObjects:mtitle, mtext, [NSNumber numberWithInteger:mstyle], button1, button2, button3, nil]; |
3456 [DWObj safeCall:@selector(messageBox:) withObject:params]; | 3462 [DWObj safeCall:@selector(messageBox:) withObject:params]; |
3463 in_mb = FALSE; | |
3457 iResponse = [[params lastObject] integerValue]; | 3464 iResponse = [[params lastObject] integerValue]; |
3458 | 3465 |
3459 switch(iResponse) | 3466 switch(iResponse) |
3460 { | 3467 { |
3461 case 1: /* user pressed OK */ | 3468 case 1: /* user pressed OK */ |