• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Xcode interferes with signal handler
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Xcode interferes with signal handler


  • Subject: Re: Xcode interferes with signal handler
  • From: Alex Zavatone via Cocoa-dev <email@hidden>
  • Date: Wed, 31 Jan 2024 10:36:28 -0600

Hi Gabriel.  Happy that you’re getting some progress.  Did Jens’s reply not
explain why it would be interfered with when running in the debugger?

> On Jan 31, 2024, at 10:33 AM, Gabriel Zachmann via Cocoa-dev
> <email@hidden> wrote:
>
> I have investigated a bit further.
>
> When I launch my app from lldb (on the command line),
> it still stops in mach_msg2_trap when I send a SIGUSR1 to my app.
>
> But at least, I get a more meaningful stack trace:
>
> * thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGUSR1
>  * frame #0: 0x0000000188d91874 libsystem_kernel.dylib`mach_msg2_trap + 8
>    frame #1: 0x0000000188da3cf0 libsystem_kernel.dylib`mach_msg2_internal + 80
>    frame #2: 0x0000000188d9a4b0 libsystem_kernel.dylib`mach_msg_overwrite +
> 476
>    frame #3: 0x0000000188d91bf8 libsystem_kernel.dylib`mach_msg + 24
>    frame #4: 0x0000000188eafbf4 CoreFoundation`__CFRunLoopServiceMachPort +
> 160
>    frame #5: 0x0000000188eae4bc CoreFoundation`__CFRunLoopRun + 1208
>    frame #6: 0x0000000188ead9ac CoreFoundation`CFRunLoopRunSpecific + 608
>    frame #7: 0x000000019345c448 HIToolbox`RunCurrentEventLoopInMode + 292
>    frame #8: 0x000000019345c284 HIToolbox`ReceiveNextEventCommon + 648
>    frame #9: 0x000000019345bfdc
> HIToolbox`_BlockUntilNextEventMatchingListInModeWithFilter + 76
>    frame #10: 0x000000018c68a8a4 AppKit`_DPSNextEvent + 660
>    frame #11: 0x000000018ce64980 AppKit`-[NSApplication(NSEventRouting)
> _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 716
>    frame #12: 0x000000018c67dd50 AppKit`-[NSApplication run] + 476
>    frame #13: 0x000000018c655014 AppKit`NSApplicationMain + 880
>    frame #14: 0x0000000100021534 ArtSaverApp`main(argc=1,
> argv=0x000000016fdfefd8) at main.m:10:12
>    frame #15: 0x0000000188a510e0 dyld`start + 2360
>
>
> Does anybody have an idea why my signal handler would not get called when the
> app is running in the debugger?
> But it does get called (as it should) when not running in the debugger?
> How could a debugger possibly prevent my app from installing a signal handler
> ?
>
> I'd like to debug my app after it caught the SIGUSR1 ...
>
>
> Best regards, Gabriel
>
>
>>
>> I am setting up a signal handler in my app like this:
>>
>>  void *e = signal( SIGUSR1, signal_handler );
>>  if ( e == SIG_ERR )
>>     ...
>>
>> It works (i can 'kill -30 <pid>'), BUT ONLY, if I run my app outside of
>> Xcode.
>>
>> When I launch it from Xcode, and I send a SIGUSR1 to my app, it always
>> breaks at mach_msg2_trap.
>> Obviously, this is a bit tedious for developing, since now I always have to
>> go through Product / Archive / Distribute ...
>>
>> Any ideas, how I can prevent this from happening?
>>
>> And it's unclear to me what's going on. Can Xcode really prevent signal(3)
>> from installing a signal handler?
>> Or does a kill on the command line deliver the signal to several processes,
>> one of them, maybe, an ancillary process from Xcode?
>>
>
> _______________________________________________
>
> 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

References: 
 >Re: Xcode interferes with signal handler (From: Gabriel Zachmann via Cocoa-dev <email@hidden>)

  • Prev by Date: Re: Xcode interferes with signal handler
  • Next by Date: Re: Xcode interferes with signal handler (was: Sending SIGUSR1 to a process)
  • Previous by thread: Re: Xcode interferes with signal handler
  • Next by thread: Re: Xcode interferes with signal handler
  • Index(es):
    • Date
    • Thread