Title: [284651] trunk/Source/WebKit
- Revision
- 284651
- Author
- cdu...@apple.com
- Date
- 2021-10-21 15:45:19 -0700 (Thu, 21 Oct 2021)
Log Message
Call to [NSURL URLByAppendingPathComponent:] under NetworkSessionCocoa() may be inefficient
https://bugs.webkit.org/show_bug.cgi?id=232098
Reviewed by Alex Christensen.
Call [NSURL URLByAppendingPathComponent:isDirectory:] whenever possible instead of
[NSURL URLByAppendingPathComponent], as it is more efficient.
* NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(WebKit::NetworkSessionCocoa::NetworkSessionCocoa):
* UIProcess/Cocoa/WKShareSheet.mm:
(+[WKShareSheet createRandomSharingDirectoryForFile:]):
(+[WKShareSheet writeFileToShareableURL:data:temporaryDirectory:]):
Modified Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (284650 => 284651)
--- trunk/Source/WebKit/ChangeLog 2021-10-21 22:35:59 UTC (rev 284650)
+++ trunk/Source/WebKit/ChangeLog 2021-10-21 22:45:19 UTC (rev 284651)
@@ -1,3 +1,19 @@
+2021-10-21 Chris Dumez <cdu...@apple.com>
+
+ Call to [NSURL URLByAppendingPathComponent:] under NetworkSessionCocoa() may be inefficient
+ https://bugs.webkit.org/show_bug.cgi?id=232098
+
+ Reviewed by Alex Christensen.
+
+ Call [NSURL URLByAppendingPathComponent:isDirectory:] whenever possible instead of
+ [NSURL URLByAppendingPathComponent], as it is more efficient.
+
+ * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
+ (WebKit::NetworkSessionCocoa::NetworkSessionCocoa):
+ * UIProcess/Cocoa/WKShareSheet.mm:
+ (+[WKShareSheet createRandomSharingDirectoryForFile:]):
+ (+[WKShareSheet writeFileToShareableURL:data:temporaryDirectory:]):
+
2021-10-21 John Wilander <wilan...@apple.com>
PCM: Add temporary logging when isRunningTest() assertion is about to fail to be able to investigate
Modified: trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm (284650 => 284651)
--- trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm 2021-10-21 22:35:59 UTC (rev 284650)
+++ trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm 2021-10-21 22:45:19 UTC (rev 284651)
@@ -1282,7 +1282,7 @@
#if HAVE(CFNETWORK_ALTERNATIVE_SERVICE)
if (!parameters.alternativeServiceDirectory.isEmpty()) {
SandboxExtension::consumePermanently(parameters.alternativeServiceDirectoryExtensionHandle);
- configuration._alternativeServicesStorage = adoptNS([[_NSHTTPAlternativeServicesStorage alloc] initPersistentStoreWithURL:[[NSURL fileURLWithPath:parameters.alternativeServiceDirectory isDirectory:YES] URLByAppendingPathComponent:@"AlternativeService.sqlite"]]).get();
+ configuration._alternativeServicesStorage = adoptNS([[_NSHTTPAlternativeServicesStorage alloc] initPersistentStoreWithURL:[[NSURL fileURLWithPath:parameters.alternativeServiceDirectory isDirectory:YES] URLByAppendingPathComponent:@"AlternativeService.sqlite" isDirectory:NO]]).get();
}
if (parameters.http3Enabled)
configuration._allowsHTTP3 = YES;
Modified: trunk/Source/WebKit/UIProcess/Cocoa/WKShareSheet.mm (284650 => 284651)
--- trunk/Source/WebKit/UIProcess/Cocoa/WKShareSheet.mm 2021-10-21 22:35:59 UTC (rev 284650)
+++ trunk/Source/WebKit/UIProcess/Cocoa/WKShareSheet.mm 2021-10-21 22:45:19 UTC (rev 284651)
@@ -329,7 +329,7 @@
NSString *randomDirectory = createCanonicalUUIDString();
if (![randomDirectory length] || !temporaryDirectory)
return nil;
- NSURL *dataPath = [temporaryDirectory URLByAppendingPathComponent:randomDirectory];
+ NSURL *dataPath = [temporaryDirectory URLByAppendingPathComponent:randomDirectory isDirectory:YES];
if (![[NSFileManager defaultManager] createDirectoryAtURL:dataPath withIntermediateDirectories:NO attributes:nil error:nil])
return nil;
@@ -346,7 +346,7 @@
if (!temporaryDirectoryForFile)
return nil;
- NSURL *fileURL = [temporaryDirectoryForFile URLByAppendingPathComponent:fileName];
+ NSURL *fileURL = [temporaryDirectoryForFile URLByAppendingPathComponent:fileName isDirectory:NO];
if (![fileData writeToURL:fileURL options:NSDataWritingAtomic error:nil])
return nil;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes