lib/sigprocmask.c


Log

Author Commit Date CI Message
Bruno Haible 44b65c48 2018-05-03T23:09:42 Simplify code. Drop support for Borland C++ on Windows. Reported by Gisle Vanem <gisle.vanem@gmail.com>. * lib/accept4.c: Simplify 'defined _WIN32 || defined __WIN32__' to just 'defined _WIN32'. * lib/canonicalize-lgpl.c: Likewise. * lib/classpath.c: Likewise. * lib/clean-temp.c: Likewise. * lib/csharpexec.c: Likewise. * lib/ctime.c: Likewise. * lib/dosname.h: Likewise. * lib/dup2.c: Likewise. * lib/errno.in.h: Likewise. * lib/error.c: Likewise. * lib/euidaccess.c: Likewise. * lib/execute.c: Likewise. * lib/fcntl.in.h: Likewise. * lib/fcntl.c: Likewise. * lib/filename.h: Likewise. * lib/findprog.c: Likewise. * lib/flock.c: Likewise. * lib/fopen.c: Likewise. * lib/freopen.c: Likewise. * lib/fstat.c: Likewise. * lib/fsync.c: Likewise. * lib/gc-gnulib.c: Likewise. * lib/get-rusage-data.c: Likewise. * lib/getaddrinfo.c: Likewise. * lib/getdelim.c: Likewise. * lib/getdtablesize.c: Likewise. * lib/gethostname.c: Likewise. * lib/getlogin.c: Likewise. * lib/getlogin_r.c: Likewise. * lib/getopt.c: Likewise. * lib/getpagesize.c: Likewise. * lib/getpass.c: Likewise. * lib/getrusage.c: Likewise. * lib/gettimeofday.c: Likewise. * lib/glob.c: Likewise. * lib/inttypes.in.h: Likewise. * lib/isapipe.c: Likewise. * lib/javaexec.c: Likewise. * lib/link.c: Likewise. * lib/localcharset.c: Likewise. * lib/localename.h: Likewise. * lib/localename.c: Likewise. * lib/localtime.c: Likewise. * lib/lseek.c: Likewise. * lib/mbsinit.c: Likewise. * lib/mkdir.c: Likewise. * lib/msvc-nothrow.h: Likewise. * lib/nanosleep.c: Likewise. * lib/nl_langinfo.c: Likewise. * lib/nonblocking.c: Likewise. * lib/nproc.c: Likewise. * lib/open.c: Likewise. * lib/openpty.c: Likewise. * lib/pathmax.h: Likewise. * lib/pipe-filter-aux.c: Likewise. * lib/pipe-filter-gi.c: Likewise. * lib/pipe-filter-ii.c: Likewise. * lib/pipe.c: Likewise. * lib/pipe2.c: Likewise. * lib/poll.c: Likewise. * lib/popen.c: Likewise. * lib/posix_openpt.c: Likewise. * lib/printf-parse.c: Likewise. * lib/progreloc.c: Likewise. * lib/putenv.c: Likewise. * lib/read.c: Likewise. * lib/relocatable.c: Likewise. * lib/rename.c: Likewise. * lib/same-inode.h: Likewise. * lib/secure_getenv.c: Likewise. * lib/select.c: Likewise. * lib/sethostname.c: Likewise. * lib/setlocale.c: Likewise. * lib/sigaction.c: Likewise. * lib/sigprocmask.c: Likewise. * lib/sleep.c: Likewise. * lib/spawn-pipe.h: Likewise. * lib/spawn-pipe.c: Likewise. * lib/spawni.c: Likewise. * lib/stat-time.h: Likewise. * lib/stat-w32.c: Likewise. * lib/stat.c: Likewise. * lib/stdio.in.h: Likewise. * lib/stdio-impl.h: Likewise. * lib/stdio-read.c: Likewise. * lib/stdio-write.c: Likewise. * lib/stdlib.in.h: Likewise. * lib/strerror_r.c: Likewise. * lib/strftime-fixes.c: Likewise. * lib/sys_stat.in.h: Likewise. * lib/sys_types.in.h: Likewise. * lib/sys_wait.in.h : Likewise. * lib/system-quote.h: Likewise. * lib/system-quote.c: Likewise. * lib/tmpdir.c: Likewise. * lib/tzset.c: Likewise. * lib/uname.c: Likewise. * lib/unistd.in.h: Likewise. * lib/utime.in.h: Likewise. * lib/utime.c: Likewise. * lib/utimecmp.c: Likewise. * lib/utimens.c: Likewise. * lib/vasnprintf.c: Likewise. * lib/vma-iter.h: Likewise. * lib/vma-iter.c: Likewise. * lib/wait-process.c: Likewise. * lib/wcsftime.c: Likewise. * lib/wctype.in.h: Likewise. * lib/write.c: Likewise. * tests/nap.h: Likewise. * tests/test-cloexec.c: Likewise. * tests/test-dup-safer.c: Likewise. * tests/test-dup2.c: Likewise. * tests/test-dup3.c: Likewise. * tests/test-fcntl.c: Likewise. * tests/test-get-rusage-data.c: Likewise. * tests/test-getaddrinfo.c: Likewise. * tests/test-getlogin.h: Likewise. * tests/test-isatty.c: Likewise. * tests/test-localename.c: Likewise. * tests/test-mbrtowc-w32.c: Likewise. * tests/test-nonblocking.c: Likewise. * tests/test-nonblocking-pipe-main.c: Likewise. * tests/test-nonblocking-socket-main.c: Likewise. * tests/test-nonblocking-socket.h: Likewise. * tests/test-pipe.c: Likewise. * tests/test-pipe2.c: Likewise. * tests/test-poll.c: Likewise. * tests/test-pthread_sigmask1.c: Likewise. * tests/test-select.h: Likewise. * tests/test-sethostname2.c: Likewise. * tests/test-sigprocmask.c: Likewise. * tests/test-spawn-pipe-child.c: Likewise. * tests/test-stat-time.c: Likewise. * tests/test-system-quote-main.c: Likewise. * tests/test-utimens-common.h: Likewise. * tests/test-wcrtomb-w32.c: Likewise. * m4/csharpexec.m4 (gt_CSHARPEXEC): Likewise. * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Likewise. * m4/javacomp.m4 (gt_JAVACOMP): Likewise. * m4/javaexec.m4 (gt_JAVAEXEC): Likewise. * m4/locale-ar.m4 (gt_LOCALE_AR): Likewise. * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Likewise. * m4/locale-ja.m4 (gt_LOCALE_JA): Likewise. * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise. * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise. * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): Likewise. * m4/nocrash.m4 (GL_NOCRASH): Likewise. * m4/pathmax.m4 (gl_PATHMAX_SNIPPET): Likewise. * m4/ptsname_r.m4 (gl_PREREQ_PTSNAME_R): Likewise. * m4/stdio_h.m4 (gl_STDIO_H): Likewise. * m4/tmpfile.m4 (gl_FUNC_TMPFILE): Likewise. * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
Paul Eggert 281b825e 2018-01-01T00:57:25 maint: Run 'make update-copyright'
Paul Eggert ca35d468 2017-09-13T00:48:18 all: prefer https: URLs
Paul Eggert a3fd683d 2017-01-01T02:59:23 version-etc: new year * build-aux/gendocs.sh (version): * doc/gendocs_template: * doc/gendocs_template_min: * doc/gnulib.texi: * lib/version-etc.c (COPYRIGHT_YEAR): Update copyright dates by hand in templates and the like. * all files: Run 'make update-copyright'.
Paul Eggert 71090a2a 2016-01-01T00:56:19 version-etc: new year * build-aux/gendocs.sh (version): * doc/gendocs_template: * doc/gendocs_template_min: * doc/gnulib.texi: * lib/version-etc.c (COPYRIGHT_YEAR): Update copyright dates by hand in templates and the like. * all files: Run 'make update-copyright'.
Paul Eggert b9bfe784 2015-01-01T01:38:23 version-etc: new year * doc/gnulib.texi: * lib/version-etc.c (COPYRIGHT_YEAR): Update copyright date. * all files: Run 'make update-copyright'.
Eric Blake 1276a2c5 2014-01-01T00:04:40 maint: update copyright I ran 'make update-copyright'. Signed-off-by: Eric Blake <eblake@redhat.com>
Eric Blake 9fc81090 2013-01-01T00:50:58 maint: update all copyright year number ranges Run "make update-copyright". Compare to commit 1602f0a from last year. Signed-off-by: Eric Blake <eblake@redhat.com>
Paul Eggert bdaf232d 2012-11-20T22:25:09 dup, execute, fatal-signal, etc.: no 'static inline' * lib/dup.c (dup_nothrow): * lib/execute.c (nonintr_close, nonintr_open): * lib/fatal-signal.c (uninstall_handlers, install_handlers): * lib/fopen.c (orig_fopen): * lib/freadseek.c (freadptrinc): * lib/freopen.c (orig_freopen): * lib/fstat.c (orig_fstat, fstat_nothrow): * lib/get-rusage-as.c (get_rusage_as_via_setrlimit) (get_rusage_as_via_iterator): * lib/get-rusage-data.c (get_rusage_data_via_setrlimit): * lib/getdtablesize.c (_setmaxstdio_nothrow): * lib/isatty.c (_isatty_nothrow): * lib/open.c (orig_open): * lib/read.c (read_nothrow): * lib/sigprocmask.c (signal_nothrow): * lib/spawn-pipe.c (nonintr_close, nonintr_open): * lib/vasnprintf.c (MAX_ROOM_NEEDED): * lib/wait-process.c (unregister_slave_subprocess): * lib/write.c (write_nothrow): Now static, not static inline. * lib/spawn-pipe.c (nonintr_open): Define only if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__. * m4/dup.m4 (gl_PREREQ_DUP): * m4/execute.m4 (gl_EXECUTE): * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): * m4/fopen.m4 (gl_PREREQ_FOPEN): * m4/freadseek.m4 (gl_FUNC_FREADSEEK): * m4/freopen.m4 (gl_PREREQ_FREOPEN): * m4/fstat.m4 (gl_PREREQ_FSTAT): * m4/getdtablesize.m4 (gl_PREREQ_GETDTABLESIZE): * m4/isatty.m4 (gl_PREREQ_ISATTY): * m4/open.m4 (gl_PREREQ_OPEN): * m4/read.m4 (gl_PREREQ_READ): * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): * m4/spawn-pipe.m4 (gl_SPAWN_PIPE): * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): * m4/wait-process.m4 (gl_WAIT_PROCESS): * m4/write.m4 (gl_PREREQ_WRITE): * modules/get-rusage-as, modules/get-rusage-data (configure.ac): Do not require AC_C_INLINE.
Bruno Haible 00f43085 2012-01-07T04:22:05 Talk about "native Windows API", not "Woe32". * lib/accept4.c: Update comments to mention native Windows. * lib/execute.c: Likewise. * lib/fatal-signal.c: Likewise. * lib/localcharset.c: Likewise. * lib/nanosleep.c: Likewise. * lib/nl_langinfo.c: Likewise. * lib/pclose.c: Likewise. * lib/pipe-filter-gi.c: Likewise. * lib/pipe-filter-ii.c: Likewise. * lib/pipe.c: Likewise. * lib/pipe2.c: Likewise. * lib/popen.c: Likewise. * lib/progreloc.c: Likewise. * lib/relocatable.c: Likewise. * lib/sigaction.c: Likewise. * lib/sigprocmask.c: Likewise. * lib/spawn-pipe.h: Likewise. * lib/spawn-pipe.c: Likewise. * lib/spawni.c: Likewise. * lib/stat-time.h: Likewise. * lib/w32spawn.h: Likewise. * tests/test-isatty.c: Likewise. * lib/config.charset: More comments. * doc/gnulib-intro.texi: Mention native Windows. * doc/posix-functions/_Exit_C99.texi: Likewise. * doc/posix-headers/fcntl.texi: Likewise.
Jim Meyering 1602f0af 2012-01-01T10:04:58 maint: update all copyright year number ranges Run "make update-copyright".
Eric Blake 7a95153e 2011-11-09T11:34:21 raise: fix mingw handling of SIGPIPE When compiling for mingw, I see: CC sigprocmask.lo sigprocmask.c: In function '_gl_raise_SIGPIPE': sigprocmask.c:349:1: warning: control reaches end of non-void function which means that raise(SIGPIPE) would be using an uninitialized value as its return. * lib/sigprocmask.c (_gl_raise_SIGPIPE): Provide a return value. Signed-off-by: Eric Blake <eblake@redhat.com>
Bruno Haible f34d6c82 2011-09-28T00:49:04 raise: Fix double declaration with modules 'sigprocmask' and 'sigpipe'. * lib/signal.in.h (GNULIB_defined_signal_blocking): New macro. (raise): Remove older, duplicated declaration. (_gl_raise_SIGPIPE): New declaration. * lib/sigprocmask.c (_gl_raise_SIGPIPE): New function. (rpl_raise): Remove function. * lib/raise.c (rpl_raise, raise): Merge into a single function. Handle a gnulib-defined SIGPIPE here. * m4/raise.m4 (gl_FUNC_RAISE): Set REPLACE_RAISE also if the module 'sigprocmask' has detected missing signal-blocking and the module 'sigpipe' is enabled. Reported by Tatsuro MATSUOKA <tmacchant5@yahoo.co.jp>.
Bruno Haible 14cbee7b 2011-09-24T12:37:54 sigprocmask: Make code safer. * lib/sigprocmask.c: Move '#include "msvc-inval.h"' before the code section that changes macro definitions for this compilation unit.
Paul Eggert 78873a29 2011-09-23T21:54:43 sigprocmask: move #include directive * lib/sigprocmask.c: Move '#include "msvc-inval.h"' to the Windows-specific section, so that the Emacs source need not contain msvc-inval.h.
Bruno Haible b781b33a 2011-09-24T01:07:22 sigprocmask: Avoid crashes through signal() on MSVC 9. * lib/sigprocmask.c: Include msvc-inval.h. (signal_nothrow): New function. (signal): Redefine it. * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Require AC_C_INLINE. * modules/sigprocmask (Depends-on): Add msvc-inval. * doc/posix-functions/signal.texi: Mention the problem on MSVC.
Jim Meyering d60f3b0c 2011-01-01T20:17:23 maint: update almost all copyright ranges to include 2011 Run the new "make update-copyright" rule.
Jim Meyering b2e2010c 2010-01-01T10:31:12 update nearly all FSF copyright year lists to include 2010 Use the same procedure as for 2009, outlined in http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/20081
Jim Meyering 3030c5b5 2009-12-28T10:50:36 update nearly all FSF copyright year lists to include 2009 The files named by the following are exempted: grep -v '^#' config/srclist.txt|grep -v '^$' \ | while read src dst; do test -f "$dst" && { echo "$dst"; continue; } test -d "$dst" || continue echo "$dst"/$(basename "$src") done > exempt git ls-files tests/unictype >> exempt In the remaining files, convert to all-interval notation if - there is already at least one year interval like 2000-2003 - the file is maintained by me - the file is in lib/uni*/, where that style already prevails Otherwise, use update-copyright's default.
Bruno Haible 441aa304 2009-12-10T20:28:30 Use spaces for indentation, not tabs.
Bruno Haible d8374ab0 2008-10-21T01:12:33 Take into account the role of SIGABRT_COMPAT on Windows 2008.
Bruno Haible b5298eb7 2008-09-26T13:25:57 Support signal handling with SIGPIPE on native Windows platforms.
Eric Blake 748f9f28 2008-06-23T06:02:40 Revert use of sig-handler.h in sigprocmask.c. * modules/sigprocmask (Files): Don't rely on sig-handler.h, since it requires the existence of struct sigaction. * lib/sigprocmask.c (handler_t): Restore typedef. (rpl_signal, old_handlers): Use local type. Signed-off-by: Eric Blake <ebb9@byu.net>
Bruno Haible 69b9e4df 2008-06-22T21:07:54 Update a comment.
Eric Blake 4b2f21b3 2008-06-21T07:08:49 Use sigaction module rather than signal(). * modules/c-stack (Depends-on): Add sigaction. * modules/fatal-signal (Depends-on): Likewise. * modules/nanosleep (Depends-on): Likewise. * modules/sigprocmask (Files): Add sig-handler.h. * modules/sigaction (Files): Likewise. * lib/sig-handler.h (get_handler): New file, suggested by Paul Eggert. * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions. (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal. * lib/fatal-signal.c (uninstall_handlers, install_handlers) (init_fatal_signals): Likewise. * lib/nanosleep.c (rpl_nanosleep): Likewise. (siginterrupt): Delete fallback. * lib/sigprocmask.c (handler_t): Delete. (old_handlers): Use sa_handler_t instead. * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for siginterrupt. Signed-off-by: Eric Blake <ebb9@byu.net>
Eric Blake 6dbadedb 2008-06-21T07:06:28 Improve robustness of sigprocmask by overriding signal. * lib/signal.in.h (rpl_signal): Override signal when sigprocmask is in use. * lib/sigprocmask.c (blocked_handler): Reinstall block handler. (SIGKILL, SIGSTOP): Provide fallbacks. (rpl_signal): Implement. (old_handlers, blocked_set): Mark volatile, since sigprocmask and signal can be called inside handlers. Signed-off-by: Eric Blake <ebb9@byu.net>
Bruno Haible 0f6c3b2f 2008-06-17T01:27:14 Normalize whitespace.
Eric Blake 5465a1c5 2008-06-16T16:45:09 Use raise module consistently. * modules/fatal-signal (Depends-on): Add raise. * modules/sigprocmask (Depends-on): Likewise. * lib/fatal-signal.c (fatal_signal_handler): Rely on raise. * lib/sigprocmask.c (sigprocmask): Likewise. * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise. * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise. Signed-off-by: Eric Blake <ebb9@byu.net>
Eric Blake de3b21e8 2008-06-16T14:17:11 Fix compliance bug in sigpending. * lib/sigprocmask.c (sigpending): Return pending array via parameter, not return value. Signed-off-by: Eric Blake <ebb9@byu.net>
Bruno Haible 57fdfd3f 2007-10-07T19:14:58 Change copyright notice from GPLv2+ to GPLv3+.
Bruno Haible 7f5dc4fe 2007-05-01T19:20:18 sigprocmask.h is replaced with <signal.h>.
Eric Blake 5eb6d67a 2006-10-17T15:27:32 * lib/sigprocmask.c (sigprocmask): Fix typo.
Bruno Haible fa9f85a4 2006-10-16T11:55:35 New module 'sigprocmask'.