* fhandler_fifo.cc (fhandler_fifo::open): Avoid resetting errno after it has

been explicitly set.
* include/cygwin/version.h: Bump DLL minor version number to 2.
This commit is contained in:
Christopher Faylor 2009-12-09 16:52:43 +00:00
parent ad0ae5d83a
commit d0f9de23a1
4 changed files with 17 additions and 5 deletions

View File

@ -1,3 +1,10 @@
2009-12-09 Christopher Faylor <me+cygwin@cgf.cx>
* fhandler_fifo.cc (fhandler_fifo::open): Avoid resetting errno after
it has been explicitly set.
* include/cygwin/version.h: Bump DLL minor version number to 2.
2009-12-06 Corinna Vinschen <corinna@vinschen.de>
* include/cygwin/version.h: Bump DLL minor version number to 1.

View File

@ -1,6 +1,6 @@
/* fhandler_fifo.cc - See fhandler.h for a description of the fhandler classes.
Copyright 2002, 2003, 2004, 2005, 2006, 2007, 2008 Red Hat, Inc.
Copyright 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Red Hat, Inc.
This file is part of Cygwin.
@ -95,6 +95,7 @@ fhandler_fifo::open (int flags, mode_t)
char char_sa_buf[1024];
LPSECURITY_ATTRIBUTES sa_buf =
sec_user ((PSECURITY_ATTRIBUTES) char_sa_buf, cygheap->user.sid());
bool do_seterrno = true;
HANDLE h;
bool nonblocking_write = !!((flags & (O_WRONLY | O_NONBLOCK)) == (O_WRONLY | O_NONBLOCK));
@ -110,7 +111,10 @@ fhandler_fifo::open (int flags, mode_t)
if (h != INVALID_HANDLE_VALUE)
wait_state = fifo_ok;
else if (nonblocking_write)
set_errno (ENXIO);
{
set_errno (ENXIO);
do_seterrno = false;
}
else if ((h = cnp (PIPE_ACCESS_DUPLEX, 1)) != INVALID_HANDLE_VALUE)
{
if ((dummy_client = open_nonserver (npname, low_flags, sa_buf))
@ -130,7 +134,8 @@ fhandler_fifo::open (int flags, mode_t)
}
if (h == INVALID_HANDLE_VALUE)
{
__seterrno ();
if (do_seterrno)
__seterrno ();
res = 0;
}
else if (!setup_overlapped ())

View File

@ -43,7 +43,7 @@ details. */
changes to the DLL and is mainly informative in nature. */
#define CYGWIN_VERSION_DLL_MAJOR 1007
#define CYGWIN_VERSION_DLL_MINOR 1
#define CYGWIN_VERSION_DLL_MINOR 2
/* Major numbers before CYGWIN_VERSION_DLL_EPOCH are
incompatible. */

View File

@ -1,7 +1,7 @@
/* pipe.cc: pipe for Cygwin.
Copyright 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
2008 Hat, Inc.
2008, 2009 Hat, Inc.
This file is part of Cygwin.