summaryrefslogtreecommitdiffstats
path: root/win
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2013-03-19 14:59:26 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2013-03-19 14:59:26 (GMT)
commitc988bb3c5d5cc50e869497fa676dd3efac920130 (patch)
tree02dc56e7f44d3f4413283e6db05204b61ab4a8b4 /win
parent06a824d706f85d327d7318027835ae54eae11bf9 (diff)
parent2c75cac14e5195f484e885aa3c6e14dd11ce8e6d (diff)
downloadtcl-c988bb3c5d5cc50e869497fa676dd3efac920130.zip
tcl-c988bb3c5d5cc50e869497fa676dd3efac920130.tar.gz
tcl-c988bb3c5d5cc50e869497fa676dd3efac920130.tar.bz2
Handle the (unlikely) case that the file is deleted in between. Suggested by Harald Oehlmann (Thanks!)
Diffstat (limited to 'win')
-rw-r--r--win/tclWinFile.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/win/tclWinFile.c b/win/tclWinFile.c
index 528b9e5..79ba40a 100644
--- a/win/tclWinFile.c
+++ b/win/tclWinFile.c
@@ -2006,6 +2006,10 @@ NativeStat(
return -1;
}
hFind = FindFirstFile(nativePath, &ffd);
+ if (hFind == INVALID_HANDLE_VALUE) {
+ TclWinConvertError(lasterror);
+ return -1;
+ }
memcpy(&data, &ffd, sizeof(data));
FindClose(hFind);
}