瀏覽代碼

2008-07-06 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>

	Introduced a2_struct_stat. It is defined as `struct _stati64' if
	__MINGW32__ is defined, because under MinGW32, _stati64 is used 
and its
	second argument is of type `struct _stati64'. Otherwise it is 
defined as
	`struct stat'.
	* src/AbstractDiskWriter.cc
	* src/File.cc
	* src/File.h
	* src/a2io.h
Tatsuhiro Tsujikawa 17 年之前
父節點
當前提交
cfa808126b
共有 5 個文件被更改,包括 21 次插入8 次删除
  1. 11 0
      ChangeLog
  2. 1 1
      src/AbstractDiskWriter.cc
  3. 6 6
      src/File.cc
  4. 1 1
      src/File.h
  5. 2 0
      src/a2io.h

+ 11 - 0
ChangeLog

@@ -1,3 +1,14 @@
+2008-07-06  Tatsuhiro Tsujikawa  <tujikawa at rednoah dot com>
+
+	Introduced a2_struct_stat. It is defined as `struct _stati64' if
+	__MINGW32__ is defined, because under MinGW32, _stati64 is used and its
+	second argument is of type `struct _stati64'. Otherwise it is defined as
+	`struct stat'.
+	* src/AbstractDiskWriter.cc
+	* src/File.cc
+	* src/File.h
+	* src/a2io.h
+	
 2008-07-06  Tatsuhiro Tsujikawa  <tujikawa at rednoah dot com>
 
 	Fixed the compile error in hurd-i386

+ 1 - 1
src/AbstractDiskWriter.cc

@@ -168,7 +168,7 @@ uint64_t AbstractDiskWriter::size() const
   if(fd == -1) {
     throw DlAbortEx("File not opened.");
   }
-  struct stat fileStat;
+  a2_struct_stat fileStat;
   if(fstat(fd, &fileStat) < 0) {
     return 0;
   }

+ 6 - 6
src/File.cc

@@ -50,17 +50,17 @@ File::File(const std::string& name):name(name) {}
 
 File::~File() {}
 
-int File::fillStat(struct stat& fstat) {
+int File::fillStat(a2_struct_stat& fstat) {
   return stat(name.c_str(), &fstat);
 }
 
 bool File::exists() {
-  struct stat fstat;
+  a2_struct_stat fstat;
   return fillStat(fstat) == 0;
 }
 
 bool File::isFile() {
-  struct stat fstat;
+  a2_struct_stat fstat;
   if(fillStat(fstat) < 0) {
     return false;
   }
@@ -68,7 +68,7 @@ bool File::isFile() {
 }
 
 bool File::isDir() {
-  struct stat fstat;
+  a2_struct_stat fstat;
   if(fillStat(fstat) < 0) {
     return false;
   }
@@ -86,7 +86,7 @@ bool File::remove() {
 }
 
 uint64_t File::size() {
-  struct stat fstat;
+  a2_struct_stat fstat;
   if(fillStat(fstat) < 0) {
     return 0;
   }
@@ -122,7 +122,7 @@ bool File::mkdirs() {
 
 mode_t File::mode()
 {
-  struct stat fstat;
+  a2_struct_stat fstat;
   if(fillStat(fstat) < 0) {
     return 0;
   }

+ 1 - 1
src/File.h

@@ -51,7 +51,7 @@ private:
   /**
    * Returns the return value of stat(...)
    */
-  int fillStat(struct stat& fstat);
+  int fillStat(a2_struct_stat& fstat);
 public:
   File(const std::string& name);
   ~File();

+ 2 - 0
src/a2io.h

@@ -119,10 +119,12 @@
 # ifdef stat
 #  undef stat
 # endif // stat
+# define a2_struct_stat struct _stati64
 # define stat(path, buf)  _stati64(path, buf)
 # define tell(handle) _telli64(handle)
 # define a2mkdir(path, openMode) mkdir(path)
 #else
+# define a2_struct_stat struct stat
 # define a2mkdir(path, openMode) mkdir(path, openMode)
 #endif // __MINGW32__