From b75971ef8a9ea404cd31d553634d6d1d46159b59 Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Thu, 27 Sep 2007 09:35:06 +0000 Subject: [PATCH] * 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. --- winsup/cygwin/ChangeLog | 7 +++++++ winsup/cygwin/fhandler_disk_file.cc | 3 ++- winsup/cygwin/ntdll.h | 7 ++++--- 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index b30e4680b..8af5af788 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,10 @@ +2007-09-27 Corinna Vinschen + + * 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 * termios.cc (setspeed): Support new baud rates introduced 2007-02-05. diff --git a/winsup/cygwin/fhandler_disk_file.cc b/winsup/cygwin/fhandler_disk_file.cc index c7c5d9f23..095c779e8 100644 --- a/winsup/cygwin/fhandler_disk_file.cc +++ b/winsup/cygwin/fhandler_disk_file.cc @@ -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; diff --git a/winsup/cygwin/ntdll.h b/winsup/cygwin/ntdll.h index fa12f15f6..136334124 100644 --- a/winsup/cygwin/ntdll.h +++ b/winsup/cygwin/ntdll.h @@ -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