Bug 219572

Summary: [WebCore] Fix build without PATH_MAX
Product: WebKit Reporter: Samuel Thibault <samuel.thibault>
Component: WebCore Misc.Assignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: darin, don.olmstead, fpizlo, Hironori.Fujii, keith_miller, mark.lam, smoley, webkit-bug-importer, youennf, ysuzuki
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
proposed fix
none
Patch
none
Patch Hironori.Fujii: review-

Description Samuel Thibault 2020-12-05 15:49:29 PST
Created attachment 415505 [details]
proposed fix

This fixes build on GNU/Hurd, which does not have a PATH_MAX limitation.
Comment 1 Samuel Thibault 2020-12-06 12:59:00 PST
Created attachment 415526 [details]
Patch
Comment 2 Don Olmstead 2020-12-07 08:25:03 PST
I feel like it'd be safer to do a check in the CMake code for realpath which would create a HAVE_REALPATH variable.

See Source/cmake/OptionsCommon.cmake for the other HAVE checks.
Comment 3 Radar WebKit Bug Importer 2020-12-07 13:51:30 PST
<rdar://problem/72062538>
Comment 4 Fujii Hironori 2020-12-07 18:02:41 PST
(In reply to Don Olmstead from comment #2)
> I feel like it'd be safer to do a check in the CMake code for realpath which
> would create a HAVE_REALPATH variable.

I think adding HAVE_REALPATH can't solve this problem.
I don't know which Unix WebKit is supporting, but Linux and FreeBSD can take NULL as the second argument of realpath, as far as I read the documents.
I think it's better to remove the old code.
Comment 5 Yusuke Suzuki 2020-12-08 12:29:56 PST
Comment on attachment 415526 [details]
Patch

Setting r- based on Hironori's comment. Could you update the patch :D ?
Comment 6 Samuel Thibault 2020-12-08 12:39:31 PST
Created attachment 415663 [details]
Patch
Comment 7 Samuel Thibault 2020-12-08 12:40:19 PST
I have done so
Comment 8 Darin Adler 2020-12-08 12:41:09 PST
This idiom occurs in other places, not just HyphenationLibHyphen.cpp. I found it in SandboxUtilities.mm, SandboxInitializationParametersCocoa.mm, AuxiliaryProcessMac.mm, FileSystemPOSIX.cpp, and StdFilesystem.cpp.

I think it’s peculiar to do this in only one place.
Comment 9 Fujii Hironori 2020-12-22 19:55:39 PST
Comment on attachment 415663 [details]
Patch

r- for comment#8.