mirror of
git://sourceware.org/git/newlib-cygwin.git
synced 2025-01-30 02:50:25 +08:00
* cygwin.din (get_current_dir_name): Export.
* path.cc (get_current_dir_name): New function. * posix.sgml (std-gnu): Add get_current_dir_name. * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
This commit is contained in:
parent
d27d202f56
commit
0b5355f17c
@ -0,0 +1,6 @@
|
||||
2012-01-01 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
|
||||
|
||||
* cygwin.din (get_current_dir_name): Export.
|
||||
* path.cc (get_current_dir_name): New function.
|
||||
* posix.sgml (std-gnu): Add get_current_dir_name.
|
||||
* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
|
@ -672,6 +672,7 @@ _gcvt = gcvt SIGFE
|
||||
gcvtf SIGFE
|
||||
_gcvtf = gcvtf SIGFE
|
||||
get_avphys_pages SIGFE
|
||||
get_current_dir_name SIGFE
|
||||
get_nprocs SIGFE
|
||||
get_nprocs_conf SIGFE
|
||||
get_osfhandle SIGFE
|
||||
|
@ -426,12 +426,13 @@ details. */
|
||||
255: Export ptsname_r.
|
||||
256: Add CW_ALLOC_DRIVE_MAP, CW_MAP_DRIVE_MAP, CW_FREE_DRIVE_MAP.
|
||||
257: Export getpt.
|
||||
258: Export get_current_dir_name.
|
||||
*/
|
||||
|
||||
/* Note that we forgot to bump the api for ualarm, strtoll, strtoull */
|
||||
|
||||
#define CYGWIN_VERSION_API_MAJOR 0
|
||||
#define CYGWIN_VERSION_API_MINOR 257
|
||||
#define CYGWIN_VERSION_API_MINOR 258
|
||||
|
||||
/* There is also a compatibity version number associated with the
|
||||
shared memory regions. It is incremented when incompatible
|
||||
|
@ -2855,6 +2855,27 @@ getwd (char *buf)
|
||||
return getcwd (buf, PATH_MAX + 1); /*Per SuSv3!*/
|
||||
}
|
||||
|
||||
extern "C" char *
|
||||
get_current_dir_name (void)
|
||||
{
|
||||
char *pwd = getenv ("PWD");
|
||||
char *cwd = getcwd (NULL, 0);
|
||||
|
||||
if (pwd)
|
||||
{
|
||||
struct __stat64 pwdbuf, cwdbuf;
|
||||
stat64 (pwd, &pwdbuf);
|
||||
stat64 (cwd, &cwdbuf);
|
||||
if ((pwdbuf.st_dev == cwdbuf.st_dev) && (pwdbuf.st_ino == cwdbuf.st_ino))
|
||||
{
|
||||
cwd = (char *) malloc (strlen (pwd) + 1);
|
||||
strcpy (cwd, pwd);
|
||||
}
|
||||
}
|
||||
|
||||
return cwd;
|
||||
}
|
||||
|
||||
/* chdir: POSIX 5.2.1.1 */
|
||||
extern "C" int
|
||||
chdir (const char *in_dir)
|
||||
|
@ -1111,6 +1111,7 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).</para>
|
||||
fremovexattr
|
||||
fsetxattr
|
||||
get_avphys_pages
|
||||
get_current_dir_name
|
||||
get_phys_pages
|
||||
get_nprocs
|
||||
get_nprocs_conf
|
||||
|
Loading…
x
Reference in New Issue
Block a user