win: Call _close before close file handle
authorCheng Zhao <zcbenz@gmail.com>
Thu, 28 Jan 2016 14:38:53 +0000 (22:38 +0800)
committerCheng Zhao <zcbenz@gmail.com>
Thu, 28 Jan 2016 14:38:53 +0000 (22:38 +0800)
Fix #4258.

atom/common/asar/archive.cc

index d6abf1c..7527932 100644 (file)
@@ -130,14 +130,16 @@ Archive::Archive(const base::FilePath& path)
 
 Archive::~Archive() {
 #if defined(OS_WIN)
-  file_.Close();
-  _close(fd_);
+  if (fd_ != -1)
+    _close(fd_);
 #endif
 }
 
 bool Archive::Init() {
-  if (!file_.IsValid())
+  if (!file_.IsValid()) {
+    LOG(ERROR) << base::File::ErrorToString(file_.error_details());
     return false;
+  }
 
   std::vector<char> buf;
   int len;