diff options
-rw-r--r-- | winsup/cygwin/ChangeLog | 4 | ||||
-rw-r--r-- | winsup/cygwin/syscalls.cc | 4 |
2 files changed, 7 insertions, 1 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 76564cdde..cd7bcf45f 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,5 +1,9 @@ 2009-04-09 Corinna Vinschen <corinna@vinschen.de> + * syscalls.cc (try_to_bin): Fix alignment of infobuf. + +2009-04-09 Corinna Vinschen <corinna@vinschen.de> + * fhandler_disk_file.cc (fhandler_disk_file::fchown): Catch an error when changing the user account on a standalone Samba server. Explain why. diff --git a/winsup/cygwin/syscalls.cc b/winsup/cygwin/syscalls.cc index 7950299ca..6198bef98 100644 --- a/winsup/cygwin/syscalls.cc +++ b/winsup/cygwin/syscalls.cc @@ -153,7 +153,9 @@ try_to_bin (path_conv &pc, HANDLE &fh, ACCESS_MASK access) PFILE_NAME_INFORMATION pfni; PFILE_INTERNAL_INFORMATION pfii; PFILE_RENAME_INFORMATION pfri; - BYTE infobuf[sizeof (FILE_NAME_INFORMATION ) + 32767 * sizeof (WCHAR)]; + /* Enforce alignment for multi-purpose infobuf buffer */ + BYTE infobuf[sizeof (FILE_NAME_INFORMATION) + 32767 * sizeof (WCHAR)] + __attribute__ ((aligned)); FILE_DISPOSITION_INFORMATION disp = { TRUE }; pfni = (PFILE_NAME_INFORMATION) infobuf; |