From 214a0e67fd01131131e8f22a73899651511d3e41 Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Thu, 9 Apr 2009 17:00:35 +0000 Subject: [PATCH] * syscalls.cc (try_to_bin): Fix alignment of infobuf. --- winsup/cygwin/ChangeLog | 4 ++++ winsup/cygwin/syscalls.cc | 4 +++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 76564cdde..cd7bcf45f 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,7 @@ +2009-04-09 Corinna Vinschen + + * syscalls.cc (try_to_bin): Fix alignment of infobuf. + 2009-04-09 Corinna Vinschen * fhandler_disk_file.cc (fhandler_disk_file::fchown): Catch an 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;