<!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>[173988] 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/173988">173988</a></dd>
<dt>Author</dt> <dd>bfulgham@apple.com</dd>
<dt>Date</dt> <dd>2014-09-25 17:39:20 -0700 (Thu, 25 Sep 2014)</dd>
</dl>
<h3>Log Message</h3>
<pre>[Win] Debug builds of TestWebKitAPI are crashing.
https://bugs.webkit.org/show_bug.cgi?id=133553
Reviewed by Dean Jackson.
../WebCore:
Avoid crash on shutdown due to invalid mutex state in the
HashMap debug implementation during a static destruction operation.
* dom/Node.cpp:
(WebCore::ignoreSet): Convert static value into a NeverDestroyed.
(WebCore::Node::trackForDebugging): Use new NeverDestroyed call.
(WebCore::Node::~Node): Ditto.
../WebKit/win:
Switch from global static HashTable to a NeverDestroyed object.
Modify all accessors of the global static to use the new
NeverDestroyed accessor method.
* AccessibleBase.cpp:
(AccessibleBase::AccessibleBase):
(AccessibleBase::~AccessibleBase):
* CFDictionaryPropertyBag.cpp:
(CFDictionaryPropertyBag::CFDictionaryPropertyBag):
(CFDictionaryPropertyBag::~CFDictionaryPropertyBag):
* DefaultDownloadDelegate.cpp:
(DefaultDownloadDelegate::DefaultDownloadDelegate):
(DefaultDownloadDelegate::~DefaultDownloadDelegate):
* DefaultPolicyDelegate.cpp:
(DefaultPolicyDelegate::DefaultPolicyDelegate):
(DefaultPolicyDelegate::~DefaultPolicyDelegate):
* MemoryStream.cpp:
(MemoryStream::MemoryStream):
(MemoryStream::~MemoryStream):
* WebActionPropertyBag.cpp:
(WebActionPropertyBag::WebActionPropertyBag):
(WebActionPropertyBag::~WebActionPropertyBag):
* WebArchive.cpp:
(WebArchive::WebArchive):
(WebArchive::~WebArchive):
* WebBackForwardList.cpp:
(WebBackForwardList::WebBackForwardList):
(WebBackForwardList::~WebBackForwardList):
* WebCache.cpp:
(WebCache::WebCache):
(WebCache::~WebCache):
* WebCookieManager.cpp:
(WebCookieManager::WebCookieManager):
(WebCookieManager::~WebCookieManager):
* WebCoreStatistics.cpp:
(WebCoreStatistics::WebCoreStatistics):
(WebCoreStatistics::~WebCoreStatistics):
* WebDataSource.cpp:
(WebDataSource::~WebDataSource):
* WebDatabaseManager.cpp:
(WebDatabaseManager::WebDatabaseManager):
(WebDatabaseManager::~WebDatabaseManager):
* WebDocumentLoader.cpp:
(WebDocumentLoader::WebDocumentLoader):
(WebDocumentLoader::~WebDocumentLoader):
* WebDownload.cpp:
(WebDownload::WebDownload):
(WebDownload::~WebDownload):
* WebDropSource.cpp:
(WebDropSource::WebDropSource):
(WebDropSource::~WebDropSource):
* WebElementPropertyBag.cpp:
(WebElementPropertyBag::WebElementPropertyBag):
(WebElementPropertyBag::~WebElementPropertyBag):
* WebError.cpp:
(WebError::WebError):
(WebError::~WebError):
* WebFrame.cpp:
(WebFrame::WebFrame):
(WebFrame::~WebFrame):
* WebFramePolicyListener.cpp:
(WebFramePolicyListener::WebFramePolicyListener):
(WebFramePolicyListener::~WebFramePolicyListener):
* WebGeolocationPolicyListener.cpp:
(WebGeolocationPolicyListener::WebGeolocationPolicyListener):
(WebGeolocationPolicyListener::~WebGeolocationPolicyListener):
* WebGeolocationPosition.cpp:
(WebGeolocationPosition::WebGeolocationPosition):
(WebGeolocationPosition::~WebGeolocationPosition):
* WebHTMLRepresentation.cpp:
(WebHTMLRepresentation::WebHTMLRepresentation):
(WebHTMLRepresentation::~WebHTMLRepresentation):
* WebHistory.cpp:
(WebHistory::WebHistory):
(WebHistory::~WebHistory):
* WebHistoryItem.cpp:
(WebHistoryItem::WebHistoryItem):
(WebHistoryItem::~WebHistoryItem):
* WebIconDatabase.cpp:
(WebIconDatabase::WebIconDatabase):
(WebIconDatabase::~WebIconDatabase):
* WebInspector.cpp:
(WebInspector::WebInspector):
(WebInspector::~WebInspector):
* WebJavaScriptCollector.cpp:
(WebJavaScriptCollector::WebJavaScriptCollector):
(WebJavaScriptCollector::~WebJavaScriptCollector):
* WebKitClassFactory.cpp:
(WebKitClassFactory::WebKitClassFactory):
(WebKitClassFactory::~WebKitClassFactory):
* WebKitDLL.cpp: Also switch to NeverDestroyed HashTable for
the global class name count.
* WebKitDLL.h:
* WebKitStatistics.cpp:
(WebKitStatistics::WebKitStatistics):
(WebKitStatistics::~WebKitStatistics):
(WebKitStatistics::comClassNameCounts):
* WebMutableURLRequest.cpp:
(WebMutableURLRequest::WebMutableURLRequest):
(WebMutableURLRequest::~WebMutableURLRequest):
* WebNavigationData.cpp:
(WebNavigationData::WebNavigationData):
(WebNavigationData::~WebNavigationData):
* WebNotification.cpp:
(WebNotification::WebNotification):
(WebNotification::~WebNotification):
* WebNotificationCenter.cpp:
(WebNotificationCenter::WebNotificationCenter):
(WebNotificationCenter::~WebNotificationCenter):
* WebPreferences.cpp:
(webPreferencesInstances):
(WebPreferences::WebPreferences):
(WebPreferences::~WebPreferences):
(WebPreferences::getInstanceForIdentifier):
(WebPreferences::setInstance):
(WebPreferences::removeReferenceForIdentifier):
* WebResource.cpp:
(WebResource::WebResource):
(WebResource::~WebResource):
* WebScriptObject.cpp:
(WebScriptObject::WebScriptObject):
(WebScriptObject::~WebScriptObject):
* WebScriptWorld.cpp:
(WebScriptWorld::WebScriptWorld):
(WebScriptWorld::~WebScriptWorld):
* WebSecurityOrigin.cpp:
(WebSecurityOrigin::WebSecurityOrigin):
(WebSecurityOrigin::~WebSecurityOrigin):
* WebSerializedJSValue.cpp:
(WebSerializedJSValue::WebSerializedJSValue):
(WebSerializedJSValue::~WebSerializedJSValue):
* WebTextRenderer.cpp:
(WebTextRenderer::WebTextRenderer):
(WebTextRenderer::~WebTextRenderer):
* WebURLAuthenticationChallenge.cpp:
(WebURLAuthenticationChallenge::WebURLAuthenticationChallenge):
(WebURLAuthenticationChallenge::~WebURLAuthenticationChallenge):
* WebURLAuthenticationChallengeSender.cpp:
(WebURLAuthenticationChallengeSender::WebURLAuthenticationChallengeSender):
(WebURLAuthenticationChallengeSender::~WebURLAuthenticationChallengeSender):
* WebURLCredential.cpp:
(WebURLCredential::WebURLCredential):
(WebURLCredential::~WebURLCredential):
* WebURLProtectionSpace.cpp:
(WebURLProtectionSpace::WebURLProtectionSpace):
(WebURLProtectionSpace::~WebURLProtectionSpace):
* WebURLResponse.cpp:
(:m_refCount):
(WebURLResponse::~WebURLResponse):
* WebUserContentURLPattern.cpp:
(WebUserContentURLPattern::WebUserContentURLPattern):
(WebUserContentURLPattern::~WebUserContentURLPattern):
* WebView.cpp:
(pendingDeleteBackingStoreSet): Switch from a global static
value to a NeverDestroyed object wrapped by an accessor function.
(WebView::WebView): Ditto.
(WebView::~WebView): Ditto.
(WebView::deleteBackingStore): Ditto.
(WebView::deleteBackingStoreSoon): Ditto,
(WebView::cancelDeleteBackingStoreSoon): Ditto.
* WebWorkersPrivate.cpp: Switch from a global static value for
the preferences objects t a NeverDestroyed container.
(WebWorkersPrivate::WebWorkersPrivate): Ditto.
(WebWorkersPrivate::~WebWorkersPrivate): Ditto.</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoredomNodecpp">trunk/Source/WebCore/dom/Node.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscgPDFDocumentImagecpp">trunk/Source/WebCore/platform/graphics/cg/PDFDocumentImage.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformnetworkcfSynchronousResourceHandleCFURLConnectionDelegatecpp">trunk/Source/WebCore/platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.cpp</a></li>
<li><a href="#trunkSourceWebKitWebKitvcxprojWebKitWebKitvcxproj">trunk/Source/WebKit/WebKit.vcxproj/WebKit/WebKit.vcxproj</a></li>
<li><a href="#trunkSourceWebKitwinAccessibleBasecpp">trunk/Source/WebKit/win/AccessibleBase.cpp</a></li>
<li><a href="#trunkSourceWebKitwinCFDictionaryPropertyBagcpp">trunk/Source/WebKit/win/CFDictionaryPropertyBag.cpp</a></li>
<li><a href="#trunkSourceWebKitwinChangeLog">trunk/Source/WebKit/win/ChangeLog</a></li>
<li><a href="#trunkSourceWebKitwinDefaultDownloadDelegatecpp">trunk/Source/WebKit/win/DefaultDownloadDelegate.cpp</a></li>
<li><a href="#trunkSourceWebKitwinDefaultPolicyDelegatecpp">trunk/Source/WebKit/win/DefaultPolicyDelegate.cpp</a></li>
<li><a href="#trunkSourceWebKitwinMemoryStreamcpp">trunk/Source/WebKit/win/MemoryStream.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebActionPropertyBagcpp">trunk/Source/WebKit/win/WebActionPropertyBag.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebArchivecpp">trunk/Source/WebKit/win/WebArchive.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebBackForwardListcpp">trunk/Source/WebKit/win/WebBackForwardList.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebCachecpp">trunk/Source/WebKit/win/WebCache.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebCookieManagercpp">trunk/Source/WebKit/win/WebCookieManager.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebCoreStatisticscpp">trunk/Source/WebKit/win/WebCoreStatistics.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebDataSourcecpp">trunk/Source/WebKit/win/WebDataSource.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebDatabaseManagercpp">trunk/Source/WebKit/win/WebDatabaseManager.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebDocumentLoadercpp">trunk/Source/WebKit/win/WebDocumentLoader.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebDownloadcpp">trunk/Source/WebKit/win/WebDownload.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebDropSourcecpp">trunk/Source/WebKit/win/WebDropSource.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebElementPropertyBagcpp">trunk/Source/WebKit/win/WebElementPropertyBag.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebErrorcpp">trunk/Source/WebKit/win/WebError.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebFramecpp">trunk/Source/WebKit/win/WebFrame.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebFramePolicyListenercpp">trunk/Source/WebKit/win/WebFramePolicyListener.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebGeolocationPolicyListenercpp">trunk/Source/WebKit/win/WebGeolocationPolicyListener.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebGeolocationPositioncpp">trunk/Source/WebKit/win/WebGeolocationPosition.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebHTMLRepresentationcpp">trunk/Source/WebKit/win/WebHTMLRepresentation.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebHistorycpp">trunk/Source/WebKit/win/WebHistory.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebHistoryItemcpp">trunk/Source/WebKit/win/WebHistoryItem.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebIconDatabasecpp">trunk/Source/WebKit/win/WebIconDatabase.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebInspectorcpp">trunk/Source/WebKit/win/WebInspector.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebJavaScriptCollectorcpp">trunk/Source/WebKit/win/WebJavaScriptCollector.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebKitClassFactorycpp">trunk/Source/WebKit/win/WebKitClassFactory.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebKitDLLcpp">trunk/Source/WebKit/win/WebKitDLL.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebKitDLLh">trunk/Source/WebKit/win/WebKitDLL.h</a></li>
<li><a href="#trunkSourceWebKitwinWebKitStatisticscpp">trunk/Source/WebKit/win/WebKitStatistics.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebMutableURLRequestcpp">trunk/Source/WebKit/win/WebMutableURLRequest.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebNavigationDatacpp">trunk/Source/WebKit/win/WebNavigationData.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebNotificationcpp">trunk/Source/WebKit/win/WebNotification.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebNotificationCentercpp">trunk/Source/WebKit/win/WebNotificationCenter.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebPreferencescpp">trunk/Source/WebKit/win/WebPreferences.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebResourcecpp">trunk/Source/WebKit/win/WebResource.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebScriptObjectcpp">trunk/Source/WebKit/win/WebScriptObject.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebScriptWorldcpp">trunk/Source/WebKit/win/WebScriptWorld.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebSecurityOrigincpp">trunk/Source/WebKit/win/WebSecurityOrigin.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebSerializedJSValuecpp">trunk/Source/WebKit/win/WebSerializedJSValue.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebTextRenderercpp">trunk/Source/WebKit/win/WebTextRenderer.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebURLAuthenticationChallengecpp">trunk/Source/WebKit/win/WebURLAuthenticationChallenge.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebURLAuthenticationChallengeSendercpp">trunk/Source/WebKit/win/WebURLAuthenticationChallengeSender.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebURLCredentialcpp">trunk/Source/WebKit/win/WebURLCredential.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebURLProtectionSpacecpp">trunk/Source/WebKit/win/WebURLProtectionSpace.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebURLResponsecpp">trunk/Source/WebKit/win/WebURLResponse.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebUserContentURLPatterncpp">trunk/Source/WebKit/win/WebUserContentURLPattern.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebViewcpp">trunk/Source/WebKit/win/WebView.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebWorkersPrivatecpp">trunk/Source/WebKit/win/WebWorkersPrivate.cpp</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebCore/ChangeLog        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -1,3 +1,18 @@
</span><ins>+2014-09-25 Brent Fulgham <bfulgham@apple.com>
+
+ [Win] Debug builds of TestWebKitAPI are crashing.
+ https://bugs.webkit.org/show_bug.cgi?id=133553
+
+ Reviewed by Dean Jackson.
+
+ Avoid crash on shutdown due to invalid mutex state in the
+ HashMap debug implementation during a static destruction operation.
+
+ * dom/Node.cpp:
+ (WebCore::ignoreSet): Convert static value into a NeverDestroyed.
+ (WebCore::Node::trackForDebugging): Use new NeverDestroyed call.
+ (WebCore::Node::~Node): Ditto.
+
</ins><span class="cx"> 2014-09-25 Christophe Dumez <cdumez@apple.com>
</span><span class="cx">
</span><span class="cx"> Add support for is<SVGDocument>() / downcast<SVGDocument>()
</span></span></pre></div>
<a id="trunkSourceWebCoredomNodecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/dom/Node.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/dom/Node.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebCore/dom/Node.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -253,10 +253,17 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> DEFINE_DEBUG_ONLY_GLOBAL(WTF::RefCountedLeakCounter, nodeCounter, ("WebCoreNode"));
</span><del>-DEFINE_DEBUG_ONLY_GLOBAL(HashSet<Node*>, ignoreSet, );
</del><span class="cx">
</span><span class="cx"> #ifndef NDEBUG
</span><span class="cx"> static bool shouldIgnoreLeaks = false;
</span><ins>+
+static HashSet<Node*>& ignoreSet()
+{
+ static NeverDestroyed<HashSet<Node*>> ignore;
+
+ return ignore;
+}
+
</ins><span class="cx"> #endif
</span><span class="cx">
</span><span class="cx"> void Node::startIgnoringLeaks()
</span><span class="lines">@@ -277,7 +284,7 @@
</span><span class="cx"> {
</span><span class="cx"> #ifndef NDEBUG
</span><span class="cx"> if (shouldIgnoreLeaks)
</span><del>- ignoreSet.add(this);
</del><ins>+ ignoreSet().add(this);
</ins><span class="cx"> else
</span><span class="cx"> nodeCounter.increment();
</span><span class="cx"> #endif
</span><span class="lines">@@ -304,7 +311,7 @@
</span><span class="cx"> Node::~Node()
</span><span class="cx"> {
</span><span class="cx"> #ifndef NDEBUG
</span><del>- if (!ignoreSet.remove(this))
</del><ins>+ if (!ignoreSet().remove(this))
</ins><span class="cx"> nodeCounter.decrement();
</span><span class="cx"> #endif
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscgPDFDocumentImagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/cg/PDFDocumentImage.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/cg/PDFDocumentImage.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebCore/platform/graphics/cg/PDFDocumentImage.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -227,6 +227,8 @@
</span><span class="cx">
</span><span class="cx"> void PDFDocumentImage::computeBoundsForCurrentPage()
</span><span class="cx"> {
</span><ins>+ size_t pageCount = CGPDFDocumentGetNumberOfPages(m_document.get());
+ ASSERT(pageCount > 0);
</ins><span class="cx"> CGPDFPageRef cgPage = CGPDFDocumentGetPage(m_document.get(), 1);
</span><span class="cx"> CGRect mediaBox = CGPDFPageGetBoxRect(cgPage, kCGPDFMediaBox);
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformnetworkcfSynchronousResourceHandleCFURLConnectionDelegatecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebCore/platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -169,6 +169,7 @@
</span><span class="cx">
</span><span class="cx"> void SynchronousResourceHandleCFURLConnectionDelegate::didFinishLoading()
</span><span class="cx"> {
</span><ins>+ WTFLogAlways("CFNet - SynchronousResourceHandleCFURLConnectionDelegate::didFinishLoading(handle=%p) (%s)", m_handle, m_handle->firstRequest().url().string().utf8().data());
</ins><span class="cx"> LOG(Network, "CFNet - SynchronousResourceHandleCFURLConnectionDelegate::didFinishLoading(handle=%p) (%s)", m_handle, m_handle->firstRequest().url().string().utf8().data());
</span><span class="cx">
</span><span class="cx"> #if USE(QUICK_LOOK)
</span></span></pre></div>
<a id="trunkSourceWebKitWebKitvcxprojWebKitWebKitvcxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/WebKit.vcxproj/WebKit/WebKit.vcxproj (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/WebKit.vcxproj/WebKit/WebKit.vcxproj        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/WebKit.vcxproj/WebKit/WebKit.vcxproj        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -191,6 +191,9 @@
</span><span class="cx"> <Link />
</span><span class="cx"> <ClCompile />
</span><span class="cx"> <Link />
</span><ins>+ <Link>
+ <OptimizeReferences>false</OptimizeReferences>
+ </Link>
</ins><span class="cx"> </ItemDefinitionGroup>
</span><span class="cx"> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_WinCairo|Win32'">
</span><span class="cx"> <ClCompile />
</span><span class="lines">@@ -276,6 +279,11 @@
</span><span class="cx"> <Link />
</span><span class="cx"> <Link />
</span><span class="cx"> </ItemDefinitionGroup>
</span><ins>+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Link>
+ <EnableCOMDATFolding>false</EnableCOMDATFolding>
+ </Link>
+ </ItemDefinitionGroup>
</ins><span class="cx"> <ItemGroup>
</span><span class="cx"> <ClCompile Include="..\..\cf\WebCoreSupport\WebInspectorClientCF.cpp" />
</span><span class="cx"> <ClCompile Include="..\..\win\AccessibleBase.cpp" />
</span></span></pre></div>
<a id="trunkSourceWebKitwinAccessibleBasecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/AccessibleBase.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/AccessibleBase.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/AccessibleBase.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -64,13 +64,13 @@
</span><span class="cx"> ASSERT_ARG(obj, obj);
</span><span class="cx"> m_object->setWrapper(this);
</span><span class="cx"> ++gClassCount;
</span><del>- gClassNameCount.add("AccessibleBase");
</del><ins>+ gClassNameCount().add("AccessibleBase");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> AccessibleBase::~AccessibleBase()
</span><span class="cx"> {
</span><span class="cx"> --gClassCount;
</span><del>- gClassNameCount.remove("AccessibleBase");
</del><ins>+ gClassNameCount().remove("AccessibleBase");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> AccessibleBase* AccessibleBase::createInstance(AccessibilityObject* obj, HWND window)
</span></span></pre></div>
<a id="trunkSourceWebKitwinCFDictionaryPropertyBagcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/CFDictionaryPropertyBag.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/CFDictionaryPropertyBag.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/CFDictionaryPropertyBag.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -33,16 +33,16 @@
</span><span class="cx"> // CFDictionaryPropertyBag -----------------------------------------------
</span><span class="cx">
</span><span class="cx"> CFDictionaryPropertyBag::CFDictionaryPropertyBag()
</span><del>-: m_refCount(0)
</del><ins>+ : m_refCount(0)
</ins><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("CFDictionaryPropertyBag");
</del><ins>+ gClassNameCount().add("CFDictionaryPropertyBag");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> CFDictionaryPropertyBag::~CFDictionaryPropertyBag()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("CFDictionaryPropertyBag");
</del><ins>+ gClassNameCount().remove("CFDictionaryPropertyBag");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> COMPtr<CFDictionaryPropertyBag> CFDictionaryPropertyBag::createInstance()
</span></span></pre></div>
<a id="trunkSourceWebKitwinChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/ChangeLog (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/ChangeLog        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/ChangeLog        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -1,3 +1,175 @@
</span><ins>+2014-09-25 Brent Fulgham <bfulgham@apple.com>
+
+ [Win] Debug builds of TestWebKitAPI are crashing.
+ https://bugs.webkit.org/show_bug.cgi?id=133553
+
+ Reviewed by Dean Jackson.
+
+ Switch from global static HashTable to a NeverDestroyed object.
+ Modify all accessors of the global static to use the new
+ NeverDestroyed accessor method.
+
+ * AccessibleBase.cpp:
+ (AccessibleBase::AccessibleBase):
+ (AccessibleBase::~AccessibleBase):
+ * CFDictionaryPropertyBag.cpp:
+ (CFDictionaryPropertyBag::CFDictionaryPropertyBag):
+ (CFDictionaryPropertyBag::~CFDictionaryPropertyBag):
+ * DefaultDownloadDelegate.cpp:
+ (DefaultDownloadDelegate::DefaultDownloadDelegate):
+ (DefaultDownloadDelegate::~DefaultDownloadDelegate):
+ * DefaultPolicyDelegate.cpp:
+ (DefaultPolicyDelegate::DefaultPolicyDelegate):
+ (DefaultPolicyDelegate::~DefaultPolicyDelegate):
+ * MemoryStream.cpp:
+ (MemoryStream::MemoryStream):
+ (MemoryStream::~MemoryStream):
+ * WebActionPropertyBag.cpp:
+ (WebActionPropertyBag::WebActionPropertyBag):
+ (WebActionPropertyBag::~WebActionPropertyBag):
+ * WebArchive.cpp:
+ (WebArchive::WebArchive):
+ (WebArchive::~WebArchive):
+ * WebBackForwardList.cpp:
+ (WebBackForwardList::WebBackForwardList):
+ (WebBackForwardList::~WebBackForwardList):
+ * WebCache.cpp:
+ (WebCache::WebCache):
+ (WebCache::~WebCache):
+ * WebCookieManager.cpp:
+ (WebCookieManager::WebCookieManager):
+ (WebCookieManager::~WebCookieManager):
+ * WebCoreStatistics.cpp:
+ (WebCoreStatistics::WebCoreStatistics):
+ (WebCoreStatistics::~WebCoreStatistics):
+ * WebDataSource.cpp:
+ (WebDataSource::~WebDataSource):
+ * WebDatabaseManager.cpp:
+ (WebDatabaseManager::WebDatabaseManager):
+ (WebDatabaseManager::~WebDatabaseManager):
+ * WebDocumentLoader.cpp:
+ (WebDocumentLoader::WebDocumentLoader):
+ (WebDocumentLoader::~WebDocumentLoader):
+ * WebDownload.cpp:
+ (WebDownload::WebDownload):
+ (WebDownload::~WebDownload):
+ * WebDropSource.cpp:
+ (WebDropSource::WebDropSource):
+ (WebDropSource::~WebDropSource):
+ * WebElementPropertyBag.cpp:
+ (WebElementPropertyBag::WebElementPropertyBag):
+ (WebElementPropertyBag::~WebElementPropertyBag):
+ * WebError.cpp:
+ (WebError::WebError):
+ (WebError::~WebError):
+ * WebFrame.cpp:
+ (WebFrame::WebFrame):
+ (WebFrame::~WebFrame):
+ * WebFramePolicyListener.cpp:
+ (WebFramePolicyListener::WebFramePolicyListener):
+ (WebFramePolicyListener::~WebFramePolicyListener):
+ * WebGeolocationPolicyListener.cpp:
+ (WebGeolocationPolicyListener::WebGeolocationPolicyListener):
+ (WebGeolocationPolicyListener::~WebGeolocationPolicyListener):
+ * WebGeolocationPosition.cpp:
+ (WebGeolocationPosition::WebGeolocationPosition):
+ (WebGeolocationPosition::~WebGeolocationPosition):
+ * WebHTMLRepresentation.cpp:
+ (WebHTMLRepresentation::WebHTMLRepresentation):
+ (WebHTMLRepresentation::~WebHTMLRepresentation):
+ * WebHistory.cpp:
+ (WebHistory::WebHistory):
+ (WebHistory::~WebHistory):
+ * WebHistoryItem.cpp:
+ (WebHistoryItem::WebHistoryItem):
+ (WebHistoryItem::~WebHistoryItem):
+ * WebIconDatabase.cpp:
+ (WebIconDatabase::WebIconDatabase):
+ (WebIconDatabase::~WebIconDatabase):
+ * WebInspector.cpp:
+ (WebInspector::WebInspector):
+ (WebInspector::~WebInspector):
+ * WebJavaScriptCollector.cpp:
+ (WebJavaScriptCollector::WebJavaScriptCollector):
+ (WebJavaScriptCollector::~WebJavaScriptCollector):
+ * WebKitClassFactory.cpp:
+ (WebKitClassFactory::WebKitClassFactory):
+ (WebKitClassFactory::~WebKitClassFactory):
+ * WebKitDLL.cpp: Also switch to NeverDestroyed HashTable for
+ the global class name count.
+ * WebKitDLL.h:
+ * WebKitStatistics.cpp:
+ (WebKitStatistics::WebKitStatistics):
+ (WebKitStatistics::~WebKitStatistics):
+ (WebKitStatistics::comClassNameCounts):
+ * WebMutableURLRequest.cpp:
+ (WebMutableURLRequest::WebMutableURLRequest):
+ (WebMutableURLRequest::~WebMutableURLRequest):
+ * WebNavigationData.cpp:
+ (WebNavigationData::WebNavigationData):
+ (WebNavigationData::~WebNavigationData):
+ * WebNotification.cpp:
+ (WebNotification::WebNotification):
+ (WebNotification::~WebNotification):
+ * WebNotificationCenter.cpp:
+ (WebNotificationCenter::WebNotificationCenter):
+ (WebNotificationCenter::~WebNotificationCenter):
+ * WebPreferences.cpp:
+ (webPreferencesInstances):
+ (WebPreferences::WebPreferences):
+ (WebPreferences::~WebPreferences):
+ (WebPreferences::getInstanceForIdentifier):
+ (WebPreferences::setInstance):
+ (WebPreferences::removeReferenceForIdentifier):
+ * WebResource.cpp:
+ (WebResource::WebResource):
+ (WebResource::~WebResource):
+ * WebScriptObject.cpp:
+ (WebScriptObject::WebScriptObject):
+ (WebScriptObject::~WebScriptObject):
+ * WebScriptWorld.cpp:
+ (WebScriptWorld::WebScriptWorld):
+ (WebScriptWorld::~WebScriptWorld):
+ * WebSecurityOrigin.cpp:
+ (WebSecurityOrigin::WebSecurityOrigin):
+ (WebSecurityOrigin::~WebSecurityOrigin):
+ * WebSerializedJSValue.cpp:
+ (WebSerializedJSValue::WebSerializedJSValue):
+ (WebSerializedJSValue::~WebSerializedJSValue):
+ * WebTextRenderer.cpp:
+ (WebTextRenderer::WebTextRenderer):
+ (WebTextRenderer::~WebTextRenderer):
+ * WebURLAuthenticationChallenge.cpp:
+ (WebURLAuthenticationChallenge::WebURLAuthenticationChallenge):
+ (WebURLAuthenticationChallenge::~WebURLAuthenticationChallenge):
+ * WebURLAuthenticationChallengeSender.cpp:
+ (WebURLAuthenticationChallengeSender::WebURLAuthenticationChallengeSender):
+ (WebURLAuthenticationChallengeSender::~WebURLAuthenticationChallengeSender):
+ * WebURLCredential.cpp:
+ (WebURLCredential::WebURLCredential):
+ (WebURLCredential::~WebURLCredential):
+ * WebURLProtectionSpace.cpp:
+ (WebURLProtectionSpace::WebURLProtectionSpace):
+ (WebURLProtectionSpace::~WebURLProtectionSpace):
+ * WebURLResponse.cpp:
+ (:m_refCount):
+ (WebURLResponse::~WebURLResponse):
+ * WebUserContentURLPattern.cpp:
+ (WebUserContentURLPattern::WebUserContentURLPattern):
+ (WebUserContentURLPattern::~WebUserContentURLPattern):
+ * WebView.cpp:
+ (pendingDeleteBackingStoreSet): Switch from a global static
+ value to a NeverDestroyed object wrapped by an accessor function.
+ (WebView::WebView): Ditto.
+ (WebView::~WebView): Ditto.
+ (WebView::deleteBackingStore): Ditto.
+ (WebView::deleteBackingStoreSoon): Ditto,
+ (WebView::cancelDeleteBackingStoreSoon): Ditto.
+ * WebWorkersPrivate.cpp: Switch from a global static value for
+ the preferences objects t a NeverDestroyed container.
+ (WebWorkersPrivate::WebWorkersPrivate): Ditto.
+ (WebWorkersPrivate::~WebWorkersPrivate): Ditto.
+
</ins><span class="cx"> 2014-09-25 Christophe Dumez <cdumez@apple.com>
</span><span class="cx">
</span><span class="cx"> Use is<HTML*Element>() instead of isHTML*Element() - Part 2
</span></span></pre></div>
<a id="trunkSourceWebKitwinDefaultDownloadDelegatecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/DefaultDownloadDelegate.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/DefaultDownloadDelegate.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/DefaultDownloadDelegate.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -47,13 +47,13 @@
</span><span class="cx"> : m_refCount(0)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("DefaultDownloadDelegate");
</del><ins>+ gClassNameCount().add("DefaultDownloadDelegate");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> DefaultDownloadDelegate::~DefaultDownloadDelegate()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("DefaultDownloadDelegate");
</del><ins>+ gClassNameCount().remove("DefaultDownloadDelegate");
</ins><span class="cx"> HashSet<IWebDownload*>::iterator i = m_downloads.begin();
</span><span class="cx"> for (;i != m_downloads.end(); ++i)
</span><span class="cx"> (*i)->Release();
</span></span></pre></div>
<a id="trunkSourceWebKitwinDefaultPolicyDelegatecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/DefaultPolicyDelegate.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/DefaultPolicyDelegate.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/DefaultPolicyDelegate.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -44,13 +44,13 @@
</span><span class="cx"> : m_refCount(0)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("DefaultPolicyDelegate");
</del><ins>+ gClassNameCount().add("DefaultPolicyDelegate");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> DefaultPolicyDelegate::~DefaultPolicyDelegate()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("DefaultPolicyDelegate");
</del><ins>+ gClassNameCount().remove("DefaultPolicyDelegate");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> DefaultPolicyDelegate* DefaultPolicyDelegate::sharedInstance()
</span></span></pre></div>
<a id="trunkSourceWebKitwinMemoryStreamcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/MemoryStream.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/MemoryStream.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/MemoryStream.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -33,18 +33,18 @@
</span><span class="cx"> // MemoryStream ---------------------------------------------------------------
</span><span class="cx">
</span><span class="cx"> MemoryStream::MemoryStream(PassRefPtr<SharedBuffer> buffer)
</span><del>-: m_refCount(0)
-, m_buffer(buffer)
-, m_pos(0)
</del><ins>+ : m_refCount(0)
+ , m_buffer(buffer)
+ , m_pos(0)
</ins><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("MemoryStream");
</del><ins>+ gClassNameCount().add("MemoryStream");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> MemoryStream::~MemoryStream()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("MemoryStream");
</del><ins>+ gClassNameCount().remove("MemoryStream");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> COMPtr<MemoryStream> MemoryStream::createInstance(PassRefPtr<SharedBuffer> buffer)
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebActionPropertyBagcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebActionPropertyBag.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebActionPropertyBag.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebActionPropertyBag.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -47,13 +47,13 @@
</span><span class="cx"> , m_frame(frame)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebActionPropertyBag");
</del><ins>+ gClassNameCount().add("WebActionPropertyBag");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebActionPropertyBag::~WebActionPropertyBag()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebActionPropertyBag");
</del><ins>+ gClassNameCount().remove("WebActionPropertyBag");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebActionPropertyBag* WebActionPropertyBag::createInstance(const NavigationAction& action, PassRefPtr<HTMLFormElement> form, PassRefPtr<Frame> frame)
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebArchivecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebArchive.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebArchive.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebArchive.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -55,13 +55,13 @@
</span><span class="cx"> , m_archive(coreArchive)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebArchive");
</del><ins>+ gClassNameCount().add("WebArchive");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebArchive::~WebArchive()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebArchive");
</del><ins>+ gClassNameCount().remove("WebArchive");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> HRESULT STDMETHODCALLTYPE WebArchive::QueryInterface(REFIID riid, void** ppvObject)
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebBackForwardListcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebBackForwardList.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebBackForwardList.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebBackForwardList.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -56,7 +56,7 @@
</span><span class="cx"> backForwardListWrappers().set(m_backForwardList.get(), this);
</span><span class="cx">
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebBackForwardList");
</del><ins>+ gClassNameCount().add("WebBackForwardList");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebBackForwardList::~WebBackForwardList()
</span><span class="lines">@@ -67,7 +67,7 @@
</span><span class="cx"> backForwardListWrappers().remove(m_backForwardList.get());
</span><span class="cx">
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebBackForwardList");
</del><ins>+ gClassNameCount().remove("WebBackForwardList");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebBackForwardList* WebBackForwardList::createInstance(PassRefPtr<BackForwardList> backForwardList)
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebCachecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebCache.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebCache.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebCache.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -40,16 +40,16 @@
</span><span class="cx"> // WebCache ---------------------------------------------------------------------------
</span><span class="cx">
</span><span class="cx"> WebCache::WebCache()
</span><del>-: m_refCount(0)
</del><ins>+ : m_refCount(0)
</ins><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebCache");
</del><ins>+ gClassNameCount().add("WebCache");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebCache::~WebCache()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebCache");
</del><ins>+ gClassNameCount().remove("WebCache");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebCache* WebCache::createInstance()
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebCookieManagercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebCookieManager.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebCookieManager.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebCookieManager.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -40,13 +40,13 @@
</span><span class="cx"> : m_refCount(0)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebCookieManager");
</del><ins>+ gClassNameCount().add("WebCookieManager");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebCookieManager::~WebCookieManager()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebCookieManager");
</del><ins>+ gClassNameCount().remove("WebCookieManager");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // IUnknown ---------------------------------------------------------------
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebCoreStatisticscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebCoreStatistics.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebCoreStatistics.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebCoreStatistics.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -49,13 +49,13 @@
</span><span class="cx"> : m_refCount(0)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebCoreStatistics");
</del><ins>+ gClassNameCount().add("WebCoreStatistics");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebCoreStatistics::~WebCoreStatistics()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebCoreStatistics");
</del><ins>+ gClassNameCount().remove("WebCoreStatistics");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebCoreStatistics* WebCoreStatistics::createInstance()
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebDataSourcecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebDataSource.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebDataSource.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebDataSource.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -61,7 +61,7 @@
</span><span class="cx"> {
</span><span class="cx"> WebDataSourceCount++;
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebDataSource");
</del><ins>+ gClassNameCount().add("WebDataSource");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebDataSource::~WebDataSource()
</span><span class="lines">@@ -70,7 +70,7 @@
</span><span class="cx"> m_loader->detachDataSource();
</span><span class="cx"> WebDataSourceCount--;
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebDataSource");
</del><ins>+ gClassNameCount().remove("WebDataSource");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebDataSource* WebDataSource::createInstance(WebDocumentLoader* loader)
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebDatabaseManagercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebDatabaseManager.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebDatabaseManager.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebDatabaseManager.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -158,13 +158,13 @@
</span><span class="cx"> : m_refCount(0)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebDatabaseManager");
</del><ins>+ gClassNameCount().add("WebDatabaseManager");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebDatabaseManager::~WebDatabaseManager()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebDatabaseManager");
</del><ins>+ gClassNameCount().remove("WebDatabaseManager");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // IUnknown ------------------------------------------------------------------------
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebDocumentLoadercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebDocumentLoader.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebDocumentLoader.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebDocumentLoader.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -36,7 +36,7 @@
</span><span class="cx"> , m_detachedDataSource(0)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebDocumentLoader");
</del><ins>+ gClassNameCount().add("WebDocumentLoader");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> PassRefPtr<WebDocumentLoader> WebDocumentLoader::create(const ResourceRequest& req, const SubstituteData& data)
</span><span class="lines">@@ -47,7 +47,7 @@
</span><span class="cx"> WebDocumentLoader::~WebDocumentLoader()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebDocumentLoader");
</del><ins>+ gClassNameCount().remove("WebDocumentLoader");
</ins><span class="cx"> if (m_dataSource) {
</span><span class="cx"> ASSERT(!m_detachedDataSource);
</span><span class="cx"> m_dataSource->Release();
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebDownloadcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebDownload.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebDownload.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebDownload.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -56,7 +56,7 @@
</span><span class="cx"> : m_refCount(0)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebDownload");
</del><ins>+ gClassNameCount().add("WebDownload");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebDownload::~WebDownload()
</span><span class="lines">@@ -64,7 +64,7 @@
</span><span class="cx"> LOG(Download, "WebDownload - Destroying download (%p)", this);
</span><span class="cx"> cancel();
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebDownload");
</del><ins>+ gClassNameCount().remove("WebDownload");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebDownload* WebDownload::createInstance()
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebDropSourcecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebDropSource.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebDropSource.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebDropSource.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -57,13 +57,13 @@
</span><span class="cx"> , m_webView(webView)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebDropSource");
</del><ins>+ gClassNameCount().add("WebDropSource");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebDropSource::~WebDropSource()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebDropSource");
</del><ins>+ gClassNameCount().remove("WebDropSource");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> STDMETHODIMP WebDropSource::QueryInterface(REFIID riid, void** ppvObject)
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebElementPropertyBagcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebElementPropertyBag.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebElementPropertyBag.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebElementPropertyBag.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -48,13 +48,13 @@
</span><span class="cx"> , m_refCount(0)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebElementPropertyBag");
</del><ins>+ gClassNameCount().add("WebElementPropertyBag");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebElementPropertyBag::~WebElementPropertyBag()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebElementPropertyBag");
</del><ins>+ gClassNameCount().remove("WebElementPropertyBag");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebElementPropertyBag* WebElementPropertyBag::createInstance(const HitTestResult& result)
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebErrorcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebError.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebError.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebError.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -44,13 +44,13 @@
</span><span class="cx"> , m_userInfo(userInfo)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebError");
</del><ins>+ gClassNameCount().add("WebError");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebError::~WebError()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebError");
</del><ins>+ gClassNameCount().remove("WebError");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebError* WebError::createInstance(const ResourceError& error, IPropertyBag* userInfo)
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebFramecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebFrame.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebFrame.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebFrame.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -253,7 +253,7 @@
</span><span class="cx"> {
</span><span class="cx"> WebFrameCount++;
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebFrame");
</del><ins>+ gClassNameCount().add("WebFrame");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebFrame::~WebFrame()
</span><span class="lines">@@ -261,7 +261,7 @@
</span><span class="cx"> delete d;
</span><span class="cx"> WebFrameCount--;
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebFrame");
</del><ins>+ gClassNameCount().remove("WebFrame");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebFrame* WebFrame::createInstance()
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebFramePolicyListenercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebFramePolicyListener.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebFramePolicyListener.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebFramePolicyListener.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -41,13 +41,13 @@
</span><span class="cx"> , m_frame(frame)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebFramePolicyListener");
</del><ins>+ gClassNameCount().add("WebFramePolicyListener");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebFramePolicyListener::~WebFramePolicyListener()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebFramePolicyListener");
</del><ins>+ gClassNameCount().remove("WebFramePolicyListener");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebFramePolicyListener* WebFramePolicyListener::createInstance(PassRefPtr<Frame> frame)
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebGeolocationPolicyListenercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebGeolocationPolicyListener.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebGeolocationPolicyListener.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebGeolocationPolicyListener.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -43,13 +43,13 @@
</span><span class="cx"> , m_geolocation(geolocation)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebGeolocationPolicyListener");
</del><ins>+ gClassNameCount().add("WebGeolocationPolicyListener");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebGeolocationPolicyListener::~WebGeolocationPolicyListener()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebGeolocationPolicyListener");
</del><ins>+ gClassNameCount().remove("WebGeolocationPolicyListener");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // IUnknown -------------------------------------------------------------------
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebGeolocationPositioncpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebGeolocationPosition.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebGeolocationPosition.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebGeolocationPosition.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -40,13 +40,13 @@
</span><span class="cx"> : m_refCount(0)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebGeolocationPosition");
</del><ins>+ gClassNameCount().add("WebGeolocationPosition");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebGeolocationPosition::~WebGeolocationPosition()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebGeolocationPosition");
</del><ins>+ gClassNameCount().remove("WebGeolocationPosition");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> HRESULT WebGeolocationPosition::QueryInterface(REFIID riid, void** ppvObject)
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebHTMLRepresentationcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebHTMLRepresentation.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebHTMLRepresentation.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebHTMLRepresentation.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -45,7 +45,7 @@
</span><span class="cx"> {
</span><span class="cx"> WebHTMLRepresentationCount++;
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebHTMLRepresentation");
</del><ins>+ gClassNameCount().add("WebHTMLRepresentation");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebHTMLRepresentation::~WebHTMLRepresentation()
</span><span class="lines">@@ -57,7 +57,7 @@
</span><span class="cx">
</span><span class="cx"> WebHTMLRepresentationCount--;
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebHTMLRepresentation");
</del><ins>+ gClassNameCount().remove("WebHTMLRepresentation");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebHTMLRepresentation* WebHTMLRepresentation::createInstance(WebFrame* frame)
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebHistorycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebHistory.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebHistory.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebHistory.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -158,7 +158,7 @@
</span><span class="cx"> , m_preferences(0)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebHistory");
</del><ins>+ gClassNameCount().add("WebHistory");
</ins><span class="cx">
</span><span class="cx"> m_preferences = WebPreferences::sharedStandardPreferences();
</span><span class="cx"> }
</span><span class="lines">@@ -166,7 +166,7 @@
</span><span class="cx"> WebHistory::~WebHistory()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebHistory");
</del><ins>+ gClassNameCount().remove("WebHistory");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebHistory* WebHistory::createInstance()
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebHistoryItemcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebHistoryItem.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebHistoryItem.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebHistoryItem.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -56,7 +56,7 @@
</span><span class="cx"> historyItemWrappers().set(m_historyItem.get(), this);
</span><span class="cx">
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebHistoryItem");
</del><ins>+ gClassNameCount().add("WebHistoryItem");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebHistoryItem::~WebHistoryItem()
</span><span class="lines">@@ -65,7 +65,7 @@
</span><span class="cx"> historyItemWrappers().remove(m_historyItem.get());
</span><span class="cx">
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebHistoryItem");
</del><ins>+ gClassNameCount().remove("WebHistoryItem");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebHistoryItem* WebHistoryItem::createInstance()
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebIconDatabasecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebIconDatabase.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebIconDatabase.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebIconDatabase.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -50,17 +50,17 @@
</span><span class="cx"> WebIconDatabase* WebIconDatabase::m_sharedWebIconDatabase = 0;
</span><span class="cx">
</span><span class="cx"> WebIconDatabase::WebIconDatabase()
</span><del>-: m_refCount(0)
-, m_deliveryRequested(false)
</del><ins>+ : m_refCount(0)
+ , m_deliveryRequested(false)
</ins><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebIconDatabase");
</del><ins>+ gClassNameCount().add("WebIconDatabase");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebIconDatabase::~WebIconDatabase()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebIconDatabase");
</del><ins>+ gClassNameCount().remove("WebIconDatabase");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void WebIconDatabase::init()
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebInspectorcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebInspector.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebInspector.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebInspector.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -55,13 +55,13 @@
</span><span class="cx"> ASSERT_ARG(webView, webView);
</span><span class="cx">
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebInspector");
</del><ins>+ gClassNameCount().add("WebInspector");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebInspector::~WebInspector()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebInspector");
</del><ins>+ gClassNameCount().remove("WebInspector");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebInspectorFrontendClient* WebInspector::frontendClient()
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebJavaScriptCollectorcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebJavaScriptCollector.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebJavaScriptCollector.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebJavaScriptCollector.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -42,13 +42,13 @@
</span><span class="cx"> : m_refCount(0)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebJavaScriptCollector");
</del><ins>+ gClassNameCount().add("WebJavaScriptCollector");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebJavaScriptCollector::~WebJavaScriptCollector()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebJavaScriptCollector");
</del><ins>+ gClassNameCount().remove("WebJavaScriptCollector");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebJavaScriptCollector* WebJavaScriptCollector::createInstance()
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebKitClassFactorycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebKitClassFactory.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebKitClassFactory.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebKitClassFactory.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -88,13 +88,13 @@
</span><span class="cx"> WTF::initializeMainThread();
</span><span class="cx">
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebKitClassFactory");
</del><ins>+ gClassNameCount().add("WebKitClassFactory");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebKitClassFactory::~WebKitClassFactory()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebKitClassFactory");
</del><ins>+ gClassNameCount().remove("WebKitClassFactory");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // IUnknown -------------------------------------------------------------------
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebKitDLLcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebKitDLL.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebKitDLL.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebKitDLL.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2006, 2007 Apple Inc. All rights reserved.
</del><ins>+ * Copyright (C) 2006, 2007, 2014 Apple Inc. All rights reserved.
</ins><span class="cx"> *
</span><span class="cx"> * Redistribution and use in source and binary forms, with or without
</span><span class="cx"> * modification, are permitted provided that the following conditions
</span><span class="lines">@@ -40,13 +40,13 @@
</span><span class="cx"> #include <WebCore/Widget.h>
</span><span class="cx"> #include <olectl.h>
</span><span class="cx"> #include <wchar.h>
</span><ins>+#include <wtf/NeverDestroyed.h>
</ins><span class="cx"> #include <wtf/Vector.h>
</span><span class="cx">
</span><span class="cx"> using namespace WebCore;
</span><span class="cx">
</span><span class="cx"> ULONG gLockCount;
</span><span class="cx"> ULONG gClassCount;
</span><del>-HashCountedSet<String> gClassNameCount;
</del><span class="cx"> HINSTANCE gInstance;
</span><span class="cx">
</span><span class="cx"> #define CLSID_FOR_CLASS(cls) CLSID_##cls,
</span><span class="lines">@@ -55,6 +55,13 @@
</span><span class="cx"> };
</span><span class="cx"> #undef CLSID_FOR_CLASS
</span><span class="cx">
</span><ins>+HashCountedSet<String>& gClassNameCount()
+{
+ static NeverDestroyed<HashCountedSet<String>> gClassNameCount;
+ return gClassNameCount.get();
+}
+
+
</ins><span class="cx"> STDAPI_(BOOL) DllMain( HMODULE hModule, DWORD ul_reason_for_call, LPVOID /*lpReserved*/)
</span><span class="cx"> {
</span><span class="cx"> switch (ul_reason_for_call) {
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebKitDLLh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebKitDLL.h (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebKitDLL.h        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebKitDLL.h        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -48,7 +48,7 @@
</span><span class="cx">
</span><span class="cx"> extern ULONG gLockCount;
</span><span class="cx"> extern ULONG gClassCount;
</span><del>-extern HashCountedSet<WTF::String> gClassNameCount;
</del><ins>+extern HashCountedSet<WTF::String>& gClassNameCount();
</ins><span class="cx"> extern HINSTANCE gInstance;
</span><span class="cx"> extern CLSID gRegCLSIDs[];
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebKitStatisticscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebKitStatistics.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebKitStatistics.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebKitStatistics.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2007 Apple Inc. All rights reserved.
</del><ins>+ * Copyright (C) 2007, 2014 Apple Inc. All rights reserved.
</ins><span class="cx"> *
</span><span class="cx"> * Redistribution and use in source and binary forms, with or without
</span><span class="cx"> * modification, are permitted provided that the following conditions
</span><span class="lines">@@ -45,16 +45,16 @@
</span><span class="cx"> // WebKitStatistics ---------------------------------------------------------------------------
</span><span class="cx">
</span><span class="cx"> WebKitStatistics::WebKitStatistics()
</span><del>-: m_refCount(0)
</del><ins>+ : m_refCount(0)
</ins><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebKitStatistics");
</del><ins>+ gClassNameCount().add("WebKitStatistics");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebKitStatistics::~WebKitStatistics()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebKitStatistics");
</del><ins>+ gClassNameCount().remove("WebKitStatistics");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebKitStatistics* WebKitStatistics::createInstance()
</span><span class="lines">@@ -138,11 +138,10 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT STDMETHODCALLTYPE WebKitStatistics::comClassNameCounts(
- /* [retval][out] */ BSTR *output)
</del><ins>+HRESULT WebKitStatistics::comClassNameCounts(BSTR* output)
</ins><span class="cx"> {
</span><span class="cx"> StringBuilder builder;
</span><del>- for (auto& slot : gClassNameCount) {
</del><ins>+ for (auto& slot : gClassNameCount()) {
</ins><span class="cx"> builder.appendNumber(slot.value);
</span><span class="cx"> builder.append('\t');
</span><span class="cx"> builder.append(slot.key);
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebMutableURLRequestcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebMutableURLRequest.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebMutableURLRequest.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebMutableURLRequest.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -54,7 +54,7 @@
</span><span class="cx"> , m_isMutable(isMutable)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebMutableURLRequest");
</del><ins>+ gClassNameCount().add("WebMutableURLRequest");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebMutableURLRequest* WebMutableURLRequest::createInstance()
</span><span class="lines">@@ -98,7 +98,7 @@
</span><span class="cx"> WebMutableURLRequest::~WebMutableURLRequest()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebMutableURLRequest");
</del><ins>+ gClassNameCount().remove("WebMutableURLRequest");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // IUnknown -------------------------------------------------------------------
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebNavigationDatacpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebNavigationData.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebNavigationData.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebNavigationData.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -72,13 +72,13 @@
</span><span class="cx">
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebNavigationData");
</del><ins>+ gClassNameCount().add("WebNavigationData");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebNavigationData::~WebNavigationData()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebNavigationData");
</del><ins>+ gClassNameCount().remove("WebNavigationData");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebNavigationData* WebNavigationData::createInstance(const String& url, const String& title, IWebURLRequest* request, IWebURLResponse* response, bool hasSubstituteData, const String& clientRedirectSource)
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebNotificationcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebNotification.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebNotification.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebNotification.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -46,7 +46,7 @@
</span><span class="cx"> m_userInfo->AddRef();
</span><span class="cx">
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebNotification");
</del><ins>+ gClassNameCount().add("WebNotification");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebNotification::~WebNotification()
</span><span class="lines">@@ -59,7 +59,7 @@
</span><span class="cx"> m_userInfo->Release();
</span><span class="cx">
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebNotification");
</del><ins>+ gClassNameCount().remove("WebNotification");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebNotification* WebNotification::createInstance(BSTR name /*=0*/, IUnknown* anObject /*=0*/, IPropertyBag* userInfo /*=0*/)
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebNotificationCentercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebNotificationCenter.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebNotificationCenter.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebNotificationCenter.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -59,13 +59,13 @@
</span><span class="cx"> , d(adoptPtr(new WebNotificationCenterPrivate))
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebNotificationCenter");
</del><ins>+ gClassNameCount().add("WebNotificationCenter");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebNotificationCenter::~WebNotificationCenter()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebNotificationCenter");
</del><ins>+ gClassNameCount().remove("WebNotificationCenter");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebNotificationCenter* WebNotificationCenter::createInstance()
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebPreferencescpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebPreferences.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebPreferences.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebPreferences.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -40,6 +40,7 @@
</span><span class="cx"> #include <shlobj.h>
</span><span class="cx"> #include <wchar.h>
</span><span class="cx"> #include <wtf/HashMap.h>
</span><ins>+#include <wtf/NeverDestroyed.h>
</ins><span class="cx"> #include <wtf/StdLibExtras.h>
</span><span class="cx"> #include <wtf/text/CString.h>
</span><span class="cx"> #include <wtf/text/StringHash.h>
</span><span class="lines">@@ -101,7 +102,11 @@
</span><span class="cx">
</span><span class="cx"> static CFDictionaryRef defaultSettings;
</span><span class="cx">
</span><del>-static HashMap<WTF::String, COMPtr<WebPreferences> > webPreferencesInstances;
</del><ins>+static HashMap<WTF::String, COMPtr<WebPreferences>>& webPreferencesInstances()
+{
+ static NeverDestroyed<HashMap<WTF::String, COMPtr<WebPreferences>>> webPreferencesInstances;
+ return webPreferencesInstances;
+}
</ins><span class="cx">
</span><span class="cx"> WebPreferences* WebPreferences::sharedStandardPreferences()
</span><span class="cx"> {
</span><span class="lines">@@ -122,13 +127,13 @@
</span><span class="cx"> , m_numWebViews(0)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebPreferences");
</del><ins>+ gClassNameCount().add("WebPreferences");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebPreferences::~WebPreferences()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebPreferences");
</del><ins>+ gClassNameCount().remove("WebPreferences");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebPreferences* WebPreferences::createInstance()
</span><span class="lines">@@ -157,7 +162,7 @@
</span><span class="cx"> if (identifierString.isEmpty())
</span><span class="cx"> return sharedStandardPreferences();
</span><span class="cx">
</span><del>- return webPreferencesInstances.get(identifierString).get();
</del><ins>+ return webPreferencesInstances().get(identifierString).get();
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void WebPreferences::setInstance(WebPreferences* instance, BSTR identifier)
</span><span class="lines">@@ -167,20 +172,20 @@
</span><span class="cx"> WTF::String identifierString(identifier, SysStringLen(identifier));
</span><span class="cx"> if (identifierString.isEmpty())
</span><span class="cx"> return;
</span><del>- webPreferencesInstances.add(identifierString, instance);
</del><ins>+ webPreferencesInstances().add(identifierString, instance);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void WebPreferences::removeReferenceForIdentifier(BSTR identifier)
</span><span class="cx"> {
</span><del>- if (!identifier || webPreferencesInstances.isEmpty())
</del><ins>+ if (!identifier || webPreferencesInstances().isEmpty())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> WTF::String identifierString(identifier, SysStringLen(identifier));
</span><span class="cx"> if (identifierString.isEmpty())
</span><span class="cx"> return;
</span><del>- WebPreferences* webPreference = webPreferencesInstances.get(identifierString).get();
</del><ins>+ WebPreferences* webPreference = webPreferencesInstances().get(identifierString).get();
</ins><span class="cx"> if (webPreference && webPreference->m_refCount == 1)
</span><del>- webPreferencesInstances.remove(identifierString);
</del><ins>+ webPreferencesInstances().remove(identifierString);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void WebPreferences::initializeDefaultSettings()
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebResourcecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebResource.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebResource.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebResource.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -44,13 +44,13 @@
</span><span class="cx"> , m_frameName(frameName)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebResource");
</del><ins>+ gClassNameCount().add("WebResource");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebResource::~WebResource()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebResource");
</del><ins>+ gClassNameCount().remove("WebResource");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebResource* WebResource::createInstance(PassRefPtr<WebCore::SharedBuffer> data, const WebCore::ResourceResponse& response)
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebScriptObjectcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebScriptObject.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebScriptObject.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebScriptObject.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -33,16 +33,16 @@
</span><span class="cx"> // WebScriptObject ------------------------------------------------------------
</span><span class="cx">
</span><span class="cx"> WebScriptObject::WebScriptObject()
</span><del>-: m_refCount(0)
</del><ins>+ : m_refCount(0)
</ins><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebScriptObject");
</del><ins>+ gClassNameCount().add("WebScriptObject");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebScriptObject::~WebScriptObject()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebScriptObject");
</del><ins>+ gClassNameCount().remove("WebScriptObject");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // IUnknown -------------------------------------------------------------------
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebScriptWorldcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebScriptWorld.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebScriptWorld.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebScriptWorld.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -49,7 +49,7 @@
</span><span class="cx"> allWorlds().add(m_world.get(), this);
</span><span class="cx">
</span><span class="cx"> ++gClassCount;
</span><del>- gClassNameCount.add("WebScriptWorld");
</del><ins>+ gClassNameCount().add("WebScriptWorld");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebScriptWorld::~WebScriptWorld()
</span><span class="lines">@@ -58,7 +58,7 @@
</span><span class="cx"> allWorlds().remove(m_world.get());
</span><span class="cx">
</span><span class="cx"> --gClassCount;
</span><del>- gClassNameCount.remove("WebScriptWorld");
</del><ins>+ gClassNameCount().remove("WebScriptWorld");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebScriptWorld* WebScriptWorld::standardWorld()
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebSecurityOrigincpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebSecurityOrigin.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebSecurityOrigin.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebSecurityOrigin.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -48,13 +48,13 @@
</span><span class="cx"> , m_securityOrigin(securityOrigin)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebSecurityOrigin");
</del><ins>+ gClassNameCount().add("WebSecurityOrigin");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebSecurityOrigin::~WebSecurityOrigin()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebSecurityOrigin");
</del><ins>+ gClassNameCount().remove("WebSecurityOrigin");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // IUnknown ------------------------------------------------------------------------
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebSerializedJSValuecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebSerializedJSValue.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebSerializedJSValue.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebSerializedJSValue.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -34,13 +34,13 @@
</span><span class="cx"> : m_refCount(0)
</span><span class="cx"> {
</span><span class="cx"> ++gClassCount;
</span><del>- gClassNameCount.add("WebSerializedJSValue");
</del><ins>+ gClassNameCount().add("WebSerializedJSValue");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebSerializedJSValue::~WebSerializedJSValue()
</span><span class="cx"> {
</span><span class="cx"> --gClassCount;
</span><del>- gClassNameCount.remove("WebSerializedJSValue");
</del><ins>+ gClassNameCount().remove("WebSerializedJSValue");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> COMPtr<WebSerializedJSValue> WebSerializedJSValue::createInstance()
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebTextRenderercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebTextRenderer.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebTextRenderer.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebTextRenderer.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -42,13 +42,13 @@
</span><span class="cx"> : m_refCount(0)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebTextRenderer");
</del><ins>+ gClassNameCount().add("WebTextRenderer");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebTextRenderer::~WebTextRenderer()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebTextRenderer");
</del><ins>+ gClassNameCount().remove("WebTextRenderer");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> HRESULT STDMETHODCALLTYPE WebTextRenderer::QueryInterface(const IID &riid, void** ppvObject)
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebURLAuthenticationChallengecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebURLAuthenticationChallenge.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebURLAuthenticationChallenge.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebURLAuthenticationChallenge.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -49,13 +49,13 @@
</span><span class="cx"> , m_sender(sender)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebURLAuthenticationChallenge");
</del><ins>+ gClassNameCount().add("WebURLAuthenticationChallenge");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebURLAuthenticationChallenge::~WebURLAuthenticationChallenge()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebURLAuthenticationChallenge");
</del><ins>+ gClassNameCount().remove("WebURLAuthenticationChallenge");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebURLAuthenticationChallenge* WebURLAuthenticationChallenge::createInstance(const AuthenticationChallenge& authenticationChallenge)
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebURLAuthenticationChallengeSendercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebURLAuthenticationChallengeSender.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebURLAuthenticationChallengeSender.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebURLAuthenticationChallengeSender.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -44,13 +44,13 @@
</span><span class="cx"> {
</span><span class="cx"> ASSERT(m_client);
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebURLAuthenticationChallengeSender");
</del><ins>+ gClassNameCount().add("WebURLAuthenticationChallengeSender");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebURLAuthenticationChallengeSender::~WebURLAuthenticationChallengeSender()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebURLAuthenticationChallengeSender");
</del><ins>+ gClassNameCount().remove("WebURLAuthenticationChallengeSender");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebURLAuthenticationChallengeSender* WebURLAuthenticationChallengeSender::createInstance(PassRefPtr<WebCore::AuthenticationClient> client)
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebURLCredentialcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebURLCredential.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebURLCredential.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebURLCredential.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -39,13 +39,13 @@
</span><span class="cx"> , m_credential(credential)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebURLCredential");
</del><ins>+ gClassNameCount().add("WebURLCredential");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebURLCredential::~WebURLCredential()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebURLCredential");
</del><ins>+ gClassNameCount().remove("WebURLCredential");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebURLCredential* WebURLCredential::createInstance()
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebURLProtectionSpacecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebURLProtectionSpace.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebURLProtectionSpace.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebURLProtectionSpace.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -39,13 +39,13 @@
</span><span class="cx"> , m_protectionSpace(protectionSpace)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebURLProtectionSpace");
</del><ins>+ gClassNameCount().add("WebURLProtectionSpace");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebURLProtectionSpace::~WebURLProtectionSpace()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebURLProtectionSpace");
</del><ins>+ gClassNameCount().remove("WebURLProtectionSpace");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebURLProtectionSpace* WebURLProtectionSpace::createInstance()
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebURLResponsecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebURLResponse.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebURLResponse.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebURLResponse.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -212,13 +212,13 @@
</span><span class="cx"> :m_refCount(0)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebURLResponse");
</del><ins>+ gClassNameCount().add("WebURLResponse");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebURLResponse::~WebURLResponse()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebURLResponse");
</del><ins>+ gClassNameCount().remove("WebURLResponse");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebURLResponse* WebURLResponse::createInstance()
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebUserContentURLPatterncpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebUserContentURLPattern.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebUserContentURLPattern.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebUserContentURLPattern.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -37,13 +37,13 @@
</span><span class="cx"> : m_refCount(0)
</span><span class="cx"> {
</span><span class="cx"> ++gClassCount;
</span><del>- gClassNameCount.add("WebUserContentURLPattern");
</del><ins>+ gClassNameCount().add("WebUserContentURLPattern");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebUserContentURLPattern::~WebUserContentURLPattern()
</span><span class="cx"> {
</span><span class="cx"> --gClassCount;
</span><del>- gClassNameCount.remove("WebUserContentURLPattern");
</del><ins>+ gClassNameCount().remove("WebUserContentURLPattern");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> COMPtr<WebUserContentURLPattern> WebUserContentURLPattern::createInstance()
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebViewcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebView.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebView.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebView.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -202,7 +202,11 @@
</span><span class="cx"> using JSC::JSLock;
</span><span class="cx">
</span><span class="cx"> static HMODULE accessibilityLib;
</span><del>-static HashSet<WebView*> pendingDeleteBackingStoreSet;
</del><ins>+static HashSet<WebView*>& pendingDeleteBackingStoreSet()
+{
+ static NeverDestroyed<HashSet<WebView*>> pendingDeleteBackingStoreSet;
+ return pendingDeleteBackingStoreSet;
+}
</ins><span class="cx">
</span><span class="cx"> static CFStringRef WebKitLocalCacheDefaultsKey = CFSTR("WebKitLocalCache");
</span><span class="cx">
</span><span class="lines">@@ -424,7 +428,7 @@
</span><span class="cx">
</span><span class="cx"> WebViewCount++;
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebView");
</del><ins>+ gClassNameCount().add("WebView");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebView::~WebView()
</span><span class="lines">@@ -445,7 +449,7 @@
</span><span class="cx">
</span><span class="cx"> WebViewCount--;
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebView");
</del><ins>+ gClassNameCount().remove("WebView");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebView* WebView::createInstance()
</span><span class="lines">@@ -815,7 +819,7 @@
</span><span class="cx">
</span><span class="cx"> void WebView::deleteBackingStore()
</span><span class="cx"> {
</span><del>- pendingDeleteBackingStoreSet.remove(this);
</del><ins>+ pendingDeleteBackingStoreSet().remove(this);
</ins><span class="cx">
</span><span class="cx"> if (m_deleteBackingStoreTimerActive) {
</span><span class="cx"> KillTimer(m_viewWindow, DeleteBackingStoreTimer);
</span><span class="lines">@@ -3435,17 +3439,17 @@
</span><span class="cx">
</span><span class="cx"> void WebView::deleteBackingStoreSoon()
</span><span class="cx"> {
</span><del>- if (pendingDeleteBackingStoreSet.size() > 2) {
</del><ins>+ if (pendingDeleteBackingStoreSet().size() > 2) {
</ins><span class="cx"> Vector<WebView*> views;
</span><del>- HashSet<WebView*>::iterator end = pendingDeleteBackingStoreSet.end();
- for (HashSet<WebView*>::iterator it = pendingDeleteBackingStoreSet.begin(); it != end; ++it)
</del><ins>+ HashSet<WebView*>::iterator end = pendingDeleteBackingStoreSet().end();
+ for (HashSet<WebView*>::iterator it = pendingDeleteBackingStoreSet().begin(); it != end; ++it)
</ins><span class="cx"> views.append(*it);
</span><span class="cx"> for (int i = 0; i < views.size(); ++i)
</span><span class="cx"> views[i]->deleteBackingStore();
</span><del>- ASSERT(pendingDeleteBackingStoreSet.isEmpty());
</del><ins>+ ASSERT(pendingDeleteBackingStoreSet().isEmpty());
</ins><span class="cx"> }
</span><span class="cx">
</span><del>- pendingDeleteBackingStoreSet.add(this);
</del><ins>+ pendingDeleteBackingStoreSet().add(this);
</ins><span class="cx"> m_deleteBackingStoreTimerActive = true;
</span><span class="cx"> SetTimer(m_viewWindow, DeleteBackingStoreTimer, delayBeforeDeletingBackingStoreMsec, 0);
</span><span class="cx"> }
</span><span class="lines">@@ -3454,7 +3458,7 @@
</span><span class="cx"> {
</span><span class="cx"> if (!m_deleteBackingStoreTimerActive)
</span><span class="cx"> return;
</span><del>- pendingDeleteBackingStoreSet.remove(this);
</del><ins>+ pendingDeleteBackingStoreSet().remove(this);
</ins><span class="cx"> m_deleteBackingStoreTimerActive = false;
</span><span class="cx"> KillTimer(m_viewWindow, DeleteBackingStoreTimer);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebWorkersPrivatecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebWorkersPrivate.cpp (173987 => 173988)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebWorkersPrivate.cpp        2014-09-26 00:34:56 UTC (rev 173987)
+++ trunk/Source/WebKit/win/WebWorkersPrivate.cpp        2014-09-26 00:39:20 UTC (rev 173988)
</span><span class="lines">@@ -90,11 +90,11 @@
</span><span class="cx"> : m_refCount(0)
</span><span class="cx"> {
</span><span class="cx"> gClassCount++;
</span><del>- gClassNameCount.add("WebWorkersPrivate");
</del><ins>+ gClassNameCount().add("WebWorkersPrivate");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WebWorkersPrivate::~WebWorkersPrivate()
</span><span class="cx"> {
</span><span class="cx"> gClassCount--;
</span><del>- gClassNameCount.remove("WebWorkersPrivate");
</del><ins>+ gClassNameCount().remove("WebWorkersPrivate");
</ins><span class="cx"> }
</span></span></pre>
</div>
</div>
</body>
</html>