diff options
| author | nijtmans@users.sourceforge.net <jan.nijtmans> | 2012-03-15 21:14:05 (GMT) |
|---|---|---|
| committer | nijtmans@users.sourceforge.net <jan.nijtmans> | 2012-03-15 21:14:05 (GMT) |
| commit | fe3d883e70f81a1803e98e176ae072cb1748e512 (patch) | |
| tree | 208a77acdb455c105e739d589128c3dd644af53e /unix/tclUnixFile.c | |
| parent | 23b4ddf7c02459809ab3a8256c02a0362dcf9f88 (diff) | |
| parent | 50df7d58f017fa63b1b1ebc733d1e3cac412fe0d (diff) | |
| download | tcl-fe3d883e70f81a1803e98e176ae072cb1748e512.zip tcl-fe3d883e70f81a1803e98e176ae072cb1748e512.tar.gz tcl-fe3d883e70f81a1803e98e176ae072cb1748e512.tar.bz2 | |
[Bug 3288345] Wrong Tcl_StatBuf used on Cygwin
Diffstat (limited to 'unix/tclUnixFile.c')
| -rw-r--r-- | unix/tclUnixFile.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/unix/tclUnixFile.c b/unix/tclUnixFile.c index c8afeb2..fe3c608 100644 --- a/unix/tclUnixFile.c +++ b/unix/tclUnixFile.c @@ -1178,6 +1178,40 @@ TclpUtime( { return utime(Tcl_FSGetNativePath(pathPtr), tval); } +#ifdef __CYGWIN__ +int TclOSstat(const char *name, Tcl_StatBuf *statBuf) { + struct stat buf; + int result = stat(name, &buf); + statBuf->st_mode = buf.st_mode; + statBuf->st_ino = buf.st_ino; + statBuf->st_dev = buf.st_dev; + statBuf->st_rdev = buf.st_rdev; + statBuf->st_nlink = buf.st_nlink; + statBuf->st_uid = buf.st_uid; + statBuf->st_gid = buf.st_gid; + statBuf->st_size = buf.st_size; + statBuf->st_atime = buf.st_atime; + statBuf->st_mtime = buf.st_mtime; + statBuf->st_ctime = buf.st_ctime; + return result; +} +int TclOSlstat(const char *name, Tcl_StatBuf *statBuf) { + struct stat buf; + int result = lstat(name, &buf); + statBuf->st_mode = buf.st_mode; + statBuf->st_ino = buf.st_ino; + statBuf->st_dev = buf.st_dev; + statBuf->st_rdev = buf.st_rdev; + statBuf->st_nlink = buf.st_nlink; + statBuf->st_uid = buf.st_uid; + statBuf->st_gid = buf.st_gid; + statBuf->st_size = buf.st_size; + statBuf->st_atime = buf.st_atime; + statBuf->st_mtime = buf.st_mtime; + statBuf->st_ctime = buf.st_ctime; + return result; +} +#endif /* * Local Variables: |
