浏览代码

correct the way of testing file mode on Windows

June 5 年之前
父节点
当前提交
727e6e4e60
共有 1 个文件被更改,包括 4 次插入0 次删除
  1. 4 0
      src/google/protobuf/compiler/importer.cc

+ 4 - 0
src/google/protobuf/compiler/importer.cc

@@ -495,7 +495,11 @@ io::ZeroCopyInputStream* DiskSourceTree::OpenDiskFile(
   do {
     ret = stat(filename.c_str(), &sb);
   } while (ret != 0 && errno == EINTR);
+#ifdef _WIN32
+  if ((sb.st_mode & _S_IFMT) == _S_IFREG) {
+#else
   if (!S_ISREG(sb.st_mode)) {
+#endif
     last_error_message_ = "Input file is not a regular file.";
     return NULL;
   }