gnustep-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Occasional NSInternalInconsistencyException


From: Ivan Vučica
Subject: Re: Occasional NSInternalInconsistencyException
Date: Tue, 19 Nov 2019 18:07:07 +0000

Would the bug here, then, be that alerts don't check for this edge case?

Patryk: I'd merge a pull request that makes -[NSAlert runModal] check
for an active runloop.

On Tue, Nov 19, 2019 at 5:49 PM Gregory Casamento
<address@hidden> wrote:
>
> Running modal panels requires the application run loop to be active.    
> You're not doing that.   I suggest you take a look at some of the application 
> examples for how to do what you want here.
>
> On Tue, Nov 19, 2019, 10:34 AM Patryk Laurent <address@hidden> wrote:
>>
>>
>> > On Nov 18, 2019, at 09:16, Wolfgang Lux <address@hidden> wrote:
>> >
>> >> Am 18.11.2019 um 04:43 schrieb Patryk Laurent <address@hidden>:
>> >> “Uncaught exception NSInternalInconsistencyException, reason: 
>> >> registration with registered client.”
>> >
>> > The error message itself is coming from NSDistributedNotificationCenter 
>> > and it looks like it's caused by a race condition when two threads in your 
>> > program are adding an observer to the distribution notification center at 
>> > about the same time.
>>
>> Thanks, Wolfgang. I find this surprising because my program is minimal 
>> (source code below). I wasn’t getting this before, will look for what has 
>> changed...
>>
>> Patryk
>>
>> #import <AppKit/AppKit.h>
>>
>> int main()
>> {
>>   NSApplication *app;
>>   app = [NSApplication sharedApplication];
>>
>>   NSAlert * alert = [[NSAlert alloc] init];
>>   [alert setMessageText:@"Hello alert"];
>>   [alert addButtonWithTitle:@"All done"];
>>   int result = [alert runModal];
>>   if (result == NSAlertFirstButtonReturn) {
>>     NSLog(@"First button pressed");
>>   }
>> }
>>
>>
>>
>>
>>
>>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]