Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > gnu.bash.bug > #14924
| From | Chet Ramey <chet.ramey@case.edu> |
|---|---|
| Newsgroups | gnu.bash.bug |
| Subject | Re: write() not retried after EINTR in printf and echo |
| Date | 2018-12-19 09:01 -0500 |
| Message-ID | <mailman.5935.1545228093.1284.bug-bash@gnu.org> (permalink) |
| References | <CAFra36hm9XcAgwqr7Yp_giX+kiSEp__x4Mc5Qn=eqgUdSdLA7Q@mail.gmail.com> |
On 12/18/18 8:06 PM, Bize Ma wrote:
> In here:
> https://lists.gnu.org/archive/html/bug-bash/2018-01/msg00032.html
>
>
> You promised:
>
> The
> next version of bash will install its SIGWINCH handler with SA_RESTART.
>
>
>
> Yet:
> Still a bug in bash version 5
And yet, when you look at the source, the signal handlers are installed
with SA_RESTART. For example,
/* Let's see if we can keep SIGWINCH from interrupting interruptible system
calls, like open(2)/read(2)/write(2) */
#if defined (SIGWINCH)
if (sig == SIGWINCH)
act.sa_flags |= SA_RESTART; /* XXX */
#endif
in sig.c:set_signal_handler() and
# if defined (SIGWINCH)
act.sa_flags = (sig == SIGWINCH) ? SA_RESTART : 0;
# else
act.sa_flags = 0;
# endif /* SIGWINCH */
in lib/readline/signals.c:rl_set_sighandler().
--
``The lyf so short, the craft so long to lerne.'' - Chaucer
``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, UTech, CWRU chet@case.edu http://tiswww.cwru.edu/~chet/
Back to gnu.bash.bug | Previous | Next | Find similar | Unroll thread
Re: write() not retried after EINTR in printf and echo Chet Ramey <chet.ramey@case.edu> - 2018-12-19 09:01 -0500
csiph-web