<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[170730] trunk/Source</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/170730">170730</a></dd>
<dt>Author</dt> <dd>mrowe@apple.com</dd>
<dt>Date</dt> <dd>2014-07-02 15:38:41 -0700 (Wed, 02 Jul 2014)</dd>
</dl>
<h3>Log Message</h3>
<pre><https://webkit.org/b/134521> iOS should use shared code to determine the system marketing version
Reviewed by Simon Fraser.
Source/WebCore:
* WebCore.xcodeproj/project.pbxproj: Add the new files, and sort the groups they're in.
* page/cocoa/UserAgent.h: Copied from Source/WebCore/page/mac/UserAgent.h.
* page/cocoa/UserAgent.mm: Renamed from Source/WebCore/page/mac/UserAgent.h.
Move systemMarketingVersionForUserAgentString to a location where it can be shared between
Mac and iOS.
* page/ios/UserAgentIOS.mm:
(WebCore::standardUserAgentWithApplicationName): Switch to systemMarketingVersionForUserAgentString.
* page/mac/UserAgentMac.mm:
* platform/cocoa/SystemVersion.h: Renamed from Source/WebCore/platform/mac/SystemVersionMac.h.
* platform/cocoa/SystemVersion.mm: Renamed from Source/WebCore/platform/mac/SystemVersionMac.mm.
Move to a location that makes it clear this is shared between Mac and iOS. Enable the modern Mac
codepath for iOS as well.
Source/WebKit2:
* Shared/ios/ChildProcessIOS.mm: Update #import.
* Shared/mac/ChildProcessMac.mm: Ditto.</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreWebCorexcodeprojprojectpbxproj">trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj</a></li>
<li><a href="#trunkSourceWebCorepageiosUserAgentIOSmm">trunk/Source/WebCore/page/ios/UserAgentIOS.mm</a></li>
<li><a href="#trunkSourceWebCorepagemacUserAgentMacmm">trunk/Source/WebCore/page/mac/UserAgentMac.mm</a></li>
<li><a href="#trunkSourceWebKit2ChangeLog">trunk/Source/WebKit2/ChangeLog</a></li>
<li><a href="#trunkSourceWebKit2SharediosChildProcessIOSmm">trunk/Source/WebKit2/Shared/ios/ChildProcessIOS.mm</a></li>
<li><a href="#trunkSourceWebKit2SharedmacChildProcessMacmm">trunk/Source/WebKit2/Shared/mac/ChildProcessMac.mm</a></li>
</ul>
<h3>Added Paths</h3>
<ul>
<li>trunk/Source/WebCore/page/cocoa/</li>
<li><a href="#trunkSourceWebCorepagecocoaUserAgenth">trunk/Source/WebCore/page/cocoa/UserAgent.h</a></li>
<li><a href="#trunkSourceWebCorepagecocoaUserAgentmm">trunk/Source/WebCore/page/cocoa/UserAgent.mm</a></li>
<li><a href="#trunkSourceWebCoreplatformcocoaSystemVersionh">trunk/Source/WebCore/platform/cocoa/SystemVersion.h</a></li>
<li><a href="#trunkSourceWebCoreplatformcocoaSystemVersionmm">trunk/Source/WebCore/platform/cocoa/SystemVersion.mm</a></li>
</ul>
<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkSourceWebCorepagemacUserAgenth">trunk/Source/WebCore/page/mac/UserAgent.h</a></li>
<li><a href="#trunkSourceWebCoreplatformmacSystemVersionMach">trunk/Source/WebCore/platform/mac/SystemVersionMac.h</a></li>
<li><a href="#trunkSourceWebCoreplatformmacSystemVersionMacmm">trunk/Source/WebCore/platform/mac/SystemVersionMac.mm</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (170729 => 170730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2014-07-02 22:34:43 UTC (rev 170729)
+++ trunk/Source/WebCore/ChangeLog        2014-07-02 22:38:41 UTC (rev 170730)
</span><span class="lines">@@ -1,3 +1,22 @@
</span><ins>+2014-07-02 Mark Rowe <mrowe@apple.com>
+
+ <https://webkit.org/b/134521> iOS should use shared code to determine the system marketing version
+
+ Reviewed by Simon Fraser.
+
+ * WebCore.xcodeproj/project.pbxproj: Add the new files, and sort the groups they're in.
+ * page/cocoa/UserAgent.h: Copied from Source/WebCore/page/mac/UserAgent.h.
+ * page/cocoa/UserAgent.mm: Renamed from Source/WebCore/page/mac/UserAgent.h.
+ Move systemMarketingVersionForUserAgentString to a location where it can be shared between
+ Mac and iOS.
+ * page/ios/UserAgentIOS.mm:
+ (WebCore::standardUserAgentWithApplicationName): Switch to systemMarketingVersionForUserAgentString.
+ * page/mac/UserAgentMac.mm:
+ * platform/cocoa/SystemVersion.h: Renamed from Source/WebCore/platform/mac/SystemVersionMac.h.
+ * platform/cocoa/SystemVersion.mm: Renamed from Source/WebCore/platform/mac/SystemVersionMac.mm.
+ Move to a location that makes it clear this is shared between Mac and iOS. Enable the modern Mac
+ codepath for iOS as well.
+
</ins><span class="cx"> 2014-07-02 Anders Carlsson <andersca@apple.com>
</span><span class="cx">
</span><span class="cx"> Remove keyed coding from FormData
</span></span></pre></div>
<a id="trunkSourceWebCoreWebCorexcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (170729 => 170730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2014-07-02 22:34:43 UTC (rev 170729)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2014-07-02 22:38:41 UTC (rev 170730)
</span><span class="lines">@@ -2101,6 +2101,9 @@
</span><span class="cx">                 5CFC4350192409E300A0D3B5 /* PointerLockController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5CFC434E192406A900A0D3B5 /* PointerLockController.cpp */; };
</span><span class="cx">                 5D21A80213ECE5DF00BB7064 /* WebVTTParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5D21A80013ECE5DF00BB7064 /* WebVTTParser.cpp */; };
</span><span class="cx">                 5D21A80313ECE5DF00BB7064 /* WebVTTParser.h in Headers */ = {isa = PBXBuildFile; fileRef = 5D21A80113ECE5DF00BB7064 /* WebVTTParser.h */; };
</span><ins>+                5D5975B319635F1100D00878 /* SystemVersion.h in Headers */ = {isa = PBXBuildFile; fileRef = 5D5975B119635F1100D00878 /* SystemVersion.h */; settings = {ATTRIBUTES = (Private, ); }; };
+                5D5975B419635F1100D00878 /* SystemVersion.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5D5975B219635F1100D00878 /* SystemVersion.mm */; };
+                5D5975B71963637B00D00878 /* UserAgent.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5D5975B61963637B00D00878 /* UserAgent.mm */; };
</ins><span class="cx">                 5D874F130D161D3200796C3B /* NetscapePlugInStreamLoader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93E227DD0AF589AD00D48324 /* NetscapePlugInStreamLoader.cpp */; };
</span><span class="cx">                 5D87BB8311E3ED8600702B6F /* ExportFileGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5D87BB8211E3ED8600702B6F /* ExportFileGenerator.cpp */; };
</span><span class="cx">                 5D8C4DBF1428222C0026CE72 /* DisplaySleepDisablerCocoa.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5D8C4DBD1428222C0026CE72 /* DisplaySleepDisablerCocoa.cpp */; };
</span><span class="lines">@@ -2109,8 +2112,6 @@
</span><span class="cx">                 5D925B680F64D4DD00B847F0 /* ScrollBehavior.h in Headers */ = {isa = PBXBuildFile; fileRef = 5D925B660F64D4DD00B847F0 /* ScrollBehavior.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 5DA5E0FC102B953800088CF9 /* JSWebSocket.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5DA5E0FA102B953800088CF9 /* JSWebSocket.cpp */; };
</span><span class="cx">                 5DA5E0FD102B953800088CF9 /* JSWebSocket.h in Headers */ = {isa = PBXBuildFile; fileRef = 5DA5E0FB102B953800088CF9 /* JSWebSocket.h */; };
</span><del>-                5DA97ECD168E787B000E3676 /* SystemVersionMac.h in Headers */ = {isa = PBXBuildFile; fileRef = 5DA97ECB168E787B000E3676 /* SystemVersionMac.h */; settings = {ATTRIBUTES = (Private, ); }; };
-                5DA97ECE168E787B000E3676 /* SystemVersionMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5DA97ECC168E787B000E3676 /* SystemVersionMac.mm */; };
</del><span class="cx">                 5DB1BC6A10715A6400EFAA49 /* TransformSource.h in Headers */ = {isa = PBXBuildFile; fileRef = 5DB1BC6810715A6400EFAA49 /* TransformSource.h */; };
</span><span class="cx">                 5DB1BC6B10715A6400EFAA49 /* TransformSourceLibxslt.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5DB1BC6910715A6400EFAA49 /* TransformSourceLibxslt.cpp */; };
</span><span class="cx">                 5DF7F5C20F01F92A00526B4B /* CSSPropertyNames.h in Copy Generated Headers */ = {isa = PBXBuildFile; fileRef = 656580EF09D12B20000E61D7 /* CSSPropertyNames.h */; };
</span><span class="lines">@@ -9219,6 +9220,9 @@
</span><span class="cx">                 5D21A80013ECE5DF00BB7064 /* WebVTTParser.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebVTTParser.cpp; sourceTree = "<group>"; };
</span><span class="cx">                 5D21A80113ECE5DF00BB7064 /* WebVTTParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebVTTParser.h; sourceTree = "<group>"; };
</span><span class="cx">                 5D4B8C5211E52C8B00BBB62F /* WebCore.exp.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = WebCore.exp.in; sourceTree = "<group>"; };
</span><ins>+                5D5975B119635F1100D00878 /* SystemVersion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SystemVersion.h; sourceTree = "<group>"; };
+                5D5975B219635F1100D00878 /* SystemVersion.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SystemVersion.mm; sourceTree = "<group>"; };
+                5D5975B61963637B00D00878 /* UserAgent.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = UserAgent.mm; sourceTree = "<group>"; };
</ins><span class="cx">                 5D87BB4F11E3EAEB00702B6F /* WebCoreExportFileGenerator */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = WebCoreExportFileGenerator; sourceTree = BUILT_PRODUCTS_DIR; };
</span><span class="cx">                 5D87BB8211E3ED8600702B6F /* ExportFileGenerator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ExportFileGenerator.cpp; path = DerivedSources/WebCore/ExportFileGenerator.cpp; sourceTree = BUILT_PRODUCTS_DIR; };
</span><span class="cx">                 5D8C4DBD1428222C0026CE72 /* DisplaySleepDisablerCocoa.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DisplaySleepDisablerCocoa.cpp; sourceTree = "<group>"; };
</span><span class="lines">@@ -9227,8 +9231,6 @@
</span><span class="cx">                 5D925B660F64D4DD00B847F0 /* ScrollBehavior.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScrollBehavior.h; sourceTree = "<group>"; };
</span><span class="cx">                 5DA5E0FA102B953800088CF9 /* JSWebSocket.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSWebSocket.cpp; sourceTree = "<group>"; };
</span><span class="cx">                 5DA5E0FB102B953800088CF9 /* JSWebSocket.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSWebSocket.h; sourceTree = "<group>"; };
</span><del>-                5DA97ECB168E787B000E3676 /* SystemVersionMac.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SystemVersionMac.h; sourceTree = "<group>"; };
-                5DA97ECC168E787B000E3676 /* SystemVersionMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SystemVersionMac.mm; sourceTree = "<group>"; };
</del><span class="cx">                 5DB1BC6810715A6400EFAA49 /* TransformSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TransformSource.h; sourceTree = "<group>"; };
</span><span class="cx">                 5DB1BC6910715A6400EFAA49 /* TransformSourceLibxslt.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TransformSourceLibxslt.cpp; sourceTree = "<group>"; };
</span><span class="cx">                 5DFEBAB618592B6D00C75BEB /* WebKitAvailability.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebKitAvailability.h; sourceTree = "<group>"; };
</span><span class="lines">@@ -16160,6 +16162,15 @@
</span><span class="cx">                         path = mock;
</span><span class="cx">                         sourceTree = "<group>";
</span><span class="cx">                 };
</span><ins>+                5D5975B5196362BE00D00878 /* cocoa */ = {
+                        isa = PBXGroup;
+                        children = (
+                                26255F0118878E110006E1FD /* UserAgent.h */,
+                                5D5975B61963637B00D00878 /* UserAgent.mm */,
+                        );
+                        path = cocoa;
+                        sourceTree = "<group>";
+                };
</ins><span class="cx">                 5DA5E0F9102B950400088CF9 /* WebSockets */ = {
</span><span class="cx">                         isa = PBXGroup;
</span><span class="cx">                         children = (
</span><span class="lines">@@ -16450,8 +16461,6 @@
</span><span class="cx">                                 93B2D8170F9920EE006AE6B2 /* SuddenTermination.mm */,
</span><span class="cx">                                 CDA07FBF18E0A22B004699FA /* SystemSleepListenerMac.mm */,
</span><span class="cx">                                 CDA07FC018E0A22B004699FA /* SystemSleepListenerMac.h */,
</span><del>-                                5DA97ECB168E787B000E3676 /* SystemVersionMac.h */,
-                                5DA97ECC168E787B000E3676 /* SystemVersionMac.mm */,
</del><span class="cx">                                 BCE659E50EA92FB2007E4533 /* ThemeMac.h */,
</span><span class="cx">                                 BCE659E80EA92FFA007E4533 /* ThemeMac.mm */,
</span><span class="cx">                                 51DF6D7F0B92A18E00C2DC85 /* ThreadCheck.mm */,
</span><span class="lines">@@ -16502,9 +16511,8 @@
</span><span class="cx">                 65BF02180974806300C43196 /* page */ = {
</span><span class="cx">                         isa = PBXGroup;
</span><span class="cx">                         children = (
</span><del>-                                5CFC434E192406A900A0D3B5 /* PointerLockController.cpp */,
-                                5CFC434F192406A900A0D3B5 /* PointerLockController.h */,
</del><span class="cx">                                 316FE1060E6E1D8400BF6088 /* animation */,
</span><ins>+                                5D5975B5196362BE00D00878 /* cocoa */,
</ins><span class="cx">                                 18A6CD6F0D8F2025001DC3CE /* ios */,
</span><span class="cx">                                 93C09A820B064F05005ABD4D /* mac */,
</span><span class="cx">                                 1AF62EE114DA22A70041556C /* scrolling */,
</span><span class="lines">@@ -16523,14 +16531,14 @@
</span><span class="cx">                                 14D8238A0AF92DF60004F057 /* Chrome.cpp */,
</span><span class="cx">                                 14D823500AF92A790004F057 /* Chrome.h */,
</span><span class="cx">                                 14D824060AF93AEB0004F057 /* ChromeClient.h */,
</span><del>-                                97C471D912F925BC0086354B /* ContentSecurityPolicy.cpp */,
-                                97C471DA12F925BD0086354B /* ContentSecurityPolicy.h */,
</del><span class="cx">                                 065AD4F20B0C2EDA005A2B1D /* ContextMenuClient.h */,
</span><span class="cx">                                 5106D7BB18BDB76F000AB166 /* ContextMenuContext.cpp */,
</span><span class="cx">                                 5106D7BC18BDB76F000AB166 /* ContextMenuContext.h */,
</span><span class="cx">                                 065AD4F30B0C2EDA005A2B1D /* ContextMenuController.cpp */,
</span><span class="cx">                                 065AD4F40B0C2EDA005A2B1D /* ContextMenuController.h */,
</span><span class="cx">                                 7ADE722510CBBB9B006B3B3A /* ContextMenuProvider.h */,
</span><ins>+                                97C471D912F925BC0086354B /* ContentSecurityPolicy.cpp */,
+                                97C471DA12F925BD0086354B /* ContentSecurityPolicy.h */,
</ins><span class="cx">                                 975CA287130365F800E99AD9 /* Crypto.cpp */,
</span><span class="cx">                                 975CA288130365F800E99AD9 /* Crypto.h */,
</span><span class="cx">                                 975CA289130365F800E99AD9 /* Crypto.idl */,
</span><span class="lines">@@ -16638,6 +16646,8 @@
</span><span class="cx">                                 8AF4E55911DC5A63000ED3DE /* PerformanceTiming.h */,
</span><span class="cx">                                 8AF4E55A11DC5A63000ED3DE /* PerformanceTiming.idl */,
</span><span class="cx">                                 31D591B116697A6C00E6BF02 /* PlugInClient.h */,
</span><ins>+                                5CFC434E192406A900A0D3B5 /* PointerLockController.cpp */,
+                                5CFC434F192406A900A0D3B5 /* PointerLockController.h */,
</ins><span class="cx">                                 3772B09516535856000A49CA /* PopupOpeningObserver.h */,
</span><span class="cx">                                 B776D43C1104527500BEB0EC /* PrintContext.cpp */,
</span><span class="cx">                                 B776D43A1104525D00BEB0EC /* PrintContext.h */,
</span><span class="lines">@@ -16673,6 +16683,15 @@
</span><span class="cx">                                 003F1FE911E6AB43008258D9 /* UserContentTypes.h */,
</span><span class="cx">                                 BCACF3BA1072921A00C0C8A3 /* UserContentURLPattern.cpp */,
</span><span class="cx">                                 BCACF3BB1072921A00C0C8A3 /* UserContentURLPattern.h */,
</span><ins>+                                7C3B796F1908757B00B47A2D /* UserMessageHandler.cpp */,
+                                7C3B79701908757B00B47A2D /* UserMessageHandler.h */,
+                                7C73FB0E191EF60E007DE061 /* UserMessageHandler.idl */,
+                                7CE68342192143A800F4D928 /* UserMessageHandlerDescriptor.cpp */,
+                                7CE68343192143A800F4D928 /* UserMessageHandlerDescriptor.h */,
+                                7CE683461921821500F4D928 /* UserMessageHandlerDescriptorTypes.h */,
+                                7C73FB05191EF416007DE061 /* UserMessageHandlersNamespace.cpp */,
+                                7C73FB06191EF417007DE061 /* UserMessageHandlersNamespace.h */,
+                                7C73FB09191EF49F007DE061 /* UserMessageHandlersNamespace.idl */,
</ins><span class="cx">                                 BCA2B0601050475F0043BD1C /* UserScript.h */,
</span><span class="cx">                                 BCA2B08A10505BCD0043BD1C /* UserScriptTypes.h */,
</span><span class="cx">                                 BC8BF150105813BF00A40A07 /* UserStyleSheet.h */,
</span><span class="lines">@@ -16684,6 +16703,9 @@
</span><span class="cx">                                 1AF4CEEB18BC3C1B00BC2D34 /* VisitedLinkStore.cpp */,
</span><span class="cx">                                 1ABA7FFF1897341200DCE9D6 /* VisitedLinkStore.h */,
</span><span class="cx">                                 BE983D95052A2E0A00892D85 /* WebCoreKeyboardUIMode.h */,
</span><ins>+                                7C48A6CE191C9D6500026674 /* WebKitNamespace.cpp */,
+                                7C48A6CF191C9D6500026674 /* WebKitNamespace.h */,
+                                7C48A6D2191C9D8E00026674 /* WebKitNamespace.idl */,
</ins><span class="cx">                                 494BD7930F55C8EE00747828 /* WebKitPoint.h */,
</span><span class="cx">                                 494BD7940F55C8EE00747828 /* WebKitPoint.idl */,
</span><span class="cx">                                 93EC449F188F4BB800661DF1 /* WheelEventDeltaTracker.cpp */,
</span><span class="lines">@@ -16695,18 +16717,6 @@
</span><span class="cx">                                 E1271A130EEEC80400F61213 /* WorkerNavigator.cpp */,
</span><span class="cx">                                 E1271A0A0EEEC77A00F61213 /* WorkerNavigator.h */,
</span><span class="cx">                                 E1271A510EEECD1C00F61213 /* WorkerNavigator.idl */,
</span><del>-                                7C48A6CE191C9D6500026674 /* WebKitNamespace.cpp */,
-                                7C48A6CF191C9D6500026674 /* WebKitNamespace.h */,
-                                7C48A6D2191C9D8E00026674 /* WebKitNamespace.idl */,
-                                7C73FB05191EF416007DE061 /* UserMessageHandlersNamespace.cpp */,
-                                7C73FB06191EF417007DE061 /* UserMessageHandlersNamespace.h */,
-                                7C73FB09191EF49F007DE061 /* UserMessageHandlersNamespace.idl */,
-                                7C3B796F1908757B00B47A2D /* UserMessageHandler.cpp */,
-                                7C3B79701908757B00B47A2D /* UserMessageHandler.h */,
-                                7C73FB0E191EF60E007DE061 /* UserMessageHandler.idl */,
-                                7CE68342192143A800F4D928 /* UserMessageHandlerDescriptor.cpp */,
-                                7CE68343192143A800F4D928 /* UserMessageHandlerDescriptor.h */,
-                                7CE683461921821500F4D928 /* UserMessageHandlerDescriptorTypes.h */,
</del><span class="cx">                         );
</span><span class="cx">                         path = page;
</span><span class="cx">                         sourceTree = "<group>";
</span><span class="lines">@@ -17559,7 +17569,6 @@
</span><span class="cx">                                 93C09A7E0B064EEF005ABD4D /* EventHandlerMac.mm */,
</span><span class="cx">                                 1C26497B0D7E24EC00BD10F2 /* PageMac.cpp */,
</span><span class="cx">                                 E1C2F2481533A2120083F974 /* SettingsMac.mm */,
</span><del>-                                26255F0118878E110006E1FD /* UserAgent.h */,
</del><span class="cx">                                 26255F0218878E110006E1FD /* UserAgentMac.mm */,
</span><span class="cx">                                 F587854C02DE375901EA4122 /* WebCoreFrameView.h */,
</span><span class="cx">                         );
</span><span class="lines">@@ -18535,6 +18544,8 @@
</span><span class="cx">                                 A5C974CF11485FF10066F2AB /* KeyEventCocoa.h */,
</span><span class="cx">                                 A5C974D011485FF10066F2AB /* KeyEventCocoa.mm */,
</span><span class="cx">                                 ADB6B29718FB90240081963E /* MemoryPressureHandlerCocoa.mm */,
</span><ins>+                                5D5975B119635F1100D00878 /* SystemVersion.h */,
+                                5D5975B219635F1100D00878 /* SystemVersion.mm */,
</ins><span class="cx">                                 7CC564B918BAC720001B9652 /* TelephoneNumberDetectorCocoa.cpp */,
</span><span class="cx">                         );
</span><span class="cx">                         path = cocoa;
</span><span class="lines">@@ -24204,6 +24215,7 @@
</span><span class="cx">                                 4358E8811360A31700E4748C /* FEDropShadow.h in Headers */,
</span><span class="cx">                                 84730D7F1248F0B300D3A9C9 /* FEFlood.h in Headers */,
</span><span class="cx">                                 84801955108BAFB300CB2B1F /* FEGaussianBlur.h in Headers */,
</span><ins>+                                5D5975B319635F1100D00878 /* SystemVersion.h in Headers */,
</ins><span class="cx">                                 84730D811248F0B300D3A9C9 /* FELighting.h in Headers */,
</span><span class="cx">                                 84730D831248F0B300D3A9C9 /* FEMerge.h in Headers */,
</span><span class="cx">                                 84730D851248F0B300D3A9C9 /* FEMorphology.h in Headers */,
</span><span class="lines">@@ -26316,7 +26328,6 @@
</span><span class="cx">                                 E180811716FCF9CB00B80D07 /* SynchronousLoaderClient.h in Headers */,
</span><span class="cx">                                 26FAE4CF1852E3A5004C8C46 /* SynchronousResourceHandleCFURLConnectionDelegate.h in Headers */,
</span><span class="cx">                                 0F03C0741884695E00A5F8CA /* SystemMemory.h in Headers */,
</span><del>-                                5DA97ECD168E787B000E3676 /* SystemVersionMac.h in Headers */,
</del><span class="cx">                                 A8CFF0510A154F09000A4234 /* TableLayout.h in Headers */,
</span><span class="cx">                                 BCE3BEC30D222B1D007E06E4 /* TagNodeList.h in Headers */,
</span><span class="cx">                                 F55B3DD61251F12D003EF269 /* TelephoneInputType.h in Headers */,
</span><span class="lines">@@ -29257,6 +29268,7 @@
</span><span class="cx">                                 293EAE211356B32E0067ACF9 /* RuntimeApplicationChecks.cpp in Sources */,
</span><span class="cx">                                 44C363F10FAA7BB30097F8CC /* RuntimeApplicationChecksIOS.mm in Sources */,
</span><span class="cx">                                 8C6EA61911EF7E0400FD8EE3 /* RuntimeEnabledFeatures.cpp in Sources */,
</span><ins>+                                5D5975B71963637B00D00878 /* UserAgent.mm in Sources */,
</ins><span class="cx">                                 CDD7089618359F6F002B3DC6 /* SampleMap.cpp in Sources */,
</span><span class="cx">                                 49E911CA0EF86D47009D0CAF /* ScaleTransformOperation.cpp in Sources */,
</span><span class="cx">                                 5DFE8F560D16477B0076E937 /* ScheduledAction.cpp in Sources */,
</span><span class="lines">@@ -29418,6 +29430,7 @@
</span><span class="cx">                                 51E0BB390DA5ACB600A9E417 /* StorageMap.cpp in Sources */,
</span><span class="cx">                                 C50D0E820FF4272900AC2644 /* StorageNamespace.cpp in Sources */,
</span><span class="cx">                                 C55E38C010040D5D00A56BDB /* StorageNamespaceImpl.cpp in Sources */,
</span><ins>+                                5D5975B419635F1100D00878 /* SystemVersion.mm in Sources */,
</ins><span class="cx">                                 1AB09DB416AF5F6C008538E7 /* StorageStrategy.cpp in Sources */,
</span><span class="cx">                                 C5102D950FD9AA2D00FAFF04 /* StorageSyncManager.cpp in Sources */,
</span><span class="cx">                                 511F23190DC160DA004F0032 /* StorageThread.cpp in Sources */,
</span><span class="lines">@@ -29649,7 +29662,6 @@
</span><span class="cx">                                 442ABCD617D9262F00D30715 /* SynchronousLoaderClientCFNet.cpp in Sources */,
</span><span class="cx">                                 26FAE4CE1852E3A5004C8C46 /* SynchronousResourceHandleCFURLConnectionDelegate.cpp in Sources */,
</span><span class="cx">                                 E45390AE0EAFF4B5003695C8 /* SystemMemoryIOS.cpp in Sources */,
</span><del>-                                5DA97ECE168E787B000E3676 /* SystemVersionMac.mm in Sources */,
</del><span class="cx">                                 BCE3BEC20D222B1D007E06E4 /* TagNodeList.cpp in Sources */,
</span><span class="cx">                                 F55B3DD51251F12D003EF269 /* TelephoneInputType.cpp in Sources */,
</span><span class="cx">                                 7CC564BA18BAC720001B9652 /* TelephoneNumberDetectorCocoa.cpp in Sources */,
</span></span></pre></div>
<a id="trunkSourceWebCorepagecocoaUserAgenthfromrev170727trunkSourceWebCorepagemacUserAgenth"></a>
<div class="copfile"><h4>Copied: trunk/Source/WebCore/page/cocoa/UserAgent.h (from rev 170727, trunk/Source/WebCore/page/mac/UserAgent.h) (0 => 170730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/cocoa/UserAgent.h         (rev 0)
+++ trunk/Source/WebCore/page/cocoa/UserAgent.h        2014-07-02 22:38:41 UTC (rev 170730)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+/*
+ * Copyright (C) 2014 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef UserAgent_h
+#define UserAgent_h
+
+#include <wtf/text/WTFString.h>
+
+namespace WebCore {
+String standardUserAgentWithApplicationName(const String& applicationName, const String& webkitVersionString);
+String systemMarketingVersionForUserAgentString();
+}
+
+#endif // UserAgent_h
</ins></span></pre></div>
<a id="trunkSourceWebCorepagecocoaUserAgentmmfromrev170727trunkSourceWebCorepagemacUserAgenth"></a>
<div class="copfile"><h4>Copied: trunk/Source/WebCore/page/cocoa/UserAgent.mm (from rev 170727, trunk/Source/WebCore/page/mac/UserAgent.h) (0 => 170730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/cocoa/UserAgent.mm         (rev 0)
+++ trunk/Source/WebCore/page/cocoa/UserAgent.mm        2014-07-02 22:38:41 UTC (rev 170730)
</span><span class="lines">@@ -0,0 +1,41 @@
</span><ins>+/*
+ * Copyright (C) 2014 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#import "config.h"
+#import "UserAgent.h"
+
+#import "SystemVersion.h"
+
+namespace WebCore {
+
+String systemMarketingVersionForUserAgentString()
+{
+ // Use underscores instead of dots because when we first added the Mac OS X version to the user agent string
+ // we were concerned about old DHTML libraries interpreting "4." as Netscape 4. That's no longer a concern for us
+ // but we're sticking with the underscores for compatibility with the format used by older versions of Safari.
+ return [systemMarketingVersion() stringByReplacingOccurrencesOfString:@"." withString:@"_"];
+}
+
+} // namespace WebCore
</ins></span></pre></div>
<a id="trunkSourceWebCorepageiosUserAgentIOSmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/ios/UserAgentIOS.mm (170729 => 170730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/ios/UserAgentIOS.mm        2014-07-02 22:34:43 UTC (rev 170729)
+++ trunk/Source/WebCore/page/ios/UserAgentIOS.mm        2014-07-02 22:38:41 UTC (rev 170730)
</span><span class="lines">@@ -26,29 +26,11 @@
</span><span class="cx"> #import "config.h"
</span><span class="cx"> #import "UserAgent.h"
</span><span class="cx">
</span><del>-#import <WebCoreSystemInterface.h>
-#import <wtf/NeverDestroyed.h>
-#import <wtf/RetainPtr.h>
</del><ins>+#import "SystemVersion.h"
+#import "WebCoreSystemInterface.h"
</ins><span class="cx">
</span><span class="cx"> namespace WebCore {
</span><span class="cx">
</span><del>-static NSString *platformSystemRootDirectory()
-{
-#if PLATFORM(IOS_SIMULATOR)
- const char *simulatorRoot = getenv("IPHONE_SIMULATOR_ROOT");
- return [NSString stringWithUTF8String:(simulatorRoot ? simulatorRoot : "/")];
-#else
- return @"/";
-#endif
-}
-
-static NSString *osMarketingVersion()
-{
- RetainPtr<NSDictionary> systemInfo = adoptNS([[NSDictionary alloc] initWithContentsOfFile:[platformSystemRootDirectory() stringByAppendingPathComponent:@"System/Library/CoreServices/SystemVersion.plist"]]);
- NSString *productVersion = [systemInfo objectForKey:@"ProductVersion"];
- return !productVersion ? @"" : [productVersion stringByReplacingOccurrencesOfString:@"." withString:@"_"];
-}
-
</del><span class="cx"> String standardUserAgentWithApplicationName(const String& applicationName, const String& webkitVersionString)
</span><span class="cx"> {
</span><span class="cx"> if (CFStringRef overrideUserAgent = wkGetUserAgent())
</span><span class="lines">@@ -65,7 +47,7 @@
</span><span class="cx"> NSString *webKitVersion = webkitVersionString;
</span><span class="cx"> CFStringRef deviceName = wkGetDeviceName();
</span><span class="cx"> CFStringRef osNameForUserAgent = wkGetOSNameForUserAgent();
</span><del>- NSString *osMarketingVersionString = osMarketingVersion();
</del><ins>+ NSString *osMarketingVersionString = systemMarketingVersionForUserAgentString();
</ins><span class="cx"> if (applicationName.isEmpty())
</span><span class="cx"> return [NSString stringWithFormat:@"Mozilla/5.0 (%@; CPU %@ %@ like Mac OS X) AppleWebKit/%@ (KHTML, like Gecko)", deviceName, osNameForUserAgent, osMarketingVersionString, webKitVersion];
</span><span class="cx"> return [NSString stringWithFormat:@"Mozilla/5.0 (%@; CPU %@ %@ like Mac OS X) AppleWebKit/%@ (KHTML, like Gecko) %@", deviceName, osNameForUserAgent, osMarketingVersionString, webKitVersion, static_cast<NSString *>(applicationName)];
</span></span></pre></div>
<a id="trunkSourceWebCorepagemacUserAgenth"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebCore/page/mac/UserAgent.h (170729 => 170730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/mac/UserAgent.h        2014-07-02 22:34:43 UTC (rev 170729)
+++ trunk/Source/WebCore/page/mac/UserAgent.h        2014-07-02 22:38:41 UTC (rev 170730)
</span><span class="lines">@@ -1,37 +0,0 @@
</span><del>-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef UserAgent_h
-#define UserAgent_h
-
-#include <wtf/text/WTFString.h>
-
-@class NSBundle;
-
-namespace WebCore {
-String standardUserAgentWithApplicationName(const String& applicationName, const String& webkitVersionString);
-}
-
-#endif // UserAgentMac_h
</del></span></pre></div>
<a id="trunkSourceWebCorepagemacUserAgentMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/mac/UserAgentMac.mm (170729 => 170730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/mac/UserAgentMac.mm        2014-07-02 22:34:43 UTC (rev 170729)
+++ trunk/Source/WebCore/page/mac/UserAgentMac.mm        2014-07-02 22:38:41 UTC (rev 170730)
</span><span class="lines">@@ -26,8 +26,7 @@
</span><span class="cx"> #import "config.h"
</span><span class="cx"> #import "UserAgent.h"
</span><span class="cx">
</span><del>-#import <WebCore/SystemVersionMac.h>
-#import <wtf/NeverDestroyed.h>
</del><ins>+#import "SystemVersion.h"
</ins><span class="cx">
</span><span class="cx"> namespace WebCore {
</span><span class="cx">
</span><span class="lines">@@ -39,14 +38,6 @@
</span><span class="cx"> #error Unknown architecture
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>-static NSString *systemMarketingVersionForUserAgentString()
-{
- // Use underscores instead of dots because when we first added the Mac OS X version to the user agent string
- // we were concerned about old DHTML libraries interpreting "4." as Netscape 4. That's no longer a concern for us
- // but we're sticking with the underscores for compatibility with the format used by older versions of Safari.
- return [systemMarketingVersion() stringByReplacingOccurrencesOfString:@"." withString:@"_"];
-}
-
</del><span class="cx"> String standardUserAgentWithApplicationName(const String& applicationName, const String& webKitVersionString)
</span><span class="cx"> {
</span><span class="cx"> String osVersion = systemMarketingVersionForUserAgentString();
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformcocoaSystemVersionhfromrev170727trunkSourceWebCoreplatformmacSystemVersionMach"></a>
<div class="copfile"><h4>Copied: trunk/Source/WebCore/platform/cocoa/SystemVersion.h (from rev 170727, trunk/Source/WebCore/platform/mac/SystemVersionMac.h) (0 => 170730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/cocoa/SystemVersion.h         (rev 0)
+++ trunk/Source/WebCore/platform/cocoa/SystemVersion.h        2014-07-02 22:38:41 UTC (rev 170730)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+/*
+ * Copyright (C) 2012 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+namespace WebCore {
+
+NSString *systemMarketingVersion();
+
+}
</ins></span></pre></div>
<a id="trunkSourceWebCoreplatformcocoaSystemVersionmmfromrev170727trunkSourceWebCoreplatformmacSystemVersionMacmm"></a>
<div class="copfile"><h4>Copied: trunk/Source/WebCore/platform/cocoa/SystemVersion.mm (from rev 170727, trunk/Source/WebCore/platform/mac/SystemVersionMac.mm) (0 => 170730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/cocoa/SystemVersion.mm         (rev 0)
+++ trunk/Source/WebCore/platform/cocoa/SystemVersion.mm        2014-07-02 22:38:41 UTC (rev 170730)
</span><span class="lines">@@ -0,0 +1,73 @@
</span><ins>+/*
+ * Copyright (C) 2012 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "SystemVersion.h"
+
+namespace WebCore {
+
+#if PLATFORM(IOS) || __MAC_OS_X_VERSION_MIN_REQUIRED >= 1080
+
+static NSString *createSystemMarketingVersion()
+{
+ // Can't use -[NSProcessInfo operatingSystemVersionString] because it has too much stuff we don't want.
+ NSString *systemLibraryPath = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSSystemDomainMask, YES) objectAtIndex:0];
+ NSString *systemVersionPlistPath = [systemLibraryPath stringByAppendingPathComponent:@"CoreServices/SystemVersion.plist"];
+ NSDictionary *systemVersionInfo = [NSDictionary dictionaryWithContentsOfFile:systemVersionPlistPath];
+ return [[systemVersionInfo objectForKey:@"ProductVersion"] copy];
+}
+
+#else
+
+static inline int callGestalt(OSType selector)
+{
+ SInt32 value = 0;
+ Gestalt(selector, &value);
+ return value;
+}
+
+static NSString *createSystemMarketingVersion()
+{
+ // Can't use -[NSProcessInfo operatingSystemVersionString] because it has too much stuff we don't want.
+ int major = callGestalt(gestaltSystemVersionMajor);
+ ASSERT(major);
+
+ int minor = callGestalt(gestaltSystemVersionMinor);
+ int bugFix = callGestalt(gestaltSystemVersionBugFix);
+ if (bugFix)
+ return [[NSString alloc] initWithFormat:@"%d.%d.%d", major, minor, bugFix];
+ if (minor)
+ return [[NSString alloc] initWithFormat:@"%d.%d", major, minor];
+ return [[NSString alloc] initWithFormat:@"%d", major];
+}
+
+#endif // PLATFORM(IOS) || __MAC_OS_X_VERSION_MIN_REQUIRED >= 1080
+
+NSString *systemMarketingVersion()
+{
+ static NSString *version = createSystemMarketingVersion();
+ return version;
+}
+
+}
</ins></span></pre></div>
<a id="trunkSourceWebCoreplatformmacSystemVersionMach"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebCore/platform/mac/SystemVersionMac.h (170729 => 170730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/mac/SystemVersionMac.h        2014-07-02 22:34:43 UTC (rev 170729)
+++ trunk/Source/WebCore/platform/mac/SystemVersionMac.h        2014-07-02 22:38:41 UTC (rev 170730)
</span><span class="lines">@@ -1,29 +0,0 @@
</span><del>-/*
- * Copyright (C) 2012 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
- * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-namespace WebCore {
-
-NSString *systemMarketingVersion();
-
-}
</del></span></pre></div>
<a id="trunkSourceWebCoreplatformmacSystemVersionMacmm"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebCore/platform/mac/SystemVersionMac.mm (170729 => 170730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/mac/SystemVersionMac.mm        2014-07-02 22:34:43 UTC (rev 170729)
+++ trunk/Source/WebCore/platform/mac/SystemVersionMac.mm        2014-07-02 22:38:41 UTC (rev 170730)
</span><span class="lines">@@ -1,84 +0,0 @@
</span><del>-/*
- * Copyright (C) 2012 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
- * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "SystemVersionMac.h"
-
-namespace WebCore {
-
-#if !PLATFORM(IOS)
-#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 1080
-
-static NSString *createSystemMarketingVersion()
-{
- // Can't use -[NSProcessInfo operatingSystemVersionString] because it has too much stuff we don't want.
- NSString *systemLibraryPath = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSSystemDomainMask, YES) objectAtIndex:0];
- NSString *systemVersionPlistPath = [systemLibraryPath stringByAppendingPathComponent:@"CoreServices/SystemVersion.plist"];
- NSDictionary *systemVersionInfo = [NSDictionary dictionaryWithContentsOfFile:systemVersionPlistPath];
- return [[systemVersionInfo objectForKey:@"ProductVersion"] copy];
-}
-
-#else
-
-static inline int callGestalt(OSType selector)
-{
- SInt32 value = 0;
- Gestalt(selector, &value);
- return value;
-}
-
-static NSString *createSystemMarketingVersion()
-{
- // Can't use -[NSProcessInfo operatingSystemVersionString] because it has too much stuff we don't want.
- int major = callGestalt(gestaltSystemVersionMajor);
- ASSERT(major);
-
- int minor = callGestalt(gestaltSystemVersionMinor);
- int bugFix = callGestalt(gestaltSystemVersionBugFix);
- if (bugFix)
- return [[NSString alloc] initWithFormat:@"%d.%d.%d", major, minor, bugFix];
- if (minor)
- return [[NSString alloc] initWithFormat:@"%d.%d", major, minor];
- return [[NSString alloc] initWithFormat:@"%d", major];
-}
-
-#endif // __MAC_OS_X_VERSION_MIN_REQUIRED >= 1080
-
-NSString *systemMarketingVersion()
-{
- static NSString *version = createSystemMarketingVersion();
- return version;
-}
-#else
-
-NSString *systemMarketingVersion()
-{
- // FIXME: Needs implementation.
- static NSString *version = @"";
- return version;
-}
-
-#endif // !PLATFORM(IOS)
-
-}
</del></span></pre></div>
<a id="trunkSourceWebKit2ChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/ChangeLog (170729 => 170730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/ChangeLog        2014-07-02 22:34:43 UTC (rev 170729)
+++ trunk/Source/WebKit2/ChangeLog        2014-07-02 22:38:41 UTC (rev 170730)
</span><span class="lines">@@ -1,3 +1,12 @@
</span><ins>+2014-07-02 Mark Rowe <mrowe@apple.com>
+
+ <https://webkit.org/b/134521> iOS should use shared code to determine the system marketing version
+
+ Reviewed by Simon Fraser.
+
+ * Shared/ios/ChildProcessIOS.mm: Update #import.
+ * Shared/mac/ChildProcessMac.mm: Ditto.
+
</ins><span class="cx"> 2014-07-02 Anders Carlsson <andersca@apple.com>
</span><span class="cx">
</span><span class="cx"> Rip out more dead code
</span></span></pre></div>
<a id="trunkSourceWebKit2SharediosChildProcessIOSmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/ios/ChildProcessIOS.mm (170729 => 170730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/ios/ChildProcessIOS.mm        2014-07-02 22:34:43 UTC (rev 170729)
+++ trunk/Source/WebKit2/Shared/ios/ChildProcessIOS.mm        2014-07-02 22:38:41 UTC (rev 170730)
</span><span class="lines">@@ -32,7 +32,7 @@
</span><span class="cx"> #import "SandboxInitializationParameters.h"
</span><span class="cx"> #import "WebKitSystemInterface.h"
</span><span class="cx"> #import <WebCore/FileSystem.h>
</span><del>-#import <WebCore/SystemVersionMac.h>
</del><ins>+#import <WebCore/SystemVersion.h>
</ins><span class="cx"> #import <mach/mach.h>
</span><span class="cx"> #import <mach/task.h>
</span><span class="cx"> #import <pwd.h>
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedmacChildProcessMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/mac/ChildProcessMac.mm (170729 => 170730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/mac/ChildProcessMac.mm        2014-07-02 22:34:43 UTC (rev 170729)
+++ trunk/Source/WebKit2/Shared/mac/ChildProcessMac.mm        2014-07-02 22:38:41 UTC (rev 170730)
</span><span class="lines">@@ -31,7 +31,7 @@
</span><span class="cx"> #import "SandboxInitializationParameters.h"
</span><span class="cx"> #import "WebKitSystemInterface.h"
</span><span class="cx"> #import <WebCore/FileSystem.h>
</span><del>-#import <WebCore/SystemVersionMac.h>
</del><ins>+#import <WebCore/SystemVersion.h>
</ins><span class="cx"> #import <mach/mach.h>
</span><span class="cx"> #import <mach/task.h>
</span><span class="cx"> #import <pwd.h>
</span></span></pre>
</div>
</div>
</body>
</html>