New module 'msvc-nothrow'. Makes _get_osfhandle safe on MSVC 9.
authorBruno Haible <bruno@clisp.org>
Fri, 23 Sep 2011 19:38:44 +0000 (21:38 +0200)
committerBruno Haible <bruno@clisp.org>
Fri, 23 Sep 2011 19:38:44 +0000 (21:38 +0200)
commit9b604b4cbfad7422bacc1c723df1d027b6a7c738
tree8299ebfd0839d14f62eb4c89e650d9623eeba157
parentfeb7da5e51db75738e91cce135c1906f7dc10948
New module 'msvc-nothrow'. Makes _get_osfhandle safe on MSVC 9.

* lib/msvc-nothrow.h: New file.
* lib/msvc-nothrow.c: New file.
* m4/msvc-nothrow.m4: New file.
* modules/msvc-nothrow: New file.
* lib/dup2.c: Include msvc-nothrow.h.
(rpl_dup2): No need to protect _get_osfhandle call here.
* lib/accept4.c: Include msvc-nothrow.h.
* lib/error.c: Likewise.
* lib/fcntl.c: Likewise.
* lib/lseek.c: Likewise.
* lib/nonblocking.c: Likewise.
* lib/poll.c: Likewise.
* lib/read.c: Likewise.
* lib/select.c: Likewise.
* lib/sockets.h: Likewise.
* lib/sockets.c: Likewise.
* lib/stdio-read.c: Likewise.
* lib/stdio-write.c: Likewise.
* lib/write.c: Likewise.
* lib/w32sock.h: Likewise.
* lib/w32spawn.h: Likewise.
* lib/flock.c: Include msvc-nothrow.h instead of <io.h>.
* lib/fsync.c: Likewise.
* lib/isapipe.c: Likewise.
* modules/dup2 (Depends-on): Add msvc-nothrow.
* modules/accept4 (Depends-on): Likewise.
* modules/error (Depends-on): Likewise.
* modules/fcntl (Depends-on): Likewise.
* modules/lseek (Depends-on): Likewise.
* modules/nonblocking (Depends-on): Likewise.
* modules/poll (Depends-on): Likewise.
* modules/read (Depends-on): Likewise.
* modules/select (Depends-on): Likewise.
* modules/sockets (Depends-on): Likewise.
* modules/sigpipe (Depends-on): Likewise.
* modules/write (Depends-on): Likewise.
* modules/accept (Depends-on): Likewise.
* modules/bind (Depends-on): Likewise.
* modules/connect (Depends-on): Likewise.
* modules/gethostname (Depends-on): Likewise.
* modules/getpeername (Depends-on): Likewise.
* modules/getsockname (Depends-on): Likewise.
* modules/getsockopt (Depends-on): Likewise.
* modules/ioctl (Depends-on): Likewise.
* modules/listen (Depends-on): Likewise.
* modules/recv (Depends-on): Likewise.
* modules/recvfrom (Depends-on): Likewise.
* modules/send (Depends-on): Likewise.
* modules/sendto (Depends-on): Likewise.
* modules/setsockopt (Depends-on): Likewise.
* modules/shutdown (Depends-on): Likewise.
* modules/socket (Depends-on): Likewise.
* modules/execute (Depends-on): Likewise.
* modules/spawn-pipe (Depends-on): Likewise.
* modules/flock (Depends-on): Likewise.
* modules/fsync (Depends-on): Likewise.
* modules/isapipe (Depends-on): Likewise.
* tests/test-cloexec.c: Include msvc-nothrow.h.
* tests/test-dup-safer.c: Likewise.
* tests/test-dup2.c: Likewise.
* tests/test-dup3.c: Likewise.
* tests/test-fcntl.c: Likewise.
* tests/test-pipe.c: Likewise.
* tests/test-pipe2.c: Likewise.
* modules/cloexec-tests (Depends-on): Add msvc-nothrow.
* modules/unistd-safer-tests (Depends-on): Likewise.
* modules/dup2-tests (Depends-on): Likewise.
* modules/dup3-tests (Depends-on): Likewise.
* modules/fcntl-tests (Depends-on): Likewise.
* modules/pipe-posix-tests (Depends-on): Likewise.
* modules/pipe2-tests (Depends-on): Likewise.
71 files changed:
ChangeLog
lib/accept4.c
lib/dup2.c
lib/error.c
lib/fcntl.c
lib/flock.c
lib/fsync.c
lib/isapipe.c
lib/lseek.c
lib/msvc-nothrow.c [new file with mode: 0644]
lib/msvc-nothrow.h [new file with mode: 0644]
lib/nonblocking.c
lib/poll.c
lib/read.c
lib/select.c
lib/sockets.c
lib/sockets.h
lib/stdio-read.c
lib/stdio-write.c
lib/w32sock.h
lib/w32spawn.h
lib/write.c
m4/msvc-nothrow.m4 [new file with mode: 0644]
modules/accept
modules/accept4
modules/bind
modules/cloexec-tests
modules/connect
modules/dup2
modules/dup2-tests
modules/dup3-tests
modules/error
modules/execute
modules/fcntl
modules/fcntl-tests
modules/flock
modules/fsync
modules/gethostname
modules/getpeername
modules/getsockname
modules/getsockopt
modules/ioctl
modules/isapipe
modules/listen
modules/lseek
modules/msvc-nothrow [new file with mode: 0644]
modules/nonblocking
modules/pipe-posix-tests
modules/pipe2-tests
modules/poll
modules/read
modules/recv
modules/recvfrom
modules/select
modules/send
modules/sendto
modules/setsockopt
modules/shutdown
modules/sigpipe
modules/socket
modules/sockets
modules/spawn-pipe
modules/unistd-safer-tests
modules/write
tests/test-cloexec.c
tests/test-dup-safer.c
tests/test-dup2.c
tests/test-dup3.c
tests/test-fcntl.c
tests/test-pipe.c
tests/test-pipe2.c