diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2008-05-20 18:26:45 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2008-05-20 18:26:45 +0000 |
commit | 28259ba2ddc48dfa74c8d7cc3d1f5314007e685d (patch) | |
tree | 8d6ac311da0860d56eb445e68b22e3c90faa2da5 /winsup/cygwin/path.cc | |
parent | c44e0ba1f543b2c7f417e7d86cd034efe455abdf (diff) | |
download | cygnal-28259ba2ddc48dfa74c8d7cc3d1f5314007e685d.tar.gz cygnal-28259ba2ddc48dfa74c8d7cc3d1f5314007e685d.tar.bz2 cygnal-28259ba2ddc48dfa74c8d7cc3d1f5314007e685d.zip |
* path.cc (symlink_worker): Fix EA buffer size info given to
NtCreateFile.
(symlink_info::check_nfs_symlink): Get 64K buffer for EA buffer.
Change EA buffer size info given to NtQueryEaFile accordingly.
Diffstat (limited to 'winsup/cygwin/path.cc')
-rw-r--r-- | winsup/cygwin/path.cc | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/winsup/cygwin/path.cc b/winsup/cygwin/path.cc index fb69531db..d01b7f8a2 100644 --- a/winsup/cygwin/path.cc +++ b/winsup/cygwin/path.cc @@ -1615,7 +1615,7 @@ symlink_worker (const char *oldpath, const char *newpath, bool use_winsym, FILE_SHARE_VALID_FLAGS, FILE_CREATE, FILE_SYNCHRONOUS_IO_NONALERT | FILE_OPEN_FOR_BACKUP_INTENT, - pffei, NT_MAX_PATH); + pffei, NT_MAX_PATH * sizeof (WCHAR)); if (!NT_SUCCESS (status)) { __seterrno_from_nt_status (status); @@ -2054,10 +2054,9 @@ symlink_info::check_nfs_symlink (HANDLE h) fgei_buf.fgei.NextEntryOffset = 0; fgei_buf.fgei.EaNameLength = sizeof (NFS_SYML_TARGET) - 1; stpcpy (fgei_buf.fgei.EaName, NFS_SYML_TARGET); - pffei = (PFILE_FULL_EA_INFORMATION) tp.c_get (); - status = NtQueryEaFile (h, &io, pffei, NT_MAX_PATH, TRUE, - &fgei_buf.fgei, sizeof fgei_buf, - NULL, TRUE); + pffei = (PFILE_FULL_EA_INFORMATION) tp.w_get (); + status = NtQueryEaFile (h, &io, pffei, NT_MAX_PATH * sizeof (WCHAR), TRUE, + &fgei_buf.fgei, sizeof fgei_buf, NULL, TRUE); if (NT_SUCCESS (status) && pffei->EaValueLength > 0) { PWCHAR spath = (PWCHAR) |