From 1aa816ec68a7ae6665c800aa81bec91deb8426e0 Mon Sep 17 00:00:00 2001 From: Jonathan Flat Date: Thu, 1 May 2025 14:07:32 -0600 Subject: [PATCH] (150128868) Restore selective nil path behavior for bridged NSURLs --- Sources/FoundationEssentials/URL/URL_Swift.swift | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/Sources/FoundationEssentials/URL/URL_Swift.swift b/Sources/FoundationEssentials/URL/URL_Swift.swift index b0ee65606..197591b6b 100644 --- a/Sources/FoundationEssentials/URL/URL_Swift.swift +++ b/Sources/FoundationEssentials/URL/URL_Swift.swift @@ -1176,12 +1176,14 @@ extension _SwiftURL { ranges.append(CFRange(location: nsRange.location, length: nsRange.length)) } - flags.insert(.hasPath) - if let pathRange = parseInfo.pathRange { - let nsRange = string._toRelativeNSRange(pathRange) - ranges.append(CFRange(location: nsRange.location, length: nsRange.length)) - } else { - ranges.append(CFRange(location: kCFNotFound, length: 0)) + if !parseInfo.path.isEmpty || parseInfo.netLocationRange?.isEmpty == false { + flags.insert(.hasPath) + if let pathRange = parseInfo.pathRange { + let nsRange = string._toRelativeNSRange(pathRange) + ranges.append(CFRange(location: nsRange.location, length: nsRange.length)) + } else { + ranges.append(CFRange(location: kCFNotFound, length: 0)) + } } if let queryRange = parseInfo.queryRange {