From 7ec5068a7419cc4dddcf7e060077a1287217c5cd Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Mon, 20 Mar 2017 21:15:03 +0200 Subject: Improve handling of EPIPE and fflush. --- awk.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'awk.h') diff --git a/awk.h b/awk.h index aae5e7ec..163ad362 100644 --- a/awk.h +++ b/awk.h @@ -1584,6 +1584,10 @@ extern bool inrec(IOBUF *iop, int *errcode); extern int nextfile(IOBUF **curfile, bool skipping); extern bool is_non_fatal_std(FILE *fp); extern bool is_non_fatal_redirect(const char *str, size_t len); +extern void ignore_sigpipe(void); +extern void set_sigpipe_to_default(void); +extern bool non_fatal_flush_std_file(FILE *fp); + /* main.c */ extern int arg_assign(char *arg, bool initing); extern int is_std_var(const char *var); @@ -1958,3 +1962,11 @@ erealloc_real(void *ptr, size_t count, const char *where, const char *var, const return ret; } + +#ifdef SIGPIPE +#define ignore_sigpipe() signal(SIGPIPE, SIG_IGN) +#define set_sigpipe_to_default() signal(SIGPIPE, SIG_DFL) +#else +#define ignore_sigpipe() +#define set_sigpipe_to_default() +#endif -- cgit v1.2.3