* include/sys/cygwin.h (CW_SETERRNO): Define.
* external.cc (CW_SETERRNO): Implement. * include/cygwin/version.h: Bump CYGWIN_VERSION_API_MINOR to 192 to reflect the above change. * path.cc (path_prefix_p): Treat X: as equivalent to x:. * mkglobals_h: Remove unneeded #define. * spawn.cc (spawn_guts): Avoid overly wordy initialization to zero.
This commit is contained in:
parent
086dc27fec
commit
d95d8c5393
@ -1,3 +1,16 @@
|
|||||||
|
2009-01-09 Christopher Faylor <me+cygwin@cgf.cx>
|
||||||
|
|
||||||
|
* include/sys/cygwin.h (CW_SETERRNO): Define.
|
||||||
|
* external.cc (CW_SETERRNO): Implement.
|
||||||
|
* include/cygwin/version.h: Bump CYGWIN_VERSION_API_MINOR to 192 to
|
||||||
|
reflect the above change.
|
||||||
|
|
||||||
|
* path.cc (path_prefix_p): Treat X: as equivalent to x:.
|
||||||
|
|
||||||
|
* mkglobals_h: Remove unneeded #define.
|
||||||
|
|
||||||
|
* spawn.cc (spawn_guts): Avoid overly wordy initialization to zero.
|
||||||
|
|
||||||
2009-01-08 Corinna Vinschen <corinna@vinschen.de>
|
2009-01-08 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
* libc/fts.c (fts_build): Use DT_DIR case on Cygwin.
|
* libc/fts.c (fts_build): Use DT_DIR case on Cygwin.
|
||||||
|
@ -363,6 +363,13 @@ cygwin_internal (cygwin_getinfo_types t, ...)
|
|||||||
const char *passwd = va_arg (arg, const char *);
|
const char *passwd = va_arg (arg, const char *);
|
||||||
return setlsapwd (passwd);
|
return setlsapwd (passwd);
|
||||||
}
|
}
|
||||||
|
case CW_SETERRNO:
|
||||||
|
{
|
||||||
|
const char *file = va_arg (arg, const char *);
|
||||||
|
int line = va_arg (arg, int);
|
||||||
|
seterrno(file, line);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
|
@ -340,12 +340,13 @@ details. */
|
|||||||
190: Export fgetwc, fgetws, fputwc, fputws, fwide, getwc, getwchar,
|
190: Export fgetwc, fgetws, fputwc, fputws, fwide, getwc, getwchar,
|
||||||
putwc, putwchar, ungetwc.
|
putwc, putwchar, ungetwc.
|
||||||
191: Export glob_pattern_p
|
191: Export glob_pattern_p
|
||||||
|
192: CW_SETERRNO added
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* Note that we forgot to bump the api for ualarm, strtoll, strtoull */
|
/* Note that we forgot to bump the api for ualarm, strtoll, strtoull */
|
||||||
|
|
||||||
#define CYGWIN_VERSION_API_MAJOR 0
|
#define CYGWIN_VERSION_API_MAJOR 0
|
||||||
#define CYGWIN_VERSION_API_MINOR 191
|
#define CYGWIN_VERSION_API_MINOR 192
|
||||||
|
|
||||||
/* There is also a compatibity version number associated with the
|
/* There is also a compatibity version number associated with the
|
||||||
shared memory regions. It is incremented when incompatible
|
shared memory regions. It is incremented when incompatible
|
||||||
|
@ -141,7 +141,8 @@ typedef enum
|
|||||||
CW_SYNC_WINENV,
|
CW_SYNC_WINENV,
|
||||||
CW_CYGTLS_PADSIZE,
|
CW_CYGTLS_PADSIZE,
|
||||||
CW_SET_DOS_FILE_WARNING,
|
CW_SET_DOS_FILE_WARNING,
|
||||||
CW_SET_PRIV_KEY
|
CW_SET_PRIV_KEY,
|
||||||
|
CW_SETERRNO
|
||||||
} cygwin_getinfo_types;
|
} cygwin_getinfo_types;
|
||||||
|
|
||||||
#define CW_NEXTPID 0x80000000 /* or with pid to get next one */
|
#define CW_NEXTPID 0x80000000 /* or with pid to get next one */
|
||||||
|
@ -18,7 +18,6 @@ print <<PRELUDE,$_,"#endif /*_GLOBALS_H*/\n";
|
|||||||
/* $target - Autogenerated from @argv. Look there for comments. */
|
/* $target - Autogenerated from @argv. Look there for comments. */
|
||||||
|
|
||||||
#ifndef _GLOBALS_H
|
#ifndef _GLOBALS_H
|
||||||
#define _GLOBALS_H 1
|
|
||||||
PRELUDE
|
PRELUDE
|
||||||
close $target_fd;
|
close $target_fd;
|
||||||
sub munge($) {
|
sub munge($) {
|
||||||
|
@ -169,8 +169,20 @@ path_prefix_p (const char *path1, const char *path2, int len1,
|
|||||||
return isdirsep (path2[0]) && !isdirsep (path2[1]);
|
return isdirsep (path2[0]) && !isdirsep (path2[1]);
|
||||||
|
|
||||||
if (isdirsep (path2[len1]) || path2[len1] == 0 || path1[len1 - 1] == ':')
|
if (isdirsep (path2[len1]) || path2[len1] == 0 || path1[len1 - 1] == ':')
|
||||||
|
{
|
||||||
|
if (len1 < 2 || (path1[1] != ':') || (path2[1] != ':'))
|
||||||
|
/* nothing */;
|
||||||
|
else if (tolower (*path1) != tolower(*path2))
|
||||||
|
return 0;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
path1 += 2;
|
||||||
|
path2 += 2;
|
||||||
|
len1 -= 2;
|
||||||
|
}
|
||||||
return caseinsensitive ? strncasematch (path1, path2, len1)
|
return caseinsensitive ? strncasematch (path1, path2, len1)
|
||||||
: !strncmp (path1, path2, len1);
|
: !strncmp (path1, path2, len1);
|
||||||
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -310,8 +310,7 @@ spawn_guts (const char *prog_arg, const char *const *argv,
|
|||||||
cygheap_exec_info *moreinfo;
|
cygheap_exec_info *moreinfo;
|
||||||
|
|
||||||
bool null_app_name = false;
|
bool null_app_name = false;
|
||||||
STARTUPINFOW si = {0, NULL, NULL, NULL, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL,
|
STARTUPINFOW si = {};
|
||||||
NULL, NULL, NULL};
|
|
||||||
int looped = 0;
|
int looped = 0;
|
||||||
HANDLE orig_wr_proc_pipe = NULL;
|
HANDLE orig_wr_proc_pipe = NULL;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user