This is the mail archive of the cygwin-developers@sources.redhat.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

st_blocks incorrect for files larger than 2Gbytes


Hi!

  newlib  declares  off_t  as signed long and cygwin's stat calculates
st_blocks   as

  buf->st_blocks = (buf->st_size + S_BLKSIZE-1) / S_BLKSIZE;

i.e. for file with size 2.164.854.784 bytes stat returns st_blocks=-2080187
or  big  positive value, when assigned to (unsigned long). this may be
fixed in a)newlib or b)cygwin or c)application

which way is preferable?

newlib's  comment  states  that while off_t should be target-specific,
changing this could cause too much pain.

Egor.            mailto:deo@logos-m.ru ICQ 5165414 FidoNet 2:5020/496.19



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]