This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Bug: Synchronous signals broken on Cygwin 64

I just saw that the result after returning from a synchronous signal is
undefined. So any behavior seems be OK. I'd still encourage to unify the
behavior of 32-bit and 64-bit code. (See my other mail.)

Best regards

Am 26.04.2018 um 13:01 schrieb Houder:
> On Thu, 26 Apr 2018 12:52:54, Thomas Zimmermann wrote:
>> Hi
>> Am 26.04.2018 um 12:45 schrieb Houder:
>>>> The expected behavior is that an installed signal handler runs exactly
>>>> once for a signal and the OS terminates the program if the handler
>>>> returns. This works on 32-bit Cygwin. From my observation, Cygwin 64
>>>> differs in the follow ways:
>>> =20
>>> .. uhm, unless SA_RESETHAND (sa_flags) has been specified, I expect the
>>> handler to be invoked again and again ...
>> What I mean is that the installed signal handler is re-called constantly
>> for the same HW exception (div-by-zero in this case). It is as if
>> there's an endless loop around the signal-handler function.
> After the invocation of the handler, the program continues with the code
> that attempts 'to divide by zero'.
> As result of that, the handler is invoked again.
> Henri
>> Best regards
>> Thomas
> --
> Problem reports:
> FAQ:         
> Documentation:
> Unsubscribe info:

Implement thread-safe and fault-tolerant software in C: visit
Fingerprint:    16FF F599 82F8 E5AA 18C6 5220 D9DA D7D4 4EF1 DF08

Attachment: signature.asc
Description: OpenPGP digital signature

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]