aboutsummaryrefslogtreecommitdiff
path: root/src/os.cpp
diff options
context:
space:
mode:
authorBen Noordhuis <info@bnoordhuis.nl>2019-04-13 12:31:45 +0200
committerBen Noordhuis <info@bnoordhuis.nl>2019-04-13 12:31:49 +0200
commitea5518f69edc51e8e70c2c4d4c4daa3ad9bcb242 (patch)
treeb1b34290531dff64b2dde087a1230a13eacf4b50 /src/os.cpp
parent6284a4c534771797406ceb945e5b7985d591d62b (diff)
downloadzig-ea5518f69edc51e8e70c2c4d4c4daa3ad9bcb242.tar.gz
zig-ea5518f69edc51e8e70c2c4d4c4daa3ad9bcb242.zip
make os_file_close poison file handle after close
This helps track down use-after-close bugs.
Diffstat (limited to 'src/os.cpp')
-rw-r--r--src/os.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/os.cpp b/src/os.cpp
index 470d222307..60c66908cc 100644
--- a/src/os.cpp
+++ b/src/os.cpp
@@ -2081,11 +2081,13 @@ Error os_file_overwrite(OsFile file, Buf *contents) {
#endif
}
-void os_file_close(OsFile file) {
+void os_file_close(OsFile *file) {
#if defined(ZIG_OS_WINDOWS)
- CloseHandle(file);
+ CloseHandle(*file);
+ *file = NULL;
#else
- close(file);
+ close(*file);
+ *file = -1;
#endif
}