diff --git a/common/cpp/src/system_io_windows.cpp b/common/cpp/src/system_io_windows.cpp
index 0252514532a3a93e9eab27ed1888c62730d8ed2f..53f29ab7aa4cd5e16ad34d96c7bbf17e825b1ad2 100644
--- a/common/cpp/src/system_io_windows.cpp
+++ b/common/cpp/src/system_io_windows.cpp
@@ -147,12 +147,12 @@ FileDescriptor SystemIO::_open(const char* filename, int posix_open_flags) const
     return fd;
 }
 
-void SystemIO::_close(FileDescriptor fd) const {
-    ::_close(fd);
+bool SystemIO::_close(FileDescriptor fd) const {
+	return ::_close(fd) == 0;
 }
 
-void SystemIO::_close_socket(SocketDescriptor fd) const {
-    ::closesocket(fd);
+bool SystemIO::_close_socket(SocketDescriptor fd) const {
+	return ::closesocket(fd) == 0;
 }
 
 ssize_t SystemIO::_read(FileDescriptor fd, void* buffer, size_t length) const {