https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=4c79da8017946147ab128ced1d74907ad0448603
commit 4c79da8017946147ab128ced1d74907ad0448603 Author: Michael Haubenwallner <[email protected]> Date: Tue Apr 30 16:14:09 2019 +0200 Cygwin: dll_list: drop FILE_BASIC_INFORMATION Querying FILE_BASIC_INFORMATION is needless since using win pid+threadid for forkables dirname rather than newest last write time. Diff: --- winsup/cygwin/dll_init.cc | 1 - winsup/cygwin/dll_init.h | 1 - winsup/cygwin/forkable.cc | 7 +++---- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/winsup/cygwin/dll_init.cc b/winsup/cygwin/dll_init.cc index 4baa48d..28f4e53 100644 --- a/winsup/cygwin/dll_init.cc +++ b/winsup/cygwin/dll_init.cc @@ -372,7 +372,6 @@ dll_list::alloc (HINSTANCE h, per_process *p, dll_type type) d->image_size = ((pefile*)h)->optional_hdr ()->SizeOfImage; d->preferred_base = (void*) ((pefile*)h)->optional_hdr()->ImageBase; d->type = type; - d->fbi.FileAttributes = INVALID_FILE_ATTRIBUTES; d->fii.IndexNumber.QuadPart = -1LL; if (!forkntsize) d->forkable_ntname = NULL; diff --git a/winsup/cygwin/dll_init.h b/winsup/cygwin/dll_init.h index c4a133f..0a97496 100644 --- a/winsup/cygwin/dll_init.h +++ b/winsup/cygwin/dll_init.h @@ -59,7 +59,6 @@ struct dll DWORD image_size; void* preferred_base; PWCHAR modname; - FILE_BASIC_INFORMATION fbi; FILE_INTERNAL_INFORMATION fii; PWCHAR forkable_ntname; WCHAR ntname[1]; /* must be the last data member */ diff --git a/winsup/cygwin/forkable.cc b/winsup/cygwin/forkable.cc index 4580610..30833c4 100644 --- a/winsup/cygwin/forkable.cc +++ b/winsup/cygwin/forkable.cc @@ -158,7 +158,7 @@ rmdirs (WCHAR ntmaxpathbuf[NT_MAX_PATH]) static bool stat_real_file_once (dll *d) { - if (d->fbi.FileAttributes != INVALID_FILE_ATTRIBUTES) + if (d->fii.IndexNumber.QuadPart != -1LL) return true; tmp_pathbuf tp; @@ -194,13 +194,12 @@ stat_real_file_once (dll *d) if (fhandle == INVALID_HANDLE_VALUE) return false; - if (!dll_list::read_fii (fhandle, &d->fii) || - !dll_list::read_fbi (fhandle, &d->fbi)) + if (!dll_list::read_fii (fhandle, &d->fii)) system_printf ("WARNING: Unable to read real file attributes for %W", pmsi1->SectionFileName.Buffer); NtClose (fhandle); - return d->fbi.FileAttributes != INVALID_FILE_ATTRIBUTES; + return d->fii.IndexNumber.QuadPart != -1LL; } /* easy use of NtOpenFile */
