Summary: | Simplify accesses to SystemVersion.plist | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | David Quesada <david_quesada> | ||||
Component: | WebKit2 | Assignee: | Nobody <webkit-unassigned> | ||||
Status: | RESOLVED FIXED | ||||||
Severity: | Normal | CC: | darin, ews-watchlist, hi, joepeck, kkinnunen, pangle, webkit-bug-importer | ||||
Priority: | P2 | Keywords: | InRadar | ||||
Version: | WebKit Nightly Build | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Attachments: |
|
Description
David Quesada
2021-12-14 12:38:57 PST
Created attachment 447149 [details]
Patch
Committed r288451 (246340@main): <https://commits.webkit.org/246340@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 447149 [details]. Comment on attachment 447149 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=447149&action=review > Source/WebCore/platform/cocoa/SystemVersion.mm:27 > #import "SystemVersion.h" > +#import <pal/spi/cf/CFUtilitiesSPI.h> WebKit coding style says there should be a blank line after the file’s own header before the other includes. > Source/WebCore/platform/cocoa/SystemVersion.mm:35 > + CFStringRef productVersion = static_cast<CFStringRef>(CFDictionaryGetValue(systemVersionDictionary.get(), _kCFSystemVersionProductVersionKey)); Typically in newly-written WebKit code we would use auto for the type rather than repeating the same type in both on the left and in the static_cast, and either checked_cf_cast or dynamic_cf_cast instead of static_cast. > Source/WebCore/platform/cocoa/SystemVersion.mm:36 > + return adoptNS([(__bridge NSString *)productVersion copy]); WebKit has bridge_cast for this: return adoptNS([bridge_cast(productVersion) copy]); > Source/WebKit/UIProcess/Inspector/mac/WebInspectorUIProxyMac.mm:793 > + NSDictionary *plist = adoptCF(_CFCopySystemVersionDictionary()).bridgingAutorelease(); We’d like to avoid introducing any autorelease, and there’s no need for it here, we can have a RetainPtr local variable. auto plistCF = adoptCF(_CFCopySystemVersionDictionary()); auto plist = bridge_cast(plistCF.get()); > Source/WebKit/UIProcess/Inspector/mac/WebInspectorUIProxyMac.mm:799 > + result.targetBuildVersion = plist[static_cast<NSString *>(_kCFSystemVersionBuildVersionKey)]; > + result.targetProductVersion = plist[static_cast<NSString *>(_kCFSystemVersionProductUserVisibleVersionKey)]; bridge_cast(_kCFSystemVersionBuildVersionKey) bridge_cast(_kCFSystemVersionProductUserVisibleVersionKey) |