OSDN Git Service

* ntdll.h (struct _FILE_COMPRESSION_INFORMATION): Align with definition
authorcorinna <corinna>
Thu, 27 Sep 2007 09:35:06 +0000 (09:35 +0000)
committercorinna <corinna>
Thu, 27 Sep 2007 09:35:06 +0000 (09:35 +0000)
in w32api / MSDN.
* fhandler_disk_file.cc (fhandler_base::fstat_helper): Accommodate
change to struct _FILE_COMPRESSION_INFORMATION.

winsup/cygwin/ChangeLog
winsup/cygwin/fhandler_disk_file.cc
winsup/cygwin/ntdll.h

index b30e468..8af5af7 100644 (file)
@@ -1,3 +1,10 @@
+2007-09-27  Corinna Vinschen  <corinna@vinschen.de>
+
+       * ntdll.h (struct _FILE_COMPRESSION_INFORMATION): Align with definition
+       in w32api / MSDN.
+       * fhandler_disk_file.cc (fhandler_base::fstat_helper): Accommodate
+       change to struct _FILE_COMPRESSION_INFORMATION.
+
 2007-09-26  Corinna Vinschen  <corinna@vinschen.de>
 
        * termios.cc (setspeed): Support new baud rates introduced 2007-02-05.
index c7c5d9f..095c779 100644 (file)
@@ -506,7 +506,8 @@ fhandler_base::fstat_helper (struct __stat64 *buf,
                                      sizeof fci, FileCompressionInformation))
     /* Otherwise we request the actual amount of bytes allocated for
        compressed and sparsed files. */
-    buf->st_blocks = (fci.CompressedSize.QuadPart + S_BLKSIZE - 1) / S_BLKSIZE;
+    buf->st_blocks = (fci.CompressedFileSize.QuadPart + S_BLKSIZE - 1)
+                    / S_BLKSIZE;
   else
     /* Otherwise compute no. of blocks from file size. */
     buf->st_blocks  = (buf->st_size + S_BLKSIZE - 1) / S_BLKSIZE;
index fa12f15..1363341 100644 (file)
@@ -651,11 +651,12 @@ typedef struct _FILE_PIPE_LOCAL_INFORMATION
 
 typedef struct _FILE_COMPRESSION_INFORMATION
 {
-  LARGE_INTEGER CompressedSize;
+  LARGE_INTEGER CompressedFileSize;
   USHORT CompressionFormat;
   UCHAR        CompressionUnitShift;
-  UCHAR Unknown;
-  UCHAR ClusterSizeShift;
+  UCHAR ChunkShift;
+  UCHAR ClusterShift;
+  UCHAR Reserved[3];
 } FILE_COMPRESSION_INFORMATION, *PFILE_COMPRESSION_INFORMATION;
 
 typedef struct _FILE_FS_DEVICE_INFORMATION