[PATCH 2/2] ntdll: Replace fstat and lstat with fstatat in get_file_info.

Chip Davis cdavis at codeweavers.com
Mon Aug 30 14:43:47 CDT 2021


August 30, 2021 2:32 PM, "Erich E. Hoover" <erich.e.hoover at gmail.com> wrote:

> On Sat, Aug 28, 2021 at 11:40 PM Chip Davis <cdavis at codeweavers.com> wrote:
> 
>> August 29, 2021 12:18 AM, "Dean Greer" <gcenx83 at gmail.com> wrote:
>> Are you referring to a runtime issue?, since a later SDK has been needed from wine-5.8.
>> Yes. That function will be weak-linked, which means that on 10.8 and 10.9 it will be NULL. Calling
>> it without checking for NULL will cause a crash on those systems.
> 
> I was obviously expecting this to not be a problem since fstatat is
> already used in fd_is_mount_point(), is there an existing example of
> how we like to work around a function that's weak-linked and possibly
> NULL?

See lines 92-96 of dlls/ntdll/unix/sync.c. Though in this case, I don't think that method will be acceptable here, since mach_continuous_time() is unique to macOS and is used in macOS-specific code, while fstatat(2) is a standard POSIX function used in code compiled everywhere.


Chip



More information about the wine-devel mailing list