<!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>[188709] trunk/Tools</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/188709">188709</a></dd>
<dt>Author</dt> <dd>bfulgham@apple.com</dd>
<dt>Date</dt> <dd>2015-08-20 15:11:17 -0700 (Thu, 20 Aug 2015)</dd>
</dl>
<h3>Log Message</h3>
<pre>[Win] Update Windows tools for revised MIDL interfaces
https://bugs.webkit.org/show_bug.cgi?id=148249
Reviewed by Dean Jackson.
This is a follow-up to Bug 148001.
Revise the testing software to use compatible signatures and
implementations to match the requirements of the IDL generated
with the SAL annotations.
* DumpRenderTree/win/DRTDataObject.cpp:
* DumpRenderTree/win/DRTDataObject.h:
* DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp:
* DumpRenderTree/win/DRTDesktopNotificationPresenter.h:
* DumpRenderTree/win/DRTDropSource.cpp:
* DumpRenderTree/win/DRTDropSource.h:
* DumpRenderTree/win/DumpRenderTree.cpp:
* DumpRenderTree/win/EditingDelegate.cpp:
* DumpRenderTree/win/EditingDelegate.h:
* DumpRenderTree/win/FrameLoadDelegate.cpp:
* DumpRenderTree/win/FrameLoadDelegate.h:
* DumpRenderTree/win/HistoryDelegate.cpp:
* DumpRenderTree/win/HistoryDelegate.h:
* DumpRenderTree/win/PolicyDelegate.cpp:
* DumpRenderTree/win/PolicyDelegate.h:
* DumpRenderTree/win/ResourceLoadDelegate.cpp:
* DumpRenderTree/win/ResourceLoadDelegate.h:
* DumpRenderTree/win/TestRunnerWin.cpp:
* DumpRenderTree/win/UIDelegate.cpp:
* DumpRenderTree/win/UIDelegate.h:
* WinLauncher/AccessibilityDelegate.cpp:
* WinLauncher/AccessibilityDelegate.h:
* WinLauncher/Common.cpp:
* WinLauncher/DOMDefaultImpl.cpp:
* WinLauncher/DOMDefaultImpl.h:
* WinLauncher/PageLoadTestClient.cpp:
* WinLauncher/PageLoadTestClient.h:
* WinLauncher/PrintWebUIDelegate.cpp:
* WinLauncher/PrintWebUIDelegate.h:
* WinLauncher/ResourceLoadDelegate.cpp:
* WinLauncher/ResourceLoadDelegate.h:
* WinLauncher/WebDownloadDelegate.cpp:
* WinLauncher/WebDownloadDelegate.h:
* WinLauncher/WinLauncherWebHost.cpp:
* WinLauncher/WinLauncherWebHost.h:
* WinLauncher/WinMain.cpp:
* win/DLLLauncher/DLLLauncherMain.cpp:</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkToolsChangeLog">trunk/Tools/ChangeLog</a></li>
<li><a href="#trunkToolsDumpRenderTreewinDRTDataObjectcpp">trunk/Tools/DumpRenderTree/win/DRTDataObject.cpp</a></li>
<li><a href="#trunkToolsDumpRenderTreewinDRTDataObjecth">trunk/Tools/DumpRenderTree/win/DRTDataObject.h</a></li>
<li><a href="#trunkToolsDumpRenderTreewinDRTDesktopNotificationPresentercpp">trunk/Tools/DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp</a></li>
<li><a href="#trunkToolsDumpRenderTreewinDRTDesktopNotificationPresenterh">trunk/Tools/DumpRenderTree/win/DRTDesktopNotificationPresenter.h</a></li>
<li><a href="#trunkToolsDumpRenderTreewinDRTDropSourcecpp">trunk/Tools/DumpRenderTree/win/DRTDropSource.cpp</a></li>
<li><a href="#trunkToolsDumpRenderTreewinDRTDropSourceh">trunk/Tools/DumpRenderTree/win/DRTDropSource.h</a></li>
<li><a href="#trunkToolsDumpRenderTreewinDumpRenderTreecpp">trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp</a></li>
<li><a href="#trunkToolsDumpRenderTreewinEditingDelegatecpp">trunk/Tools/DumpRenderTree/win/EditingDelegate.cpp</a></li>
<li><a href="#trunkToolsDumpRenderTreewinEditingDelegateh">trunk/Tools/DumpRenderTree/win/EditingDelegate.h</a></li>
<li><a href="#trunkToolsDumpRenderTreewinFrameLoadDelegatecpp">trunk/Tools/DumpRenderTree/win/FrameLoadDelegate.cpp</a></li>
<li><a href="#trunkToolsDumpRenderTreewinFrameLoadDelegateh">trunk/Tools/DumpRenderTree/win/FrameLoadDelegate.h</a></li>
<li><a href="#trunkToolsDumpRenderTreewinHistoryDelegatecpp">trunk/Tools/DumpRenderTree/win/HistoryDelegate.cpp</a></li>
<li><a href="#trunkToolsDumpRenderTreewinHistoryDelegateh">trunk/Tools/DumpRenderTree/win/HistoryDelegate.h</a></li>
<li><a href="#trunkToolsDumpRenderTreewinPolicyDelegatecpp">trunk/Tools/DumpRenderTree/win/PolicyDelegate.cpp</a></li>
<li><a href="#trunkToolsDumpRenderTreewinPolicyDelegateh">trunk/Tools/DumpRenderTree/win/PolicyDelegate.h</a></li>
<li><a href="#trunkToolsDumpRenderTreewinResourceLoadDelegatecpp">trunk/Tools/DumpRenderTree/win/ResourceLoadDelegate.cpp</a></li>
<li><a href="#trunkToolsDumpRenderTreewinResourceLoadDelegateh">trunk/Tools/DumpRenderTree/win/ResourceLoadDelegate.h</a></li>
<li><a href="#trunkToolsDumpRenderTreewinTestRunnerWincpp">trunk/Tools/DumpRenderTree/win/TestRunnerWin.cpp</a></li>
<li><a href="#trunkToolsDumpRenderTreewinUIDelegatecpp">trunk/Tools/DumpRenderTree/win/UIDelegate.cpp</a></li>
<li><a href="#trunkToolsDumpRenderTreewinUIDelegateh">trunk/Tools/DumpRenderTree/win/UIDelegate.h</a></li>
<li><a href="#trunkToolsWinLauncherAccessibilityDelegatecpp">trunk/Tools/WinLauncher/AccessibilityDelegate.cpp</a></li>
<li><a href="#trunkToolsWinLauncherAccessibilityDelegateh">trunk/Tools/WinLauncher/AccessibilityDelegate.h</a></li>
<li><a href="#trunkToolsWinLauncherCommoncpp">trunk/Tools/WinLauncher/Common.cpp</a></li>
<li><a href="#trunkToolsWinLauncherDOMDefaultImplcpp">trunk/Tools/WinLauncher/DOMDefaultImpl.cpp</a></li>
<li><a href="#trunkToolsWinLauncherDOMDefaultImplh">trunk/Tools/WinLauncher/DOMDefaultImpl.h</a></li>
<li><a href="#trunkToolsWinLauncherPageLoadTestClientcpp">trunk/Tools/WinLauncher/PageLoadTestClient.cpp</a></li>
<li><a href="#trunkToolsWinLauncherPageLoadTestClienth">trunk/Tools/WinLauncher/PageLoadTestClient.h</a></li>
<li><a href="#trunkToolsWinLauncherPrintWebUIDelegatecpp">trunk/Tools/WinLauncher/PrintWebUIDelegate.cpp</a></li>
<li><a href="#trunkToolsWinLauncherPrintWebUIDelegateh">trunk/Tools/WinLauncher/PrintWebUIDelegate.h</a></li>
<li><a href="#trunkToolsWinLauncherResourceLoadDelegatecpp">trunk/Tools/WinLauncher/ResourceLoadDelegate.cpp</a></li>
<li><a href="#trunkToolsWinLauncherResourceLoadDelegateh">trunk/Tools/WinLauncher/ResourceLoadDelegate.h</a></li>
<li><a href="#trunkToolsWinLauncherWebDownloadDelegatecpp">trunk/Tools/WinLauncher/WebDownloadDelegate.cpp</a></li>
<li><a href="#trunkToolsWinLauncherWebDownloadDelegateh">trunk/Tools/WinLauncher/WebDownloadDelegate.h</a></li>
<li><a href="#trunkToolsWinLauncherWinLauncherWebHostcpp">trunk/Tools/WinLauncher/WinLauncherWebHost.cpp</a></li>
<li><a href="#trunkToolsWinLauncherWinLauncherWebHosth">trunk/Tools/WinLauncher/WinLauncherWebHost.h</a></li>
<li><a href="#trunkToolsWinLauncherWinMaincpp">trunk/Tools/WinLauncher/WinMain.cpp</a></li>
<li><a href="#trunkToolswinDLLLauncherDLLLauncherMaincpp">trunk/Tools/win/DLLLauncher/DLLLauncherMain.cpp</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkToolsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Tools/ChangeLog (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/ChangeLog        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/ChangeLog        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,3 +1,54 @@
</span><ins>+2015-08-20 Brent Fulgham <bfulgham@apple.com>
+
+ [Win] Update Windows tools for revised MIDL interfaces
+ https://bugs.webkit.org/show_bug.cgi?id=148249
+
+ Reviewed by Dean Jackson.
+
+ This is a follow-up to Bug 148001.
+
+ Revise the testing software to use compatible signatures and
+ implementations to match the requirements of the IDL generated
+ with the SAL annotations.
+
+ * DumpRenderTree/win/DRTDataObject.cpp:
+ * DumpRenderTree/win/DRTDataObject.h:
+ * DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp:
+ * DumpRenderTree/win/DRTDesktopNotificationPresenter.h:
+ * DumpRenderTree/win/DRTDropSource.cpp:
+ * DumpRenderTree/win/DRTDropSource.h:
+ * DumpRenderTree/win/DumpRenderTree.cpp:
+ * DumpRenderTree/win/EditingDelegate.cpp:
+ * DumpRenderTree/win/EditingDelegate.h:
+ * DumpRenderTree/win/FrameLoadDelegate.cpp:
+ * DumpRenderTree/win/FrameLoadDelegate.h:
+ * DumpRenderTree/win/HistoryDelegate.cpp:
+ * DumpRenderTree/win/HistoryDelegate.h:
+ * DumpRenderTree/win/PolicyDelegate.cpp:
+ * DumpRenderTree/win/PolicyDelegate.h:
+ * DumpRenderTree/win/ResourceLoadDelegate.cpp:
+ * DumpRenderTree/win/ResourceLoadDelegate.h:
+ * DumpRenderTree/win/TestRunnerWin.cpp:
+ * DumpRenderTree/win/UIDelegate.cpp:
+ * DumpRenderTree/win/UIDelegate.h:
+ * WinLauncher/AccessibilityDelegate.cpp:
+ * WinLauncher/AccessibilityDelegate.h:
+ * WinLauncher/Common.cpp:
+ * WinLauncher/DOMDefaultImpl.cpp:
+ * WinLauncher/DOMDefaultImpl.h:
+ * WinLauncher/PageLoadTestClient.cpp:
+ * WinLauncher/PageLoadTestClient.h:
+ * WinLauncher/PrintWebUIDelegate.cpp:
+ * WinLauncher/PrintWebUIDelegate.h:
+ * WinLauncher/ResourceLoadDelegate.cpp:
+ * WinLauncher/ResourceLoadDelegate.h:
+ * WinLauncher/WebDownloadDelegate.cpp:
+ * WinLauncher/WebDownloadDelegate.h:
+ * WinLauncher/WinLauncherWebHost.cpp:
+ * WinLauncher/WinLauncherWebHost.h:
+ * WinLauncher/WinMain.cpp:
+ * win/DLLLauncher/DLLLauncherMain.cpp:
+
</ins><span class="cx"> 2015-08-20 Filip Pizlo <fpizlo@apple.com>
</span><span class="cx">
</span><span class="cx"> Unreviewed, shorten a test that runs too long and times out.
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinDRTDataObjectcpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/DRTDataObject.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/DRTDataObject.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/DRTDataObject.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2007, 2014 Apple Inc. All rights reserved.
</del><ins>+ * Copyright (C) 2007, 2014-2015 Apple Inc. All rights reserved.
</ins><span class="cx"> * Copyright (C) 2012 Baidu Inc. All rights reserved.
</span><span class="cx"> *
</span><span class="cx"> * Redistribution and use in source and binary forms, with or without
</span><span class="lines">@@ -53,40 +53,38 @@
</span><span class="cx"> explicit WCEnumFormatEtc(const Vector<std::unique_ptr<FORMATETC>>& formats);
</span><span class="cx">
</span><span class="cx"> // IUnknown members
</span><del>- STDMETHOD(QueryInterface)(REFIID, void**);
</del><ins>+ STDMETHOD(QueryInterface)(_In_ REFIID, _COM_Outptr_ void**);
</ins><span class="cx"> STDMETHOD_(ULONG, AddRef)();
</span><span class="cx"> STDMETHOD_(ULONG, Release)();
</span><span class="cx">
</span><span class="cx"> // IEnumFORMATETC members
</span><del>- STDMETHOD(Next)(ULONG, LPFORMATETC, ULONG*);
</del><ins>+ STDMETHOD(Next)(ULONG celt, _Out_writes_to_(celt, *pceltFetched) LPFORMATETC, _Out_opt_ ULONG* pceltFetched);
</ins><span class="cx"> STDMETHOD(Skip)(ULONG);
</span><span class="cx"> STDMETHOD(Reset)();
</span><del>- STDMETHOD(Clone)(IEnumFORMATETC**);
</del><ins>+ STDMETHOD(Clone)(_COM_Outptr_opt_ IEnumFORMATETC**);
</ins><span class="cx">
</span><span class="cx"> private:
</span><del>- long m_ref;
</del><span class="cx"> Vector<FORMATETC> m_formats;
</span><del>- size_t m_current;
</del><ins>+ long m_ref { 1 };
+ size_t m_current { 0 };
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> WCEnumFormatEtc::WCEnumFormatEtc(const Vector<FORMATETC>& formats)
</span><del>- : m_ref(1)
- , m_current(0)
- , m_formats(formats)
</del><ins>+ : m_formats(formats)
</ins><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WCEnumFormatEtc::WCEnumFormatEtc(const Vector<std::unique_ptr<FORMATETC>>& formats)
</span><del>- : m_ref(1)
- , m_current(0)
</del><span class="cx"> {
</span><span class="cx"> for (auto& format : formats)
</span><span class="cx"> m_formats.append(*format);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-STDMETHODIMP WCEnumFormatEtc::QueryInterface(REFIID riid, void** ppvObject)
</del><ins>+STDMETHODIMP WCEnumFormatEtc::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject)
</ins><span class="cx"> {
</span><del>- *ppvObject = 0;
</del><ins>+ if (!ppvObject)
+ return E_POINTER;
+ *ppvObject = nullptr;
</ins><span class="cx"> if (IsEqualIID(riid, IID_IUnknown) || IsEqualIID(riid, IID_IEnumFORMATETC)) {
</span><span class="cx"> *ppvObject = this;
</span><span class="cx"> AddRef();
</span><span class="lines">@@ -109,7 +107,7 @@
</span><span class="cx"> return refCount;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-STDMETHODIMP WCEnumFormatEtc::Next(ULONG celt, LPFORMATETC lpFormatEtc, ULONG* pceltFetched)
</del><ins>+STDMETHODIMP WCEnumFormatEtc::Next(ULONG celt, _Out_writes_to_(celt, *pceltFetched) LPFORMATETC lpFormatEtc, _Out_opt_ ULONG* pceltFetched)
</ins><span class="cx"> {
</span><span class="cx"> if (pceltFetched)
</span><span class="cx"> *pceltFetched = 0;
</span><span class="lines">@@ -146,7 +144,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-STDMETHODIMP WCEnumFormatEtc::Clone(IEnumFORMATETC** ppCloneEnumFormatEtc)
</del><ins>+STDMETHODIMP WCEnumFormatEtc::Clone(_COM_Outptr_opt_ IEnumFORMATETC** ppCloneEnumFormatEtc)
</ins><span class="cx"> {
</span><span class="cx"> if (!ppCloneEnumFormatEtc)
</span><span class="cx"> return E_POINTER;
</span><span class="lines">@@ -171,13 +169,14 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> DRTDataObject::DRTDataObject()
</span><del>- : m_ref(1)
</del><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><del>-STDMETHODIMP DRTDataObject::QueryInterface(REFIID riid, void** ppvObject)
</del><ins>+STDMETHODIMP DRTDataObject::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject)
</ins><span class="cx"> {
</span><del>- *ppvObject = 0;
</del><ins>+ if (!ppvObject)
+ return E_POINTER;
+ *ppvObject = nullptr;
</ins><span class="cx"> if (IsEqualIID(riid, IID_IUnknown) || IsEqualIID(riid, IID_IDataObject))
</span><span class="cx"> *ppvObject = this;
</span><span class="cx">
</span><span class="lines">@@ -201,11 +200,11 @@
</span><span class="cx"> return refCount;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-STDMETHODIMP DRTDataObject::GetData(FORMATETC* pformatetcIn, STGMEDIUM* pmedium)
</del><ins>+STDMETHODIMP DRTDataObject::GetData(_In_ FORMATETC* pformatetcIn, _Out_ STGMEDIUM* pmedium)
</ins><span class="cx"> {
</span><span class="cx"> if (!pformatetcIn || !pmedium)
</span><span class="cx"> return E_POINTER;
</span><del>- pmedium->hGlobal = 0;
</del><ins>+ pmedium->hGlobal = nullptr;
</ins><span class="cx">
</span><span class="cx"> for (size_t i = 0; i < m_formats.size(); ++i) {
</span><span class="cx"> if (pformatetcIn->lindex == m_formats[i]->lindex && pformatetcIn->dwAspect == m_formats[i]->dwAspect && pformatetcIn->cfFormat == m_formats[i]->cfFormat) {
</span><span class="lines">@@ -216,12 +215,12 @@
</span><span class="cx"> return DV_E_FORMATETC;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-STDMETHODIMP DRTDataObject::GetDataHere(FORMATETC*, STGMEDIUM*)
</del><ins>+STDMETHODIMP DRTDataObject::GetDataHere(_In_ FORMATETC*, _Inout_ STGMEDIUM*)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-STDMETHODIMP DRTDataObject::QueryGetData(FORMATETC* pformatetc)
</del><ins>+STDMETHODIMP DRTDataObject::QueryGetData(_In_opt_ FORMATETC* pformatetc)
</ins><span class="cx"> {
</span><span class="cx"> if (!pformatetc)
</span><span class="cx"> return E_POINTER;
</span><span class="lines">@@ -238,12 +237,14 @@
</span><span class="cx"> return DV_E_TYMED;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-STDMETHODIMP DRTDataObject::GetCanonicalFormatEtc(FORMATETC*, FORMATETC*)
</del><ins>+STDMETHODIMP DRTDataObject::GetCanonicalFormatEtc(_In_opt_ FORMATETC*, _Out_ FORMATETC* formatOut)
</ins><span class="cx"> {
</span><ins>+ if (!formatOut)
+ return E_POINTER;
</ins><span class="cx"> return DATA_S_SAMEFORMATETC;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-STDMETHODIMP DRTDataObject::SetData(FORMATETC* pformatetc, STGMEDIUM* pmedium, BOOL fRelease)
</del><ins>+STDMETHODIMP DRTDataObject::SetData(_In_ FORMATETC* pformatetc, _In_ STGMEDIUM* pmedium, BOOL fRelease)
</ins><span class="cx"> {
</span><span class="cx"> if (!pformatetc || !pmedium)
</span><span class="cx"> return E_POINTER;
</span><span class="lines">@@ -296,18 +297,18 @@
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="cx"> pMedDest->tymed = pMedSrc->tymed;
</span><del>- pMedDest->pUnkForRelease = 0;
</del><ins>+ pMedDest->pUnkForRelease = nullptr;
</ins><span class="cx"> if (pMedSrc->pUnkForRelease) {
</span><span class="cx"> pMedDest->pUnkForRelease = pMedSrc->pUnkForRelease;
</span><span class="cx"> pMedSrc->pUnkForRelease->AddRef();
</span><span class="cx"> }
</span><span class="cx"> }
</span><del>-STDMETHODIMP DRTDataObject::EnumFormatEtc(DWORD dwDirection, IEnumFORMATETC** ppenumFormatEtc)
</del><ins>+STDMETHODIMP DRTDataObject::EnumFormatEtc(DWORD dwDirection, _COM_Outptr_opt_ IEnumFORMATETC** ppenumFormatEtc)
</ins><span class="cx"> {
</span><span class="cx"> if (!ppenumFormatEtc)
</span><span class="cx"> return E_POINTER;
</span><span class="cx">
</span><del>- *ppenumFormatEtc = 0;
</del><ins>+ *ppenumFormatEtc = nullptr;
</ins><span class="cx"> switch (dwDirection) {
</span><span class="cx"> case DATADIR_GET:
</span><span class="cx"> *ppenumFormatEtc = new WCEnumFormatEtc(m_formats);
</span><span class="lines">@@ -324,7 +325,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-STDMETHODIMP DRTDataObject::DAdvise(FORMATETC*, DWORD, IAdviseSink*, DWORD*)
</del><ins>+STDMETHODIMP DRTDataObject::DAdvise(_In_ FORMATETC*, DWORD, _Inout_ IAdviseSink*, _Out_ DWORD*)
</ins><span class="cx"> {
</span><span class="cx"> return OLE_E_ADVISENOTSUPPORTED;
</span><span class="cx"> }
</span><span class="lines">@@ -334,8 +335,11 @@
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT STDMETHODCALLTYPE DRTDataObject::EnumDAdvise(IEnumSTATDATA**)
</del><ins>+HRESULT DRTDataObject::EnumDAdvise(_COM_Outptr_opt_ IEnumSTATDATA** dadvise)
</ins><span class="cx"> {
</span><ins>+ if (!dadvise)
+ return E_POINTER;
+ *dadvise = nullptr;
</ins><span class="cx"> return OLE_E_ADVISENOTSUPPORTED;
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinDRTDataObjecth"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/DRTDataObject.h (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/DRTDataObject.h        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/DRTDataObject.h        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2007, 2014 Apple Inc. All rights reserved.
</del><ins>+ * Copyright (C) 2007, 2014-2015 Apple Inc. All rights reserved.
</ins><span class="cx"> * Copyright (C) 2012 Baidu Inc. All rights reserved.
</span><span class="cx"> *
</span><span class="cx"> * Redistribution and use in source and binary forms, with or without
</span><span class="lines">@@ -49,27 +49,27 @@
</span><span class="cx"> void CopyMedium(STGMEDIUM* pMedDest, STGMEDIUM* pMedSrc, FORMATETC* pFmtSrc);
</span><span class="cx">
</span><span class="cx"> // IUnknown
</span><del>- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject);
</ins><span class="cx"> virtual ULONG STDMETHODCALLTYPE AddRef();
</span><span class="cx"> virtual ULONG STDMETHODCALLTYPE Release();
</span><span class="cx">
</span><span class="cx"> // IDataObject
</span><del>- virtual HRESULT STDMETHODCALLTYPE GetData(FORMATETC* pformatIn, STGMEDIUM* pmedium);
- virtual HRESULT STDMETHODCALLTYPE GetDataHere(FORMATETC* pformat, STGMEDIUM* pmedium);
- virtual HRESULT STDMETHODCALLTYPE QueryGetData(FORMATETC* pformat);
- virtual HRESULT STDMETHODCALLTYPE GetCanonicalFormatEtc(FORMATETC* pformatectIn, FORMATETC* pformatOut);
- virtual HRESULT STDMETHODCALLTYPE SetData(FORMATETC* pformat, STGMEDIUM*pmedium, BOOL release);
- virtual HRESULT STDMETHODCALLTYPE EnumFormatEtc(DWORD dwDirection, IEnumFORMATETC** ppenumFormatEtc);
- virtual HRESULT STDMETHODCALLTYPE DAdvise(FORMATETC*, DWORD, IAdviseSink*, DWORD*);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE GetData(_In_ FORMATETC*, _Out_ STGMEDIUM*);
+ virtual HRESULT STDMETHODCALLTYPE GetDataHere(_In_ FORMATETC*, _Inout_ STGMEDIUM*);
+ virtual HRESULT STDMETHODCALLTYPE QueryGetData(_In_opt_ FORMATETC*);
+ virtual HRESULT STDMETHODCALLTYPE GetCanonicalFormatEtc(_In_opt_ FORMATETC*, _Out_ FORMATETC*);
+ virtual HRESULT STDMETHODCALLTYPE SetData(_In_ FORMATETC*, _In_ STGMEDIUM*, BOOL release);
+ virtual HRESULT STDMETHODCALLTYPE EnumFormatEtc(DWORD dwDirection, _COM_Outptr_opt_ IEnumFORMATETC**);
+ virtual HRESULT STDMETHODCALLTYPE DAdvise(_In_ FORMATETC*, DWORD, _Inout_ IAdviseSink*, _Out_ DWORD*);
</ins><span class="cx"> virtual HRESULT STDMETHODCALLTYPE DUnadvise(DWORD);
</span><del>- virtual HRESULT STDMETHODCALLTYPE EnumDAdvise(IEnumSTATDATA**);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE EnumDAdvise(_COM_Outptr_opt_ IEnumSTATDATA**);
</ins><span class="cx">
</span><span class="cx"> void clearData(CLIPFORMAT);
</span><span class="cx">
</span><span class="cx"> static HRESULT createInstance(DRTDataObject**);
</span><span class="cx"> private:
</span><span class="cx"> DRTDataObject();
</span><del>- long m_ref;
</del><ins>+ long m_ref { 1 };
</ins><span class="cx"> Vector<std::unique_ptr<FORMATETC>> m_formats;
</span><span class="cx"> Vector<std::unique_ptr<STGMEDIUM, StgMediumDeleter>> m_medium;
</span><span class="cx"> };
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinDRTDesktopNotificationPresentercpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,6 +1,6 @@
</span><span class="cx"> /*
</span><span class="cx"> * Copyright (C) 2009 Google Inc. All rights reserved.
</span><del>- * Copyright (C) 2014 Apple Inc. All rights reserved.
</del><ins>+ * Copyright (C) 2014-2015 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 are
</span><span class="lines">@@ -40,11 +40,14 @@
</span><span class="cx"> #include <comutil.h>
</span><span class="cx">
</span><span class="cx"> DRTDesktopNotificationPresenter::DRTDesktopNotificationPresenter()
</span><del>- : m_refCount(1) {}
</del><ins>+{
+}
</ins><span class="cx">
</span><del>-HRESULT DRTDesktopNotificationPresenter::QueryInterface(REFIID riid, void** ppvObject)
</del><ins>+HRESULT DRTDesktopNotificationPresenter::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject)
</ins><span class="cx"> {
</span><del>- *ppvObject = 0;
</del><ins>+ if (!ppvObject)
+ return E_POINTER;
+ *ppvObject = nullptr;
</ins><span class="cx"> if (IsEqualGUID(riid, IID_IUnknown))
</span><span class="cx"> *ppvObject = static_cast<DRTDesktopNotificationPresenter*>(this);
</span><span class="cx"> else if (IsEqualGUID(riid, IID_IWebDesktopNotificationsDelegate))
</span><span class="lines">@@ -70,7 +73,7 @@
</span><span class="cx"> return newRef;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT DRTDesktopNotificationPresenter::showDesktopNotification(IWebDesktopNotification* notification)
</del><ins>+HRESULT DRTDesktopNotificationPresenter::showDesktopNotification(_In_opt_ IWebDesktopNotification* notification)
</ins><span class="cx"> {
</span><span class="cx"> _bstr_t title, text, url;
</span><span class="cx"> BOOL html;
</span><span class="lines">@@ -92,7 +95,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT DRTDesktopNotificationPresenter::cancelDesktopNotification(IWebDesktopNotification* notification)
</del><ins>+HRESULT DRTDesktopNotificationPresenter::cancelDesktopNotification(_In_opt_ IWebDesktopNotification* notification)
</ins><span class="cx"> {
</span><span class="cx"> _bstr_t identifier;
</span><span class="cx"> BOOL html;
</span><span class="lines">@@ -108,15 +111,20 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT DRTDesktopNotificationPresenter::notificationDestroyed(IWebDesktopNotification* /*notification*/)
</del><ins>+HRESULT DRTDesktopNotificationPresenter::notificationDestroyed(_In_opt_ IWebDesktopNotification* /*notification*/)
</ins><span class="cx"> {
</span><span class="cx"> // Since in these tests events happen immediately, we don't hold on to
</span><span class="cx"> // Notification pointers. So there's no cleanup to do.
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT DRTDesktopNotificationPresenter::checkNotificationPermission(BSTR /*origin*/, int* /*result*/)
</del><ins>+HRESULT DRTDesktopNotificationPresenter::checkNotificationPermission(_In_ BSTR /*origin*/, _Out_ int* result)
</ins><span class="cx"> {
</span><ins>+ if (!result)
+ return E_POINTER;
+
+ *result = 0;
+
</ins><span class="cx"> #if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS)
</span><span class="cx"> JSStringRef jsOrigin = JSStringCreateWithBSTR(origin);
</span><span class="cx"> bool allowed = ::gTestRunner->checkDesktopNotificationPermission(jsOrigin);
</span><span class="lines">@@ -131,7 +139,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT DRTDesktopNotificationPresenter::requestNotificationPermission(BSTR origin)
</del><ins>+HRESULT DRTDesktopNotificationPresenter::requestNotificationPermission(_In_ BSTR origin)
</ins><span class="cx"> {
</span><span class="cx"> printf("DESKTOP NOTIFICATION PERMISSION REQUESTED: %S\n", origin ? origin : L"");
</span><span class="cx"> return S_OK;
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinDRTDesktopNotificationPresenterh"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/DRTDesktopNotificationPresenter.h (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/DRTDesktopNotificationPresenter.h        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/DRTDesktopNotificationPresenter.h        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2005, 2006, 2007 Apple Inc. All rights reserved.
</del><ins>+ * Copyright (C) 2005-2007, 2015 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">@@ -37,29 +37,19 @@
</span><span class="cx"> DRTDesktopNotificationPresenter();
</span><span class="cx">
</span><span class="cx"> // IUnknown
</span><del>- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
- virtual ULONG STDMETHODCALLTYPE AddRef(void);
- virtual ULONG STDMETHODCALLTYPE Release(void);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject);
+ virtual ULONG STDMETHODCALLTYPE AddRef();
+ virtual ULONG STDMETHODCALLTYPE Release();
</ins><span class="cx">
</span><span class="cx"> // IWebDesktopNotificationsDelegate
</span><del>- virtual HRESULT STDMETHODCALLTYPE showDesktopNotification(
- /* [in] */ IWebDesktopNotification* notification);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE showDesktopNotification(_In_opt_ IWebDesktopNotification*);
+ virtual HRESULT STDMETHODCALLTYPE cancelDesktopNotification(_In_opt_ IWebDesktopNotification*);
+ virtual HRESULT STDMETHODCALLTYPE notificationDestroyed(_In_opt_ IWebDesktopNotification*);
+ virtual HRESULT STDMETHODCALLTYPE checkNotificationPermission(_In_ BSTR origin, _Out_ int* result);
+ virtual HRESULT STDMETHODCALLTYPE requestNotificationPermission(_In_ BSTR origin);
</ins><span class="cx">
</span><del>- virtual HRESULT STDMETHODCALLTYPE cancelDesktopNotification(
- /* [in] */ IWebDesktopNotification* notification);
-
- virtual HRESULT STDMETHODCALLTYPE notificationDestroyed(
- /* [in] */ IWebDesktopNotification* notification);
-
- virtual HRESULT STDMETHODCALLTYPE checkNotificationPermission(
- /* [in] */ BSTR origin,
- /* [out, retval] */ int* result);
-
- virtual HRESULT STDMETHODCALLTYPE requestNotificationPermission(
- /* [in] */ BSTR origin);
-
</del><span class="cx"> private:
</span><del>- ULONG m_refCount;
</del><ins>+ ULONG m_refCount { 1 };
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinDRTDropSourcecpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/DRTDropSource.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/DRTDropSource.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/DRTDropSource.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,4 +1,5 @@
</span><span class="cx"> /*
</span><ins>+* Copyright (C) 2015 Apple Inc. All rights reserved.
</ins><span class="cx"> * Copyright (C) 2012 Baidu Inc. All rights reserved.
</span><span class="cx"> *
</span><span class="cx"> * Redistribution and use in source and binary forms, with or without
</span><span class="lines">@@ -27,8 +28,6 @@
</span><span class="cx"> #include "DRTDropSource.h"
</span><span class="cx">
</span><span class="cx"> DRTDropSource::DRTDropSource()
</span><del>- : m_ref(1)
- , m_dropped(false)
</del><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -36,9 +35,11 @@
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><del>-STDMETHODIMP DRTDropSource::QueryInterface(REFIID riid, void** ppvObject)
</del><ins>+STDMETHODIMP DRTDropSource::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject)
</ins><span class="cx"> {
</span><del>- *ppvObject = 0;
</del><ins>+ if (!ppvObject)
+ return E_POINTER;
+ *ppvObject = nullptr;
</ins><span class="cx"> if (IsEqualIID(riid, IID_IUnknown) || IsEqualIID(riid, IID_IDropSource)) {
</span><span class="cx"> *ppvObject = this;
</span><span class="cx"> AddRef();
</span><span class="lines">@@ -70,7 +71,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-STDMETHODIMP DRTDropSource::QueryContinueDrag(BOOL fEscapePressed, DWORD grfKeyState)
</del><ins>+STDMETHODIMP DRTDropSource::QueryContinueDrag(_In_ BOOL fEscapePressed, _In_ DWORD grfKeyState)
</ins><span class="cx"> {
</span><span class="cx"> if (fEscapePressed || !(grfKeyState & (MK_LBUTTON | MK_RBUTTON))) {
</span><span class="cx"> m_dropped = !fEscapePressed;
</span><span class="lines">@@ -80,7 +81,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-STDMETHODIMP DRTDropSource::GiveFeedback(DWORD dwEffect)
</del><ins>+STDMETHODIMP DRTDropSource::GiveFeedback(_In_ DWORD dwEffect)
</ins><span class="cx"> {
</span><span class="cx"> return DRAGDROP_S_USEDEFAULTCURSORS;
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinDRTDropSourceh"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/DRTDropSource.h (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/DRTDropSource.h        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/DRTDropSource.h        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,4 +1,5 @@
</span><span class="cx"> /*
</span><ins>+* Copyright (C) 2015 Apple Inc. All rights reserved.
</ins><span class="cx"> * Copyright (C) 2012 Baidu Inc. All rights reserved.
</span><span class="cx"> *
</span><span class="cx"> * Redistribution and use in source and binary forms, with or without
</span><span class="lines">@@ -31,18 +32,18 @@
</span><span class="cx">
</span><span class="cx"> class DRTDropSource : public IDropSource {
</span><span class="cx"> public:
</span><del>- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject);
</ins><span class="cx"> virtual ULONG STDMETHODCALLTYPE AddRef();
</span><span class="cx"> virtual ULONG STDMETHODCALLTYPE Release();
</span><del>- virtual HRESULT STDMETHODCALLTYPE QueryContinueDrag(BOOL fEscapePressed, DWORD grfKeyState);
- virtual HRESULT STDMETHODCALLTYPE GiveFeedback(DWORD dwEffect);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE QueryContinueDrag(_In_ BOOL fEscapePressed, _In_ DWORD grfKeyState);
+ virtual HRESULT STDMETHODCALLTYPE GiveFeedback(_In_ DWORD dwEffect);
</ins><span class="cx">
</span><span class="cx"> static HRESULT createInstance(IDropSource** result);
</span><span class="cx"> private:
</span><span class="cx"> DRTDropSource();
</span><span class="cx"> ~DRTDropSource();
</span><del>- long m_ref;
- bool m_dropped;
</del><ins>+ long m_ref { 1 };
+ bool m_dropped { false };
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> #endif // DRTDropSource_h
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinDumpRenderTreecpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1439,7 +1439,7 @@
</span><span class="cx"> prepareConsistentTestingEnvironment(standardPreferences.get(), standardPreferencesPrivate.get());
</span><span class="cx">
</span><span class="cx"> if (printSupportedFeatures) {
</span><del>- BOOL acceleratedCompositingAvailable;
</del><ins>+ BOOL acceleratedCompositingAvailable = FALSE;
</ins><span class="cx"> standardPreferences->acceleratedCompositingEnabled(&acceleratedCompositingAvailable);
</span><span class="cx">
</span><span class="cx"> #if ENABLE(3D_TRANSFORMS)
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinEditingDelegatecpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/EditingDelegate.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/EditingDelegate.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/EditingDelegate.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -42,15 +42,15 @@
</span><span class="cx"> using std::wstring;
</span><span class="cx">
</span><span class="cx"> EditingDelegate::EditingDelegate()
</span><del>- : m_refCount(1)
- , m_acceptsEditing(true)
</del><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // IUnknown
</span><del>-HRESULT EditingDelegate::QueryInterface(REFIID riid, void** ppvObject)
</del><ins>+HRESULT EditingDelegate::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject)
</ins><span class="cx"> {
</span><del>- *ppvObject = 0;
</del><ins>+ if (!ppvObject)
+ return E_POINTER;
+ *ppvObject = nullptr;
</ins><span class="cx"> if (IsEqualGUID(riid, IID_IUnknown))
</span><span class="cx"> *ppvObject = static_cast<IWebEditingDelegate2*>(this);
</span><span class="cx"> else if (IsEqualGUID(riid, IID_IWebEditingDelegate))
</span><span class="lines">@@ -66,12 +66,12 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG EditingDelegate::AddRef(void)
</del><ins>+ULONG EditingDelegate::AddRef()
</ins><span class="cx"> {
</span><span class="cx"> return ++m_refCount;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG EditingDelegate::Release(void)
</del><ins>+ULONG EditingDelegate::Release()
</ins><span class="cx"> {
</span><span class="cx"> ULONG newRef = --m_refCount;
</span><span class="cx"> if (!newRef)
</span><span class="lines">@@ -124,7 +124,7 @@
</span><span class="cx"> return buffer;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT EditingDelegate::shouldBeginEditingInDOMRange(IWebView* /*webView*/, IDOMRange* range, BOOL* result)
</del><ins>+HRESULT EditingDelegate::shouldBeginEditingInDOMRange(_In_opt_ IWebView*, _In_opt_ IDOMRange* range, _Out_ BOOL* result)
</ins><span class="cx"> {
</span><span class="cx"> if (!result) {
</span><span class="cx"> ASSERT_NOT_REACHED();
</span><span class="lines">@@ -138,7 +138,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT EditingDelegate::shouldEndEditingInDOMRange(IWebView* /*webView*/, IDOMRange* range, BOOL* result)
</del><ins>+HRESULT EditingDelegate::shouldEndEditingInDOMRange(_In_opt_ IWebView*, _In_opt_ IDOMRange* range, _Out_ BOOL* result)
</ins><span class="cx"> {
</span><span class="cx"> if (!result) {
</span><span class="cx"> ASSERT_NOT_REACHED();
</span><span class="lines">@@ -153,14 +153,14 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // IWebEditingDelegate
</span><del>-HRESULT EditingDelegate::shouldInsertNode(IWebView* webView, IDOMNode* node, IDOMRange* range, WebViewInsertAction action)
</del><ins>+HRESULT EditingDelegate::shouldInsertNode(_In_opt_ IWebView* webView, _In_opt_ IDOMNode* node, _In_opt_ IDOMRange* range, WebViewInsertAction action)
</ins><span class="cx"> {
</span><span class="cx"> BOOL ignore;
</span><span class="cx"> return shouldInsertNode(webView, node, range, action, &ignore);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // IWebEditingDelegate2
</span><del>-HRESULT EditingDelegate::shouldInsertNode(IWebView* /*webView*/, IDOMNode* node, IDOMRange* range, WebViewInsertAction action, BOOL* result)
</del><ins>+HRESULT EditingDelegate::shouldInsertNode(_In_opt_ IWebView* /*webView*/, _In_opt_ IDOMNode* node, _In_opt_ IDOMRange* range, WebViewInsertAction action, _Out_ BOOL* result)
</ins><span class="cx"> {
</span><span class="cx"> static const char* insertActionString[] = {
</span><span class="cx"> "WebViewInsertActionTyped",
</span><span class="lines">@@ -168,6 +168,9 @@
</span><span class="cx"> "WebViewInsertActionDropped",
</span><span class="cx"> };
</span><span class="cx">
</span><ins>+ if (!result)
+ return E_POINTER;
+
</ins><span class="cx"> if (::gTestRunner->dumpEditingCallbacks() && !done)
</span><span class="cx"> printf("EDITING DELEGATE: shouldInsertNode:%s replacingDOMRange:%s givenAction:%s\n", dumpPath(node).c_str(), dump(range).c_str(), insertActionString[action]);
</span><span class="cx">
</span><span class="lines">@@ -175,7 +178,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT EditingDelegate::shouldInsertText(IWebView* /*webView*/, BSTR text, IDOMRange* range, WebViewInsertAction action, BOOL* result)
</del><ins>+HRESULT EditingDelegate::shouldInsertText(_In_opt_ IWebView* /*webView*/, _In_ BSTR text, _In_opt_ IDOMRange* range, WebViewInsertAction action, _Out_ BOOL* result)
</ins><span class="cx"> {
</span><span class="cx"> if (!result) {
</span><span class="cx"> ASSERT_NOT_REACHED();
</span><span class="lines">@@ -197,7 +200,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT EditingDelegate::shouldDeleteDOMRange(IWebView* /*webView*/, IDOMRange* range, BOOL* result)
</del><ins>+HRESULT EditingDelegate::shouldDeleteDOMRange(_In_opt_ IWebView* /*webView*/, _In_opt_ IDOMRange* range, _Out_ BOOL* result)
</ins><span class="cx"> {
</span><span class="cx"> if (!result) {
</span><span class="cx"> ASSERT_NOT_REACHED();
</span><span class="lines">@@ -211,8 +214,8 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT EditingDelegate::shouldChangeSelectedDOMRange(IWebView* /*webView*/, IDOMRange* currentRange, IDOMRange* proposedRange,
- WebSelectionAffinity selectionAffinity, BOOL stillSelecting, BOOL* result)
</del><ins>+HRESULT EditingDelegate::shouldChangeSelectedDOMRange(_In_opt_ IWebView* /*webView*/, _In_opt_ IDOMRange* currentRange, _In_opt_ IDOMRange* proposedRange,
+ WebSelectionAffinity selectionAffinity, BOOL stillSelecting, _Out_ BOOL* result)
</ins><span class="cx"> {
</span><span class="cx"> if (!result) {
</span><span class="cx"> ASSERT_NOT_REACHED();
</span><span class="lines">@@ -235,7 +238,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT EditingDelegate::shouldApplyStyle(IWebView* /*webView*/, IDOMCSSStyleDeclaration* style, IDOMRange* range, BOOL* result)
</del><ins>+HRESULT EditingDelegate::shouldApplyStyle(_In_opt_ IWebView* /*webView*/, _In_opt_ IDOMCSSStyleDeclaration* style, _In_opt_ IDOMRange* range, _Out_ BOOL* result)
</ins><span class="cx"> {
</span><span class="cx"> if (!result) {
</span><span class="cx"> ASSERT_NOT_REACHED();
</span><span class="lines">@@ -249,7 +252,8 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT EditingDelegate::shouldChangeTypingStyle(IWebView* /*webView*/, IDOMCSSStyleDeclaration* currentStyle, IDOMCSSStyleDeclaration* proposedStyle, BOOL* result)
</del><ins>+HRESULT EditingDelegate::shouldChangeTypingStyle(_In_opt_ IWebView* /*webView*/, _In_opt_ IDOMCSSStyleDeclaration* currentStyle,
+ _In_opt_ IDOMCSSStyleDeclaration* proposedStyle, _Out_ BOOL* result)
</ins><span class="cx"> {
</span><span class="cx"> if (!result) {
</span><span class="cx"> ASSERT_NOT_REACHED();
</span><span class="lines">@@ -263,7 +267,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT EditingDelegate::doPlatformCommand(IWebView* /*webView*/, BSTR command, BOOL* result)
</del><ins>+HRESULT EditingDelegate::doPlatformCommand(_In_opt_ IWebView* /*webView*/, _In_ BSTR command, _Out_ BOOL* result)
</ins><span class="cx"> {
</span><span class="cx"> if (!result) {
</span><span class="cx"> ASSERT_NOT_REACHED();
</span><span class="lines">@@ -279,8 +283,11 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT EditingDelegate::webViewDidBeginEditing(IWebNotification* notification)
</del><ins>+HRESULT EditingDelegate::webViewDidBeginEditing(_In_opt_ IWebNotification* notification)
</ins><span class="cx"> {
</span><ins>+ if (!notification)
+ return S_OK;
+
</ins><span class="cx"> if (::gTestRunner->dumpEditingCallbacks() && !done) {
</span><span class="cx"> _bstr_t name;
</span><span class="cx"> notification->name(&name.GetBSTR());
</span><span class="lines">@@ -289,8 +296,11 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT EditingDelegate::webViewDidChange(IWebNotification* notification)
</del><ins>+HRESULT EditingDelegate::webViewDidChange(_In_opt_ IWebNotification* notification)
</ins><span class="cx"> {
</span><ins>+ if (!notification)
+ return S_OK;
+
</ins><span class="cx"> if (::gTestRunner->dumpEditingCallbacks() && !done) {
</span><span class="cx"> _bstr_t name;
</span><span class="cx"> notification->name(&name.GetBSTR());
</span><span class="lines">@@ -299,8 +309,11 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT EditingDelegate::webViewDidEndEditing(IWebNotification* notification)
</del><ins>+HRESULT EditingDelegate::webViewDidEndEditing(_In_opt_ IWebNotification* notification)
</ins><span class="cx"> {
</span><ins>+ if (!notification)
+ return S_OK;
+
</ins><span class="cx"> if (::gTestRunner->dumpEditingCallbacks() && !done) {
</span><span class="cx"> _bstr_t name;
</span><span class="cx"> notification->name(&name.GetBSTR());
</span><span class="lines">@@ -309,8 +322,11 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT EditingDelegate::webViewDidChangeTypingStyle(IWebNotification* notification)
</del><ins>+HRESULT EditingDelegate::webViewDidChangeTypingStyle(_In_opt_ IWebNotification* notification)
</ins><span class="cx"> {
</span><ins>+ if (!notification)
+ return S_OK;
+
</ins><span class="cx"> if (::gTestRunner->dumpEditingCallbacks() && !done) {
</span><span class="cx"> _bstr_t name;
</span><span class="cx"> notification->name(&name.GetBSTR());
</span><span class="lines">@@ -319,8 +335,11 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT EditingDelegate::webViewDidChangeSelection(IWebNotification* notification)
</del><ins>+HRESULT EditingDelegate::webViewDidChangeSelection(_In_opt_ IWebNotification* notification)
</ins><span class="cx"> {
</span><ins>+ if (!notification)
+ return S_OK;
+
</ins><span class="cx"> if (::gTestRunner->dumpEditingCallbacks() && !done) {
</span><span class="cx"> _bstr_t name;
</span><span class="cx"> notification->name(&name.GetBSTR());
</span><span class="lines">@@ -329,6 +348,14 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+HRESULT EditingDelegate::undoManagerForWebView(_In_opt_ IWebView*, _COM_Outptr_opt_ IWebUndoManager** undoManager)
+{
+ if (!undoManager)
+ return E_POINTER;
+ *undoManager = nullptr;
+ return E_NOTIMPL;
+}
+
</ins><span class="cx"> static int indexOfFirstWordCharacter(const TCHAR* text)
</span><span class="cx"> {
</span><span class="cx"> const TCHAR* cursor = text;
</span><span class="lines">@@ -345,12 +372,8 @@
</span><span class="cx"> return cursor - text;
</span><span class="cx"> };
</span><span class="cx">
</span><del>-HRESULT EditingDelegate::checkSpellingOfString(
- /* [in] */ IWebView* view,
- /* [in] */ LPCTSTR text,
- /* [in] */ int length,
- /* [out] */ int* misspellingLocation,
- /* [out] */ int* misspellingLength)
</del><ins>+HRESULT EditingDelegate::checkSpellingOfString(_In_opt_ IWebView* view, _In_ LPCTSTR text,
+ int length, _Out_ int* misspellingLocation, _Out_ int* misspellingLength)
</ins><span class="cx"> {
</span><span class="cx"> static const TCHAR* misspelledWords[] = {
</span><span class="cx"> // These words are known misspelled words in webkit tests.
</span><span class="lines">@@ -382,10 +405,17 @@
</span><span class="cx"> 0,
</span><span class="cx"> };
</span><span class="cx">
</span><ins>+ if (!misspellingLocation || !misspellingLength)
+ return E_POINTER;
+
+ *misspellingLocation = 0;
+ *misspellingLength = 0;
+
</ins><span class="cx"> wstring textString(text, length);
</span><span class="cx"> int wordStart = indexOfFirstWordCharacter(textString.c_str());
</span><span class="cx"> if (-1 == wordStart)
</span><span class="cx"> return S_OK;
</span><ins>+
</ins><span class="cx"> wstring word = textString.substr(wordStart, wordLength(textString.c_str() + wordStart));
</span><span class="cx"> for (size_t i = 0; misspelledWords[i]; ++i) {
</span><span class="cx"> if (word == misspelledWords[i]) {
</span><span class="lines">@@ -398,8 +428,26 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT EditingDelegate::onNotify(IWebNotification* notification)
</del><ins>+HRESULT EditingDelegate::checkGrammarOfString(_In_opt_ IWebView*, _In_ LPCTSTR text, int length, _COM_Outptr_opt_ IEnumWebGrammarDetails** details,
+ _Out_ int* badGrammarLocation, _Out_ int* badGrammarLength)
</ins><span class="cx"> {
</span><ins>+ if (!details)
+ return E_POINTER;
+ *details = nullptr;
+ return E_NOTIMPL;
+}
+
+HRESULT EditingDelegate::guessesForWord(_In_ BSTR word, _COM_Outptr_opt_ IEnumSpellingGuesses** guesses)
+{
+ if (!guesses)
+ return E_POINTER;
+ *guesses = nullptr;
+ return E_NOTIMPL;
+}
+
+
+HRESULT EditingDelegate::onNotify(_In_opt_ IWebNotification* notification)
+{
</ins><span class="cx"> _bstr_t notificationName;
</span><span class="cx"> HRESULT hr = notification->name(&notificationName.GetBSTR());
</span><span class="cx"> if (FAILED(hr))
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinEditingDelegateh"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/EditingDelegate.h (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/EditingDelegate.h        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/EditingDelegate.h        2015-08-20 22:11:17 UTC (rev 188709)
</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, 2015 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">@@ -38,141 +38,57 @@
</span><span class="cx"> void setAcceptsEditing(bool b) { m_acceptsEditing = b; }
</span><span class="cx">
</span><span class="cx"> // IUnknown
</span><del>- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
- virtual ULONG STDMETHODCALLTYPE AddRef(void);
- virtual ULONG STDMETHODCALLTYPE Release(void);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject);
+ virtual ULONG STDMETHODCALLTYPE AddRef();
+ virtual ULONG STDMETHODCALLTYPE Release();
</ins><span class="cx">
</span><span class="cx"> // IWebEditingDelegate
</span><del>- virtual HRESULT STDMETHODCALLTYPE shouldBeginEditingInDOMRange(
- /* [in] */ IWebView *webView,
- /* [in] */ IDOMRange *range,
- /* [retval][out] */ BOOL *result);
-
- virtual HRESULT STDMETHODCALLTYPE shouldEndEditingInDOMRange(
- /* [in] */ IWebView *webView,
- /* [in] */ IDOMRange *range,
- /* [retval][out] */ BOOL *result);
-
- virtual HRESULT STDMETHODCALLTYPE shouldInsertNode(IWebView*, IDOMNode*, IDOMRange*, WebViewInsertAction);
-
- virtual HRESULT STDMETHODCALLTYPE shouldInsertText(
- /* [in] */ IWebView *webView,
- /* [in] */ BSTR text,
- /* [in] */ IDOMRange *range,
- /* [in] */ WebViewInsertAction action,
- /* [retval][out] */ BOOL *result);
-
- virtual HRESULT STDMETHODCALLTYPE shouldDeleteDOMRange(
- /* [in] */ IWebView *webView,
- /* [in] */ IDOMRange *range,
- /* [retval][out] */ BOOL *result);
-
- virtual HRESULT STDMETHODCALLTYPE shouldChangeSelectedDOMRange(
- /* [in] */ IWebView *webView,
- /* [in] */ IDOMRange *currentRange,
- /* [in] */ IDOMRange *proposedRange,
- /* [in] */ WebSelectionAffinity selectionAffinity,
- /* [in] */ BOOL stillSelecting,
- /* [retval][out] */ BOOL *result);
-
- virtual HRESULT STDMETHODCALLTYPE shouldApplyStyle(
- /* [in] */ IWebView *webView,
- /* [in] */ IDOMCSSStyleDeclaration *style,
- /* [in] */ IDOMRange *range,
- /* [retval][out] */ BOOL *result);
-
- virtual HRESULT STDMETHODCALLTYPE shouldChangeTypingStyle(
- /* [in] */ IWebView *webView,
- /* [in] */ IDOMCSSStyleDeclaration *currentStyle,
- /* [in] */ IDOMCSSStyleDeclaration *proposedStyle,
- /* [retval][out] */ BOOL *result);
-
- virtual HRESULT STDMETHODCALLTYPE doPlatformCommand(
- /* [in] */ IWebView *webView,
- /* [in] */ BSTR command,
- /* [retval][out] */ BOOL *result);
-
- virtual HRESULT STDMETHODCALLTYPE webViewDidBeginEditing(
- /* [in] */ IWebNotification *notification);
-
- virtual HRESULT STDMETHODCALLTYPE webViewDidChange(
- /* [in] */ IWebNotification *notification);
-
- virtual HRESULT STDMETHODCALLTYPE webViewDidEndEditing(
- /* [in] */ IWebNotification *notification);
-
- virtual HRESULT STDMETHODCALLTYPE webViewDidChangeTypingStyle(
- /* [in] */ IWebNotification *notification);
-
- virtual HRESULT STDMETHODCALLTYPE webViewDidChangeSelection(
- /* [in] */ IWebNotification *notification);
-
- virtual HRESULT STDMETHODCALLTYPE undoManagerForWebView(
- /* [in] */ IWebView *webView,
- /* [retval][out] */ IWebUndoManager **undoManager) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE ignoreWordInSpellDocument(
- /* [in] */ IWebView *view,
- /* [in] */ BSTR word) { return E_NOTIMPL; }
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE shouldBeginEditingInDOMRange(_In_opt_ IWebView*, _In_opt_ IDOMRange*, _Out_ BOOL* result);
+ virtual HRESULT STDMETHODCALLTYPE shouldEndEditingInDOMRange(_In_opt_ IWebView*, _In_opt_ IDOMRange*, _Out_ BOOL* result);
+ virtual HRESULT STDMETHODCALLTYPE shouldInsertNode(_In_opt_ IWebView*, _In_opt_ IDOMNode*, _In_opt_ IDOMRange*, WebViewInsertAction);
+ virtual HRESULT STDMETHODCALLTYPE shouldInsertText(_In_opt_ IWebView*, _In_ BSTR text, _In_opt_ IDOMRange*, WebViewInsertAction, _Out_ BOOL* result);
+ virtual HRESULT STDMETHODCALLTYPE shouldDeleteDOMRange(_In_opt_ IWebView*, _In_opt_ IDOMRange*, _Out_ BOOL* result);
+ virtual HRESULT STDMETHODCALLTYPE shouldChangeSelectedDOMRange(_In_opt_ IWebView*, _In_opt_ IDOMRange*, _In_opt_ IDOMRange*,
+ WebSelectionAffinity, BOOL stillSelecting, _Out_ BOOL* result);
+ virtual HRESULT STDMETHODCALLTYPE shouldApplyStyle(_In_opt_ IWebView*, _In_opt_ IDOMCSSStyleDeclaration*, _In_opt_ IDOMRange*, _Out_ BOOL* result);
+ virtual HRESULT STDMETHODCALLTYPE shouldChangeTypingStyle(_In_opt_ IWebView*, _In_opt_ IDOMCSSStyleDeclaration* currentStyle,
+ _In_opt_ IDOMCSSStyleDeclaration* proposedStyle, _Out_ BOOL* result);
+ virtual HRESULT STDMETHODCALLTYPE doPlatformCommand(_In_opt_ IWebView*, _In_ BSTR command, _Out_ BOOL* result);
+ virtual HRESULT STDMETHODCALLTYPE webViewDidBeginEditing(_In_opt_ IWebNotification*);
+ virtual HRESULT STDMETHODCALLTYPE webViewDidChange(_In_opt_ IWebNotification*);
+ virtual HRESULT STDMETHODCALLTYPE webViewDidEndEditing(_In_opt_ IWebNotification*);
+ virtual HRESULT STDMETHODCALLTYPE webViewDidChangeTypingStyle(_In_opt_ IWebNotification*);
+ virtual HRESULT STDMETHODCALLTYPE webViewDidChangeSelection(_In_opt_ IWebNotification*);
+ virtual HRESULT STDMETHODCALLTYPE undoManagerForWebView(_In_opt_ IWebView*, _COM_Outptr_opt_ IWebUndoManager **);
+ virtual HRESULT STDMETHODCALLTYPE ignoreWordInSpellDocument(_In_opt_ IWebView*, _In_ BSTR word) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE learnWord(_In_ BSTR word) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE checkSpellingOfString(_In_opt_ IWebView*, _In_ LPCTSTR text, int length, _Out_ int* misspellingLocation, _Out_ int* misspellingLength);
+ virtual HRESULT STDMETHODCALLTYPE checkGrammarOfString(_In_opt_ IWebView*, _In_ LPCTSTR text, int length, _COM_Outptr_opt_ IEnumWebGrammarDetails**,
+ _Out_ int* badGrammarLocation, _Out_ int* badGrammarLength);
+ virtual HRESULT STDMETHODCALLTYPE updateSpellingUIWithGrammarString(_In_ BSTR string, int location, int length, _In_ BSTR userDescription,
+ _In_opt_ BSTR* guesses, int guessesCount)
+ {
+ return E_NOTIMPL;
+ }
</ins><span class="cx">
</span><del>- virtual HRESULT STDMETHODCALLTYPE learnWord(
- /* [in] */ BSTR word) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE checkSpellingOfString(
- /* [in] */ IWebView *view,
- /* [in] */ LPCTSTR text,
- /* [in] */ int length,
- /* [out] */ int *misspellingLocation,
- /* [out] */ int *misspellingLength);
-
- virtual HRESULT STDMETHODCALLTYPE checkGrammarOfString(
- /* [in] */ IWebView *view,
- /* [in] */ LPCTSTR text,
- /* [in] */ int length,
- /* [out] */ IEnumWebGrammarDetails **grammarDetails,
- /* [out] */ int *badGrammarLocation,
- /* [out] */ int *badGrammarLength) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE updateSpellingUIWithGrammarString(
- /* [in] */ BSTR string,
- /* [in] */ int location,
- /* [in] */ int length,
- /* [in] */ BSTR userDescription,
- /* [in] */ BSTR *guesses,
- /* [in] */ int guessesCount) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE updateSpellingUIWithMisspelledWord(
- /* [in] */ BSTR word) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE showSpellingUI(
- /* [in] */ BOOL show) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE spellingUIIsShowing(
- /* [retval][out] */ BOOL *result) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE guessesForWord(
- /* [in] */ BSTR word,
- /* [retval][out] */ IEnumSpellingGuesses **guesses) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE closeSpellDocument(
- /* [in] */ IWebView *view) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE sharedSpellCheckerExists(
- /* [retval][out] */ BOOL *exists) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE preflightChosenSpellServer( void) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE updateGrammar( void) { return E_NOTIMPL; }
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE updateSpellingUIWithMisspelledWord(_In_ BSTR) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE showSpellingUI(BOOL) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE spellingUIIsShowing(_Out_ BOOL*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE guessesForWord(_In_ BSTR word, _COM_Outptr_opt_ IEnumSpellingGuesses** guesses);
+ virtual HRESULT STDMETHODCALLTYPE closeSpellDocument(_In_opt_ IWebView*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE sharedSpellCheckerExists(_Out_ BOOL*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE preflightChosenSpellServer() { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE updateGrammar() { return E_NOTIMPL; }
</ins><span class="cx">
</span><del>- // IWebNotificationObserver
- virtual HRESULT STDMETHODCALLTYPE onNotify(IWebNotification* notification);
</del><ins>+ // IWebNotificationObserver
+ virtual HRESULT STDMETHODCALLTYPE onNotify(_In_opt_ IWebNotification*);
</ins><span class="cx">
</span><del>- // IWebEditingDelegate2
- virtual HRESULT STDMETHODCALLTYPE shouldInsertNode(IWebView*, IDOMNode*, IDOMRange*, WebViewInsertAction, BOOL* result);
</del><ins>+ // IWebEditingDelegate2
+ virtual HRESULT STDMETHODCALLTYPE shouldInsertNode(_In_opt_ IWebView*, _In_opt_ IDOMNode*, _In_opt_ IDOMRange*, WebViewInsertAction, _Out_ BOOL* result);
</ins><span class="cx">
</span><span class="cx"> private:
</span><del>- bool m_acceptsEditing;
- ULONG m_refCount;
</del><ins>+ ULONG m_refCount { 1 };
+ bool m_acceptsEditing { true };
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> #endif // !defined(EditingDelegate_h)
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinFrameLoadDelegatecpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/FrameLoadDelegate.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/FrameLoadDelegate.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/FrameLoadDelegate.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2005, 2006, 2007, 2009, 2014 Apple Inc. All rights reserved.
</del><ins>+ * Copyright (C) 2005-2007, 2009, 2014-2015 Apple Inc. All rights reserved.
</ins><span class="cx"> * Copyright (C) 2010 Torch Mobile (Beijing) Co. Ltd. All rights reserved.
</span><span class="cx"> *
</span><span class="cx"> * Redistribution and use in source and binary forms, with or without
</span><span class="lines">@@ -74,8 +74,7 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> FrameLoadDelegate::FrameLoadDelegate()
</span><del>- : m_refCount(1)
- , m_gcController(std::make_unique<GCController>())
</del><ins>+ : m_gcController(std::make_unique<GCController>())
</ins><span class="cx"> , m_accessibilityController(std::make_unique<AccessibilityController>())
</span><span class="cx"> , m_textInputController(std::make_unique<TextInputController>())
</span><span class="cx"> {
</span><span class="lines">@@ -85,9 +84,11 @@
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::QueryInterface(REFIID riid, void** ppvObject)
</del><ins>+HRESULT FrameLoadDelegate::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject)
</ins><span class="cx"> {
</span><del>- *ppvObject = 0;
</del><ins>+ if (!ppvObject)
+ return E_POINTER;
+ *ppvObject = nullptr;
</ins><span class="cx"> if (IsEqualGUID(riid, IID_IUnknown))
</span><span class="cx"> *ppvObject = static_cast<IWebFrameLoadDelegate*>(this);
</span><span class="cx"> else if (IsEqualGUID(riid, IID_IWebFrameLoadDelegate))
</span><span class="lines">@@ -105,12 +106,12 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG FrameLoadDelegate::AddRef(void)
</del><ins>+ULONG FrameLoadDelegate::AddRef()
</ins><span class="cx"> {
</span><span class="cx"> return ++m_refCount;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG FrameLoadDelegate::Release(void)
</del><ins>+ULONG FrameLoadDelegate::Release()
</ins><span class="cx"> {
</span><span class="cx"> ULONG newRef = --m_refCount;
</span><span class="cx"> if (!newRef)
</span><span class="lines">@@ -119,8 +120,7 @@
</span><span class="cx"> return newRef;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-
-HRESULT FrameLoadDelegate::didStartProvisionalLoadForFrame(IWebView* /*webView*/, IWebFrame* frame)
</del><ins>+HRESULT FrameLoadDelegate::didStartProvisionalLoadForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame* frame)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpFrameLoadCallbacks())
</span><span class="cx"> printf("%s - didStartProvisionalLoadForFrame\n", descriptionSuitableForTestResult(frame).c_str());
</span><span class="lines">@@ -133,7 +133,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::didReceiveServerRedirectForProvisionalLoadForFrame(IWebView* /*webView*/, IWebFrame* frame)
</del><ins>+HRESULT FrameLoadDelegate::didReceiveServerRedirectForProvisionalLoadForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpFrameLoadCallbacks())
</span><span class="cx"> printf("%s - didReceiveServerRedirectForProvisionalLoadForFrame\n", descriptionSuitableForTestResult(frame).c_str());
</span><span class="lines">@@ -141,7 +141,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::didChangeLocationWithinPageForFrame(IWebView* , IWebFrame* frame)
</del><ins>+HRESULT FrameLoadDelegate::didChangeLocationWithinPageForFrame(_In_opt_ IWebView* , _In_opt_ IWebFrame* frame)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpFrameLoadCallbacks())
</span><span class="cx"> printf("%s - didChangeLocationWithinPageForFrame\n", descriptionSuitableForTestResult(frame).c_str());
</span><span class="lines">@@ -149,7 +149,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::didFailProvisionalLoadWithError(IWebView* /*webView*/, IWebError* error, IWebFrame* frame)
</del><ins>+HRESULT FrameLoadDelegate::didFailProvisionalLoadWithError(_In_opt_ IWebView*, _In_opt_ IWebError* error, _In_opt_ IWebFrame* frame)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpFrameLoadCallbacks())
</span><span class="cx"> printf("%s - didFailProvisionalLoadWithError\n", descriptionSuitableForTestResult(frame).c_str());
</span><span class="lines">@@ -158,7 +158,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::didCommitLoadForFrame(IWebView* webView, IWebFrame* frame)
</del><ins>+HRESULT FrameLoadDelegate::didCommitLoadForFrame(_In_opt_ IWebView* webView, _In_opt_ IWebFrame* frame)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpFrameLoadCallbacks())
</span><span class="cx"> printf("%s - didCommitLoadForFrame\n", descriptionSuitableForTestResult(frame).c_str());
</span><span class="lines">@@ -172,7 +172,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::didReceiveTitle(IWebView* /*webView*/, BSTR title, IWebFrame* frame)
</del><ins>+HRESULT FrameLoadDelegate::didReceiveTitle(_In_opt_ IWebView*, _In_ BSTR title, _In_opt_ IWebFrame* frame)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpFrameLoadCallbacks())
</span><span class="cx"> printf("%s - didReceiveTitle: %S\n", descriptionSuitableForTestResult(frame).c_str(), title);
</span><span class="lines">@@ -182,9 +182,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::didChangeIcons(
- /* [in] */ IWebView* webView,
- /* [in] */ IWebFrame* frame)
</del><ins>+HRESULT FrameLoadDelegate::didChangeIcons(_In_opt_ IWebView*, _In_opt_ IWebFrame* frame)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpIconChanges())
</span><span class="cx"> printf("%s - didChangeIcons\n", descriptionSuitableForTestResult(frame).c_str());
</span><span class="lines">@@ -252,7 +250,7 @@
</span><span class="cx"> dump();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::didFinishLoadForFrame(IWebView* /*webView*/, IWebFrame* frame)
</del><ins>+HRESULT FrameLoadDelegate::didFinishLoadForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame* frame)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpFrameLoadCallbacks())
</span><span class="cx"> printf("%s - didFinishLoadForFrame\n", descriptionSuitableForTestResult(frame).c_str());
</span><span class="lines">@@ -261,7 +259,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::didFailLoadWithError(IWebView* /*webView*/, IWebError* error, IWebFrame* frame)
</del><ins>+HRESULT FrameLoadDelegate::didFailLoadWithError(_In_opt_ IWebView*, _In_opt_ IWebError* error, _In_opt_ IWebFrame* frame)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpFrameLoadCallbacks())
</span><span class="cx"> printf("%s - didFailLoadWithError\n", descriptionSuitableForTestResult(frame).c_str());
</span><span class="lines">@@ -270,7 +268,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::willPerformClientRedirectToURL(IWebView* /*webView*/, BSTR url, double /*delaySeconds*/, DATE /*fireDate*/, IWebFrame* frame)
</del><ins>+HRESULT FrameLoadDelegate::willPerformClientRedirectToURL(_In_opt_ IWebView*, _In_ BSTR url, double /*delaySeconds*/, DATE /*fireDate*/, _In_opt_ IWebFrame*)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpFrameLoadCallbacks())
</span><span class="cx"> printf("%s - willPerformClientRedirectToURL: %S \n", descriptionSuitableForTestResult(frame).c_str(),
</span><span class="lines">@@ -279,7 +277,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::didCancelClientRedirectForFrame(IWebView* /*webView*/, IWebFrame* frame)
</del><ins>+HRESULT FrameLoadDelegate::didCancelClientRedirectForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame* frame)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpFrameLoadCallbacks())
</span><span class="cx"> printf("%s - didCancelClientRedirectForFrame\n", descriptionSuitableForTestResult(frame).c_str());
</span><span class="lines">@@ -288,7 +286,7 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::willCloseFrame(IWebView* /*webView*/, IWebFrame* /*frame*/)
</del><ins>+HRESULT FrameLoadDelegate::willCloseFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="lines">@@ -308,7 +306,7 @@
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::didClearWindowObjectForFrameInScriptWorld(IWebView* webView, IWebFrame* frame, IWebScriptWorld* world)
</del><ins>+HRESULT FrameLoadDelegate::didClearWindowObjectForFrameInScriptWorld(_In_opt_ IWebView* webView, _In_opt_ IWebFrame* frame, _In_opt_ IWebScriptWorld* world)
</ins><span class="cx"> {
</span><span class="cx"> ASSERT_ARG(webView, webView);
</span><span class="cx"> ASSERT_ARG(frame, frame);
</span><span class="lines">@@ -375,7 +373,7 @@
</span><span class="cx"> WebCoreTestSupport::injectInternalsObject(context);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::didFinishDocumentLoadForFrame(IWebView* /*sender*/, IWebFrame* frame)
</del><ins>+HRESULT FrameLoadDelegate::didFinishDocumentLoadForFrame(_In_opt_ IWebView* /*sender*/, _In_opt_ IWebFrame* frame)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpFrameLoadCallbacks())
</span><span class="cx"> printf("%s - didFinishDocumentLoadForFrame\n",
</span><span class="lines">@@ -397,7 +395,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::didHandleOnloadEventsForFrame(IWebView* /*sender*/, IWebFrame* frame)
</del><ins>+HRESULT FrameLoadDelegate::didHandleOnloadEventsForFrame(_In_opt_ IWebView* /*sender*/, _In_opt_ IWebFrame* frame)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpFrameLoadCallbacks())
</span><span class="cx"> printf("%s - didHandleOnloadEventsForFrame\n",
</span><span class="lines">@@ -406,12 +404,12 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::didFirstVisuallyNonEmptyLayoutInFrame(IWebView* /*sender*/, IWebFrame* /*frame*/)
</del><ins>+HRESULT FrameLoadDelegate::didFirstVisuallyNonEmptyLayoutInFrame(_In_opt_ IWebView* /*sender*/, _In_opt_ IWebFrame* /*frame*/)
</ins><span class="cx"> {
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::didDisplayInsecureContent(IWebView* /*sender*/)
</del><ins>+HRESULT FrameLoadDelegate::didDisplayInsecureContent(_In_opt_ IWebView* /*sender*/)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpFrameLoadCallbacks())
</span><span class="cx"> printf("didDisplayInsecureContent\n");
</span><span class="lines">@@ -419,7 +417,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::didRunInsecureContent(IWebView* /*sender*/, IWebSecurityOrigin* /*origin*/)
</del><ins>+HRESULT FrameLoadDelegate::didRunInsecureContent(_In_opt_ IWebView* /*sender*/, _In_opt_ IWebSecurityOrigin* /*origin*/)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpFrameLoadCallbacks())
</span><span class="cx"> printf("didRunInsecureContent\n");
</span><span class="lines">@@ -427,7 +425,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT FrameLoadDelegate::onNotify(IWebNotification* notification)
</del><ins>+HRESULT FrameLoadDelegate::onNotify(_In_opt_ IWebNotification* notification)
</ins><span class="cx"> {
</span><span class="cx"> _bstr_t notificationName;
</span><span class="cx"> HRESULT hr = notification->name(&notificationName.GetBSTR());
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinFrameLoadDelegateh"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/FrameLoadDelegate.h (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/FrameLoadDelegate.h        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/FrameLoadDelegate.h        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2005, 2006, 2007 Apple Inc. All rights reserved.
</del><ins>+ * Copyright (C) 2005-2007, 2015 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">@@ -47,111 +47,43 @@
</span><span class="cx"> AccessibilityController* accessibilityController() const { return m_accessibilityController.get(); }
</span><span class="cx">
</span><span class="cx"> // IUnknown
</span><del>- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
- virtual ULONG STDMETHODCALLTYPE AddRef(void);
- virtual ULONG STDMETHODCALLTYPE Release(void);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject);
+ virtual ULONG STDMETHODCALLTYPE AddRef();
+ virtual ULONG STDMETHODCALLTYPE Release();
</ins><span class="cx">
</span><span class="cx"> // IWebFrameLoadDelegate
</span><del>- virtual HRESULT STDMETHODCALLTYPE didStartProvisionalLoadForFrame(
- /* [in] */ IWebView *webView,
- /* [in] */ IWebFrame *frame);
-
- virtual HRESULT STDMETHODCALLTYPE didReceiveServerRedirectForProvisionalLoadForFrame(
- /* [in] */ IWebView *webView,
- /* [in] */ IWebFrame *frame);
-
- virtual HRESULT STDMETHODCALLTYPE didFailProvisionalLoadWithError(
- /* [in] */ IWebView *webView,
- /* [in] */ IWebError *error,
- /* [in] */ IWebFrame *frame);
-
- virtual HRESULT STDMETHODCALLTYPE didCommitLoadForFrame(
- /* [in] */ IWebView *webView,
- /* [in] */ IWebFrame *frame);
-
- virtual HRESULT STDMETHODCALLTYPE didReceiveTitle(
- /* [in] */ IWebView *webView,
- /* [in] */ BSTR title,
- /* [in] */ IWebFrame *frame);
-
- virtual HRESULT STDMETHODCALLTYPE didChangeIcons(
- /* [in] */ IWebView *webView,
- /* [in] */ IWebFrame *frame);
-
- virtual HRESULT STDMETHODCALLTYPE didReceiveIcon(/* [in] */ IWebView*, /* [in] */ HBITMAP, /* [in] */ IWebFrame*) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE didFinishLoadForFrame(
- /* [in] */ IWebView *webView,
- /* [in] */ IWebFrame *frame);
-
- virtual HRESULT STDMETHODCALLTYPE didFailLoadWithError(
- /* [in] */ IWebView *webView,
- /* [in] */ IWebError *error,
- /* [in] */ IWebFrame *forFrame);
-
- virtual HRESULT STDMETHODCALLTYPE didChangeLocationWithinPageForFrame(IWebView*, IWebFrame*);
-
- virtual HRESULT STDMETHODCALLTYPE willPerformClientRedirectToURL(
- /* [in] */ IWebView *webView,
- /* [in] */ BSTR url,
- /* [in] */ double delaySeconds,
- /* [in] */ DATE fireDate,
- /* [in] */ IWebFrame *frame);
-
- virtual HRESULT STDMETHODCALLTYPE didCancelClientRedirectForFrame(
- /* [in] */ IWebView *webView,
- /* [in] */ IWebFrame *frame);
-
- virtual HRESULT STDMETHODCALLTYPE willCloseFrame(
- /* [in] */ IWebView *webView,
- /* [in] */ IWebFrame *frame);
-
- virtual HRESULT STDMETHODCALLTYPE windowScriptObjectAvailable(IWebView*,
-JSContextRef, JSObjectRef windowObject);
-
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE didStartProvisionalLoadForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didReceiveServerRedirectForProvisionalLoadForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didFailProvisionalLoadWithError(_In_opt_ IWebView*, _In_opt_ IWebError*, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didCommitLoadForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didReceiveTitle(_In_opt_ IWebView*, _In_ BSTR title, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didChangeIcons(_In_opt_ IWebView*, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didReceiveIcon(_In_opt_ IWebView*, _In_ HBITMAP, _In_opt_ IWebFrame*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE didFinishLoadForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didFailLoadWithError(_In_opt_ IWebView*, _In_opt_ IWebError*, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didChangeLocationWithinPageForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE willPerformClientRedirectToURL(_In_opt_ IWebView*, _In_ BSTR url, double delaySeconds, DATE fireDate, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didCancelClientRedirectForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE willCloseFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE windowScriptObjectAvailable(IWebView*, JSContextRef, JSObjectRef windowObject);
</ins><span class="cx"> virtual /* [local] */ HRESULT STDMETHODCALLTYPE didClearWindowObject(IWebView*, JSContextRef, JSObjectRef windowObject, IWebFrame*);
</span><span class="cx">
</span><span class="cx"> // IWebFrameLoadDelegatePrivate
</span><del>- virtual HRESULT STDMETHODCALLTYPE didFinishDocumentLoadForFrame(
- /* [in] */ IWebView *sender,
- /* [in] */ IWebFrame *frame);
-
- virtual HRESULT STDMETHODCALLTYPE didFirstLayoutInFrame(
- /* [in] */ IWebView *sender,
- /* [in] */ IWebFrame *frame) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE didHandleOnloadEventsForFrame(
- /* [in] */ IWebView *sender,
- /* [in] */ IWebFrame *frame);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE didFinishDocumentLoadForFrame(_In_opt_ IWebView* sender, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didFirstLayoutInFrame(_In_opt_ IWebView* sender, _In_opt_ IWebFrame*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE didHandleOnloadEventsForFrame(_In_opt_ IWebView* sender, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didFirstVisuallyNonEmptyLayoutInFrame(_In_opt_ IWebView* sender, _In_opt_ IWebFrame*);
</ins><span class="cx">
</span><del>- virtual HRESULT STDMETHODCALLTYPE didFirstVisuallyNonEmptyLayoutInFrame(
- /* [in] */ IWebView *sender,
- /* [in] */ IWebFrame *frame);
-
</del><span class="cx"> // IWebFrameLoadDelegatePrivate2
</span><del>- virtual HRESULT STDMETHODCALLTYPE didDisplayInsecureContent(
- /* [in] */ IWebView *sender);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE didDisplayInsecureContent(_In_opt_ IWebView*);
+ virtual HRESULT STDMETHODCALLTYPE didRunInsecureContent(_In_opt_ IWebView*, _In_opt_ IWebSecurityOrigin*);
+ virtual HRESULT STDMETHODCALLTYPE didClearWindowObjectForFrameInScriptWorld(_In_opt_ IWebView*, _In_opt_ IWebFrame*, _In_opt_ IWebScriptWorld*);
+ virtual HRESULT STDMETHODCALLTYPE didPushStateWithinPageForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE didReplaceStateWithinPageForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE didPopStateWithinPageForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*) { return E_NOTIMPL; }
</ins><span class="cx">
</span><del>- virtual HRESULT STDMETHODCALLTYPE didRunInsecureContent(
- /* [in] */ IWebView *sender,
- /* [in] */ IWebSecurityOrigin *origin);
-
- virtual HRESULT STDMETHODCALLTYPE didClearWindowObjectForFrameInScriptWorld(IWebView*, IWebFrame*, IWebScriptWorld*);
-
- virtual HRESULT STDMETHODCALLTYPE didPushStateWithinPageForFrame(
- /* [in] */ IWebView *sender,
- /* [in] */ IWebFrame *frame) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE didReplaceStateWithinPageForFrame(
- /* [in] */ IWebView *sender,
- /* [in] */ IWebFrame *frame) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE didPopStateWithinPageForFrame(
- /* [in] */ IWebView *sender,
- /* [in] */ IWebFrame *frame) { return E_NOTIMPL; }
-
</del><span class="cx"> // IWebNotificationObserver
</span><del>- virtual HRESULT STDMETHODCALLTYPE onNotify(IWebNotification*);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE onNotify(_In_opt_ IWebNotification*);
</ins><span class="cx">
</span><span class="cx"> private:
</span><span class="cx"> void didClearWindowObjectForFrameInIsolatedWorld(IWebFrame*, IWebScriptWorld*);
</span><span class="lines">@@ -160,10 +92,10 @@
</span><span class="cx"> void locationChangeDone(IWebError*, IWebFrame*);
</span><span class="cx"> void webViewProgressFinishedNotification();
</span><span class="cx">
</span><del>- ULONG m_refCount;
</del><span class="cx"> std::unique_ptr<GCController> m_gcController;
</span><span class="cx"> std::unique_ptr<AccessibilityController> m_accessibilityController;
</span><span class="cx"> std::unique_ptr<TextInputController> m_textInputController;
</span><ins>+ ULONG m_refCount { 1 };
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> #endif // FrameLoadDelegate_h
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinHistoryDelegatecpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/HistoryDelegate.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/HistoryDelegate.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/HistoryDelegate.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2009, 2014 Apple Inc. All rights reserved.
</del><ins>+ * Copyright (C) 2009, 2014-2015 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">@@ -41,7 +41,6 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> HistoryDelegate::HistoryDelegate()
</span><del>- : m_refCount(1)
</del><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -49,10 +48,12 @@
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><del>- // IUnknown
-HRESULT HistoryDelegate::QueryInterface(REFIID riid, void** ppvObject)
</del><ins>+// IUnknown
+HRESULT HistoryDelegate::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject)
</ins><span class="cx"> {
</span><del>- *ppvObject = 0;
</del><ins>+ if (!ppvObject)
+ return E_POINTER;
+ *ppvObject = nullptr;
</ins><span class="cx"> if (IsEqualGUID(riid, IID_IUnknown))
</span><span class="cx"> *ppvObject = static_cast<IWebHistoryDelegate*>(this);
</span><span class="cx"> else if (IsEqualGUID(riid, IID_IWebHistoryDelegate))
</span><span class="lines">@@ -64,12 +65,12 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG HistoryDelegate::AddRef(void)
</del><ins>+ULONG HistoryDelegate::AddRef()
</ins><span class="cx"> {
</span><span class="cx"> return ++m_refCount;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG HistoryDelegate::Release(void)
</del><ins>+ULONG HistoryDelegate::Release()
</ins><span class="cx"> {
</span><span class="cx"> ULONG newRef = --m_refCount;
</span><span class="cx"> if (!newRef)
</span><span class="lines">@@ -79,7 +80,7 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // IWebHistoryDelegate
</span><del>-HRESULT HistoryDelegate::didNavigateWithNavigationData(IWebView* webView, IWebNavigationData* navigationData, IWebFrame* webFrame)
</del><ins>+HRESULT HistoryDelegate::didNavigateWithNavigationData(_In_opt_ IWebView* webView, _In_opt_ IWebNavigationData* navigationData, _In_opt_ IWebFrame* webFrame)
</ins><span class="cx"> {
</span><span class="cx"> if (!gTestRunner->dumpHistoryDelegateCallbacks())
</span><span class="cx"> return S_OK;
</span><span class="lines">@@ -150,7 +151,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT HistoryDelegate::didPerformClientRedirectFromURL(IWebView*, BSTR sourceURL, BSTR destinationURL, IWebFrame*)
</del><ins>+HRESULT HistoryDelegate::didPerformClientRedirectFromURL(_In_opt_ IWebView*, _In_ BSTR sourceURL, _In_ BSTR destinationURL, _In_opt_ IWebFrame*)
</ins><span class="cx"> {
</span><span class="cx"> if (!gTestRunner->dumpHistoryDelegateCallbacks())
</span><span class="cx"> return S_OK;
</span><span class="lines">@@ -167,7 +168,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT HistoryDelegate::didPerformServerRedirectFromURL(IWebView* webView, BSTR sourceURL, BSTR destinationURL, IWebFrame* webFrame)
</del><ins>+HRESULT HistoryDelegate::didPerformServerRedirectFromURL(_In_opt_ IWebView* webView, _In_ BSTR sourceURL, _In_ BSTR destinationURL, _In_opt_ IWebFrame* webFrame)
</ins><span class="cx"> {
</span><span class="cx"> if (!gTestRunner->dumpHistoryDelegateCallbacks())
</span><span class="cx"> return S_OK;
</span><span class="lines">@@ -184,7 +185,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT HistoryDelegate::updateHistoryTitle(IWebView* webView, BSTR titleBSTR, BSTR urlBSTR)
</del><ins>+HRESULT HistoryDelegate::updateHistoryTitle(_In_opt_ IWebView* webView, _In_ BSTR titleBSTR, _In_ BSTR urlBSTR)
</ins><span class="cx"> {
</span><span class="cx"> if (!gTestRunner->dumpHistoryDelegateCallbacks())
</span><span class="cx"> return S_OK;
</span><span class="lines">@@ -197,7 +198,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT HistoryDelegate::populateVisitedLinksForWebView(IWebView* webView)
</del><ins>+HRESULT HistoryDelegate::populateVisitedLinksForWebView(_In_opt_ IWebView* webView)
</ins><span class="cx"> {
</span><span class="cx"> if (!gTestRunner->dumpHistoryDelegateCallbacks())
</span><span class="cx"> return S_OK;
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinHistoryDelegateh"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/HistoryDelegate.h (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/HistoryDelegate.h        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/HistoryDelegate.h        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -34,38 +34,19 @@
</span><span class="cx"> virtual ~HistoryDelegate();
</span><span class="cx">
</span><span class="cx"> // IUnknown
</span><del>- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
- virtual ULONG STDMETHODCALLTYPE AddRef(void);
- virtual ULONG STDMETHODCALLTYPE Release(void);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject);
+ virtual ULONG STDMETHODCALLTYPE AddRef();
+ virtual ULONG STDMETHODCALLTYPE Release();
</ins><span class="cx">
</span><span class="cx"> // IWebHistoryDelegate
</span><del>- virtual HRESULT STDMETHODCALLTYPE didNavigateWithNavigationData(
- /* [in] */ IWebView* webView,
- /* [in] */ IWebNavigationData* navigationData,
- /* [in] */ IWebFrame* webFrame);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE didNavigateWithNavigationData(_In_opt_ IWebView*, _In_opt_ IWebNavigationData*, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didPerformClientRedirectFromURL(_In_opt_ IWebView*, _In_ BSTR sourceURL, _In_ BSTR destinationURL, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didPerformServerRedirectFromURL(_In_opt_ IWebView*, _In_ BSTR sourceURL, _In_ BSTR destinationURL, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE updateHistoryTitle(_In_opt_ IWebView*, _In_ BSTR title, _In_ BSTR url);
+ virtual HRESULT STDMETHODCALLTYPE populateVisitedLinksForWebView(_In_opt_ IWebView*);
</ins><span class="cx">
</span><del>- virtual HRESULT STDMETHODCALLTYPE didPerformClientRedirectFromURL(
- /* [in] */ IWebView* webView,
- /* [in] */ BSTR sourceURL,
- /* [in] */ BSTR destinationURL,
- /* [in] */ IWebFrame* webFrame);
-
- virtual HRESULT STDMETHODCALLTYPE didPerformServerRedirectFromURL(
- /* [in] */ IWebView* webView,
- /* [in] */ BSTR sourceURL,
- /* [in] */ BSTR destinationURL,
- /* [in] */ IWebFrame* webFrame);
-
- virtual HRESULT STDMETHODCALLTYPE updateHistoryTitle(
- /* [in] */ IWebView* webView,
- /* [in] */ BSTR title,
- /* [in] */ BSTR url);
-
- virtual HRESULT STDMETHODCALLTYPE populateVisitedLinksForWebView(
- /* [in] */ IWebView* webView);
-
</del><span class="cx"> private:
</span><del>- ULONG m_refCount;
</del><ins>+ ULONG m_refCount { 1 };
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> #endif // HistoryDelegate_h
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinPolicyDelegatecpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/PolicyDelegate.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/PolicyDelegate.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/PolicyDelegate.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2007, 2009, 2014 Apple Inc. All rights reserved.
</del><ins>+ * Copyright (C) 2007, 2009, 2014-2015 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">@@ -55,16 +55,15 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> PolicyDelegate::PolicyDelegate()
</span><del>- : m_refCount(1)
- , m_permissiveDelegate(false)
- , m_controllerToNotifyDone(0)
</del><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // IUnknown
</span><del>-HRESULT PolicyDelegate::QueryInterface(REFIID riid, void** ppvObject)
</del><ins>+HRESULT PolicyDelegate::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject)
</ins><span class="cx"> {
</span><del>- *ppvObject = 0;
</del><ins>+ if (!ppvObject)
+ return E_POINTER;
+ *ppvObject = nullptr;
</ins><span class="cx"> if (IsEqualGUID(riid, IID_IUnknown))
</span><span class="cx"> *ppvObject = static_cast<IWebPolicyDelegate*>(this);
</span><span class="cx"> else if (IsEqualGUID(riid, IID_IWebPolicyDelegate))
</span><span class="lines">@@ -76,12 +75,12 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG PolicyDelegate::AddRef(void)
</del><ins>+ULONG PolicyDelegate::AddRef()
</ins><span class="cx"> {
</span><span class="cx"> return ++m_refCount;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG PolicyDelegate::Release(void)
</del><ins>+ULONG PolicyDelegate::Release()
</ins><span class="cx"> {
</span><span class="cx"> ULONG newRef = --m_refCount;
</span><span class="cx"> if (!newRef)
</span><span class="lines">@@ -90,8 +89,8 @@
</span><span class="cx"> return newRef;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT PolicyDelegate::decidePolicyForNavigationAction(IWebView* /*webView*/, IPropertyBag* actionInformation,
- IWebURLRequest* request, IWebFrame* frame, IWebPolicyDecisionListener* listener)
</del><ins>+HRESULT PolicyDelegate::decidePolicyForNavigationAction(_In_opt_ IWebView*, _In_opt_ IPropertyBag* actionInformation,
+ _In_opt_ IWebURLRequest* request, _In_opt_ IWebFrame* frame, _In_opt_ IWebPolicyDecisionListener* listener)
</ins><span class="cx"> {
</span><span class="cx"> _bstr_t url;
</span><span class="cx"> request->URL(&url.GetBSTR());
</span><span class="lines">@@ -156,10 +155,7 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx">
</span><del>-HRESULT PolicyDelegate::unableToImplementPolicyWithError(
- /*[in]*/ IWebView* /*webView*/,
- /*[in]*/ IWebError* error,
- /*[in]*/ IWebFrame* frame)
</del><ins>+HRESULT PolicyDelegate::unableToImplementPolicyWithError(_In_opt_ IWebView*, _In_opt_ IWebError* error, _In_opt_ IWebFrame* frame)
</ins><span class="cx"> {
</span><span class="cx"> _bstr_t domainStr;
</span><span class="cx"> error->domain(&domainStr.GetBSTR());
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinPolicyDelegateh"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/PolicyDelegate.h (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/PolicyDelegate.h        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/PolicyDelegate.h        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2007, 2009 Apple Inc. All rights reserved.
</del><ins>+ * Copyright (C) 2007, 2009, 2015 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">@@ -38,45 +38,35 @@
</span><span class="cx"> PolicyDelegate();
</span><span class="cx">
</span><span class="cx"> // IUnknown
</span><del>- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
- virtual ULONG STDMETHODCALLTYPE AddRef(void);
- virtual ULONG STDMETHODCALLTYPE Release(void);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject);
+ virtual ULONG STDMETHODCALLTYPE AddRef();
+ virtual ULONG STDMETHODCALLTYPE Release();
</ins><span class="cx">
</span><span class="cx"> // IWebPolicyDelegate
</span><del>- virtual HRESULT STDMETHODCALLTYPE decidePolicyForNavigationAction(
- /* [in] */ IWebView *webView,
- /* [in] */ IPropertyBag *actionInformation,
- /* [in] */ IWebURLRequest *request,
- /* [in] */ IWebFrame *frame,
- /* [in] */ IWebPolicyDecisionListener *listener);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE decidePolicyForNavigationAction(_In_opt_ IWebView*, _In_opt_ IPropertyBag* actionInformation,
+ _In_opt_ IWebURLRequest*, _In_opt_ IWebFrame*, _In_opt_ IWebPolicyDecisionListener*);
+ virtual HRESULT STDMETHODCALLTYPE decidePolicyForNewWindowAction(_In_opt_ IWebView*, _In_opt_ IPropertyBag* actionInformation,
+ _In_opt_ IWebURLRequest*, _In_ BSTR frameName, _In_opt_ IWebPolicyDecisionListener*)
+ {
+ return E_NOTIMPL;
+ }
+
+ virtual HRESULT STDMETHODCALLTYPE decidePolicyForMIMEType(_In_opt_ IWebView*, _In_ BSTR type, _In_opt_ IWebURLRequest*,
+ _In_opt_ IWebFrame*, _In_opt_ IWebPolicyDecisionListener*)
+ {
+ return E_NOTIMPL;
+ }
</ins><span class="cx">
</span><del>- virtual HRESULT STDMETHODCALLTYPE decidePolicyForNewWindowAction(
- /* [in] */ IWebView *webView,
- /* [in] */ IPropertyBag *actionInformation,
- /* [in] */ IWebURLRequest *request,
- /* [in] */ BSTR frameName,
- /* [in] */ IWebPolicyDecisionListener *listener){ return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE decidePolicyForMIMEType(
- /* [in] */ IWebView *webView,
- /* [in] */ BSTR type,
- /* [in] */ IWebURLRequest *request,
- /* [in] */ IWebFrame *frame,
- /* [in] */ IWebPolicyDecisionListener *listener){ return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE unableToImplementPolicyWithError(
- /* [in] */ IWebView *webView,
- /* [in] */ IWebError *error,
- /* [in] */ IWebFrame *frame);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE unableToImplementPolicyWithError(_In_opt_ IWebView*, _In_opt_ IWebError*, _In_opt_ IWebFrame*);
</ins><span class="cx">
</span><span class="cx"> // PolicyDelegate
</span><span class="cx"> void setPermissive(bool permissive) { m_permissiveDelegate = permissive; }
</span><span class="cx"> void setControllerToNotifyDone(TestRunner* controller) { m_controllerToNotifyDone = controller; }
</span><span class="cx">
</span><span class="cx"> private:
</span><del>- ULONG m_refCount;
- bool m_permissiveDelegate;
- TestRunner* m_controllerToNotifyDone;
</del><ins>+ TestRunner* m_controllerToNotifyDone { nullptr };
+ ULONG m_refCount { 1 };
+ bool m_permissiveDelegate { false };
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> #endif // PolicyDelegate_h
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinResourceLoadDelegatecpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/ResourceLoadDelegate.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/ResourceLoadDelegate.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/ResourceLoadDelegate.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2007, 2014 Apple Inc. All rights reserved.
</del><ins>+ * Copyright (C) 2007, 2014-2015 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">@@ -157,7 +157,6 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> ResourceLoadDelegate::ResourceLoadDelegate()
</span><del>- : m_refCount(1)
</del><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -165,9 +164,11 @@
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT ResourceLoadDelegate::QueryInterface(REFIID riid, void** ppvObject)
</del><ins>+HRESULT ResourceLoadDelegate::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject)
</ins><span class="cx"> {
</span><del>- *ppvObject = 0;
</del><ins>+ if (!ppvObject)
+ return E_POINTER;
+ *ppvObject = nullptr;
</ins><span class="cx"> if (IsEqualGUID(riid, IID_IUnknown))
</span><span class="cx"> *ppvObject = static_cast<IWebResourceLoadDelegate*>(this);
</span><span class="cx"> else if (IsEqualGUID(riid, IID_IWebResourceLoadDelegate))
</span><span class="lines">@@ -181,12 +182,12 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG ResourceLoadDelegate::AddRef(void)
</del><ins>+ULONG ResourceLoadDelegate::AddRef()
</ins><span class="cx"> {
</span><span class="cx"> return ++m_refCount;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG ResourceLoadDelegate::Release(void)
</del><ins>+ULONG ResourceLoadDelegate::Release()
</ins><span class="cx"> {
</span><span class="cx"> ULONG newRef = --m_refCount;
</span><span class="cx"> if (!newRef)
</span><span class="lines">@@ -195,7 +196,8 @@
</span><span class="cx"> return newRef;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT ResourceLoadDelegate::identifierForInitialRequest(IWebView* webView, IWebURLRequest* request, IWebDataSource* dataSource, unsigned long identifier)
</del><ins>+HRESULT ResourceLoadDelegate::identifierForInitialRequest(_In_opt_ IWebView* webView, _In_opt_ IWebURLRequest* request,
+ _In_opt_ IWebDataSource* dataSource, unsigned long identifier)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpResourceLoadCallbacks()) {
</span><span class="cx"> _bstr_t urlStr;
</span><span class="lines">@@ -209,9 +211,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT ResourceLoadDelegate::removeIdentifierForRequest(
- /* [in] */ IWebView* webView,
- /* [in] */ unsigned long identifier)
</del><ins>+HRESULT ResourceLoadDelegate::removeIdentifierForRequest(_In_opt_ IWebView* webView, unsigned long identifier)
</ins><span class="cx"> {
</span><span class="cx"> urlMap().remove(identifier);
</span><span class="cx">
</span><span class="lines">@@ -229,9 +229,14 @@
</span><span class="cx"> return kCFCompareEqualTo == CFStringCompare(host, CFSTR("255.255.255.255"), 0);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT ResourceLoadDelegate::willSendRequest(IWebView* webView, unsigned long identifier, IWebURLRequest* request,
- IWebURLResponse* redirectResponse, IWebDataSource* dataSource, IWebURLRequest** newRequest)
</del><ins>+HRESULT ResourceLoadDelegate::willSendRequest(_In_opt_ IWebView* webView, unsigned long identifier, _In_opt_ IWebURLRequest* request,
+ _In_opt_ IWebURLResponse* redirectResponse, _In_opt_ IWebDataSource* dataSource, _COM_Outptr_opt_ IWebURLRequest** newRequest)
</ins><span class="cx"> {
</span><ins>+ if (!newRequest)
+ return E_POINTER;
+
+ *newRequest = nullptr;
+
</ins><span class="cx"> if (!done && gTestRunner->dumpResourceLoadCallbacks()) {
</span><span class="cx"> printf("%S - willSendRequest %S redirectResponse %S\n",
</span><span class="cx"> descriptionSuitableForTestResult(identifier).c_str(),
</span><span class="lines">@@ -241,28 +246,23 @@
</span><span class="cx">
</span><span class="cx"> if (!done && !gTestRunner->deferMainResourceDataLoad()) {
</span><span class="cx"> COMPtr<IWebDataSourcePrivate> dataSourcePrivate(Query, dataSource);
</span><del>- if (!dataSourcePrivate) {
- *newRequest = nullptr;
</del><ins>+ if (!dataSourcePrivate)
</ins><span class="cx"> return E_FAIL;
</span><del>- }
</del><ins>+
</ins><span class="cx"> dataSourcePrivate->setDeferMainResourceDataLoad(FALSE);
</span><span class="cx"> }
</span><span class="cx">
</span><del>- if (!done && gTestRunner->willSendRequestReturnsNull()) {
- *newRequest = nullptr;
</del><ins>+ if (!done && gTestRunner->willSendRequestReturnsNull())
</ins><span class="cx"> return S_OK;
</span><del>- }
</del><span class="cx">
</span><span class="cx"> if (!done && gTestRunner->willSendRequestReturnsNullOnRedirect() && redirectResponse) {
</span><span class="cx"> printf("Returning null for this redirect\n");
</span><del>- *newRequest = nullptr;
</del><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> _bstr_t urlBstr;
</span><span class="cx"> if (FAILED(request->URL(&urlBstr.GetBSTR()))) {
</span><span class="cx"> printf("Request has no URL\n");
</span><del>- *newRequest = nullptr;
</del><span class="cx"> return E_FAIL;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -285,7 +285,6 @@
</span><span class="cx"> }
</span><span class="cx"> if (!isLocalhost(host.get()) && !hostIsUsedBySomeTestsToGenerateError(host.get()) && (!testHost || isLocalhost(testHost.get()))) {
</span><span class="cx"> printf("Blocked access to external URL %s\n", static_cast<const char*>(urlBstr));
</span><del>- *newRequest = nullptr;
</del><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -303,7 +302,8 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT ResourceLoadDelegate::didReceiveAuthenticationChallenge(IWebView* webView, unsigned long identifier, IWebURLAuthenticationChallenge* challenge, IWebDataSource* dataSource)
</del><ins>+HRESULT ResourceLoadDelegate::didReceiveAuthenticationChallenge(_In_opt_ IWebView* webView, unsigned long identifier,
+ _In_opt_ IWebURLAuthenticationChallenge* challenge, _In_opt_ IWebDataSource* dataSource)
</ins><span class="cx"> {
</span><span class="cx"> COMPtr<IWebURLAuthenticationChallengeSender> sender;
</span><span class="cx"> if (!challenge || FAILED(challenge->sender(&sender)))
</span><span class="lines">@@ -329,11 +329,8 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT ResourceLoadDelegate::didReceiveResponse(
- /* [in] */ IWebView* webView,
- /* [in] */ unsigned long identifier,
- /* [in] */ IWebURLResponse* response,
- /* [in] */ IWebDataSource* dataSource)
</del><ins>+HRESULT ResourceLoadDelegate::didReceiveResponse(_In_opt_ IWebView* webView, unsigned long identifier,
+ _In_opt_ IWebURLResponse* response, _In_opt_ IWebDataSource* dataSource)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpResourceLoadCallbacks()) {
</span><span class="cx"> printf("%S - didReceiveResponse %S\n",
</span><span class="lines">@@ -358,7 +355,7 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx">
</span><del>-HRESULT ResourceLoadDelegate::didFinishLoadingFromDataSource(IWebView* webView, unsigned long identifier, IWebDataSource* dataSource)
</del><ins>+HRESULT ResourceLoadDelegate::didFinishLoadingFromDataSource(_In_opt_ IWebView* webView, unsigned long identifier, _In_opt_ IWebDataSource* dataSource)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpResourceLoadCallbacks()) {
</span><span class="cx"> printf("%S - didFinishLoading\n",
</span><span class="lines">@@ -370,7 +367,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT ResourceLoadDelegate::didFailLoadingWithError(IWebView* webView, unsigned long identifier, IWebError* error, IWebDataSource* dataSource)
</del><ins>+HRESULT ResourceLoadDelegate::didFailLoadingWithError(_In_opt_ IWebView* webView, unsigned long identifier, _In_opt_ IWebError* error, _In_opt_ IWebDataSource* dataSource)
</ins><span class="cx"> {
</span><span class="cx"> if (!done && gTestRunner->dumpResourceLoadCallbacks()) {
</span><span class="cx"> printf("%S - didFailLoadingWithError: %S\n",
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinResourceLoadDelegateh"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/ResourceLoadDelegate.h (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/ResourceLoadDelegate.h        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/ResourceLoadDelegate.h        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -39,69 +39,33 @@
</span><span class="cx"> virtual ~ResourceLoadDelegate();
</span><span class="cx">
</span><span class="cx"> // IUnknown
</span><del>- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
- virtual ULONG STDMETHODCALLTYPE AddRef(void);
- virtual ULONG STDMETHODCALLTYPE Release(void);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject);
+ virtual ULONG STDMETHODCALLTYPE AddRef();
+ virtual ULONG STDMETHODCALLTYPE Release();
</ins><span class="cx">
</span><span class="cx"> // IWebResourceLoadDelegate
</span><del>- virtual HRESULT STDMETHODCALLTYPE identifierForInitialRequest(
- /* [in] */ IWebView *webView,
- /* [in] */ IWebURLRequest *request,
- /* [in] */ IWebDataSource *dataSource,
- /* [in] */ unsigned long identifier);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE identifierForInitialRequest(_In_opt_ IWebView*, _In_opt_ IWebURLRequest*, _In_opt_ IWebDataSource*, unsigned long identifier);
+ virtual HRESULT STDMETHODCALLTYPE willSendRequest(_In_opt_ IWebView*, unsigned long identifier, _In_opt_ IWebURLRequest*, _In_opt_ IWebURLResponse*,
+ _In_opt_ IWebDataSource*, _COM_Outptr_opt_ IWebURLRequest**);
+ virtual HRESULT STDMETHODCALLTYPE didReceiveAuthenticationChallenge(_In_opt_ IWebView*, unsigned long identifier, _In_opt_ IWebURLAuthenticationChallenge*, _In_opt_ IWebDataSource*);
+ virtual HRESULT STDMETHODCALLTYPE didCancelAuthenticationChallenge(_In_opt_ IWebView*, unsigned long identifier, _In_opt_ IWebURLAuthenticationChallenge*, _In_opt_ IWebDataSource *dataSource)
+ {
+ return E_NOTIMPL;
+ }
</ins><span class="cx">
</span><del>- virtual HRESULT STDMETHODCALLTYPE willSendRequest(
- /* [in] */ IWebView *webView,
- /* [in] */ unsigned long identifier,
- /* [in] */ IWebURLRequest *request,
- /* [in] */ IWebURLResponse *redirectResponse,
- /* [in] */ IWebDataSource *dataSource,
- /* [retval][out] */ IWebURLRequest **newRequest);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE didReceiveResponse(_In_opt_ IWebView*, unsigned long identifier, _In_opt_ IWebURLResponse*, _In_opt_ IWebDataSource*);
</ins><span class="cx">
</span><del>- virtual HRESULT STDMETHODCALLTYPE didReceiveAuthenticationChallenge(
- /* [in] */ IWebView *webView,
- /* [in] */ unsigned long identifier,
- /* [in] */ IWebURLAuthenticationChallenge *challenge,
- /* [in] */ IWebDataSource *dataSource);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE didReceiveContentLength(_In_opt_ IWebView*, unsigned long identifier, UINT length, _In_opt_ IWebDataSource*)
+ {
+ return E_NOTIMPL;
+ }
</ins><span class="cx">
</span><del>- virtual HRESULT STDMETHODCALLTYPE didCancelAuthenticationChallenge(
- /* [in] */ IWebView *webView,
- /* [in] */ unsigned long identifier,
- /* [in] */ IWebURLAuthenticationChallenge *challenge,
- /* [in] */ IWebDataSource *dataSource) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE didReceiveResponse(
- /* [in] */ IWebView *webView,
- /* [in] */ unsigned long identifier,
- /* [in] */ IWebURLResponse *response,
- /* [in] */ IWebDataSource *dataSource);
-
- virtual HRESULT STDMETHODCALLTYPE didReceiveContentLength(
- /* [in] */ IWebView *webView,
- /* [in] */ unsigned long identifier,
- /* [in] */ UINT length,
- /* [in] */ IWebDataSource *dataSource) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE didFinishLoadingFromDataSource(
- /* [in] */ IWebView *webView,
- /* [in] */ unsigned long identifier,
- /* [in] */ IWebDataSource *dataSource);
-
- virtual HRESULT STDMETHODCALLTYPE didFailLoadingWithError(
- /* [in] */ IWebView *webView,
- /* [in] */ unsigned long identifier,
- /* [in] */ IWebError *error,
- /* [in] */ IWebDataSource *dataSource);
-
- virtual HRESULT STDMETHODCALLTYPE plugInFailedWithError(
- /* [in] */ IWebView *webView,
- /* [in] */ IWebError *error,
- /* [in] */ IWebDataSource *dataSource) { return E_NOTIMPL; }
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE didFinishLoadingFromDataSource(_In_opt_ IWebView*, unsigned long identifier, _In_opt_ IWebDataSource*);
+ virtual HRESULT STDMETHODCALLTYPE didFailLoadingWithError(_In_opt_ IWebView*, unsigned long identifier, _In_opt_ IWebError*, _In_opt_ IWebDataSource*);
+ virtual HRESULT STDMETHODCALLTYPE plugInFailedWithError(_In_opt_ IWebView*, _In_opt_ IWebError*, _In_opt_ IWebDataSource*) { return E_NOTIMPL; }
</ins><span class="cx">
</span><span class="cx"> // IWebResourceLoadDelegatePrivate2
</span><del>- virtual HRESULT STDMETHODCALLTYPE removeIdentifierForRequest(
- /* [in] */ IWebView *webView,
- /* [in] */ unsigned long identifier);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE removeIdentifierForRequest(_In_opt_ IWebView*, unsigned long identifier);
</ins><span class="cx">
</span><span class="cx"> private:
</span><span class="cx"> static std::wstring descriptionSuitableForTestResult(IWebURLRequest*);
</span><span class="lines">@@ -113,7 +77,7 @@
</span><span class="cx"> IdentifierMap& urlMap() { return m_urlMap; }
</span><span class="cx"> IdentifierMap m_urlMap;
</span><span class="cx">
</span><del>- ULONG m_refCount;
</del><ins>+ ULONG m_refCount { 1 };
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> #endif // ResourceLoadDelegate_h
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinTestRunnerWincpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/TestRunnerWin.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/TestRunnerWin.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/TestRunnerWin.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -262,7 +262,7 @@
</span><span class="cx"> if (FAILED(sharedHistory->QueryInterface(&sharedHistoryPrivate)))
</span><span class="cx"> return 0;
</span><span class="cx">
</span><del>- int count;
</del><ins>+ int count = 0;
</ins><span class="cx"> if (FAILED(sharedHistoryPrivate->allItems(&count, 0)))
</span><span class="cx"> return 0;
</span><span class="cx">
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinUIDelegatecpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/UIDelegate.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/UIDelegate.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/UIDelegate.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2005, 2006, 2007, 2008, 2014 Apple Inc. All rights reserved.
</del><ins>+ * Copyright (C) 2005-2008, 2014-2015 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">@@ -96,15 +96,13 @@
</span><span class="cx"> private:
</span><span class="cx"> std::unique_ptr<DRTUndoStack> m_redoStack;
</span><span class="cx"> std::unique_ptr<DRTUndoStack> m_undoStack;
</span><del>- bool m_isRedoing;
- bool m_isUndoing;
</del><ins>+ bool m_isRedoing { false };
+ bool m_isUndoing { false };
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> DRTUndoManager::DRTUndoManager()
</span><span class="cx"> : m_redoStack(std::make_unique<DRTUndoStack>())
</span><span class="cx"> , m_undoStack(std::make_unique<DRTUndoStack>())
</span><del>- , m_isRedoing(false)
- , m_isUndoing(false)
</del><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -148,8 +146,7 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> UIDelegate::UIDelegate()
</span><del>- : m_refCount(1)
- , m_undoManager(std::make_unique<DRTUndoManager>())
</del><ins>+ : m_undoManager(std::make_unique<DRTUndoManager>())
</ins><span class="cx"> , m_desktopNotifications(new DRTDesktopNotificationPresenter)
</span><span class="cx"> {
</span><span class="cx"> m_frame.bottom = 0;
</span><span class="lines">@@ -163,9 +160,11 @@
</span><span class="cx"> m_undoManager = std::make_unique<DRTUndoManager>();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::QueryInterface(REFIID riid, void** ppvObject)
</del><ins>+HRESULT UIDelegate::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject)
</ins><span class="cx"> {
</span><del>- *ppvObject = 0;
</del><ins>+ if (!ppvObject)
+ return E_POINTER;
+ *ppvObject = nullptr;
</ins><span class="cx"> if (IsEqualGUID(riid, IID_IUnknown))
</span><span class="cx"> *ppvObject = static_cast<IWebUIDelegate*>(this);
</span><span class="cx"> else if (IsEqualGUID(riid, IID_IWebUIDelegate))
</span><span class="lines">@@ -199,32 +198,40 @@
</span><span class="cx"> return newRef;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::hasCustomMenuImplementation(BOOL* hasCustomMenus)
</del><ins>+HRESULT UIDelegate::willPerformDragSourceAction(_In_opt_ IWebView*, WebDragSourceAction, _In_ LPPOINT, _In_opt_ IDataObject* pasteboard, _COM_Outptr_opt_ IDataObject** newPasteboard)
</ins><span class="cx"> {
</span><ins>+ if (!newPasteboard)
+ return E_POINTER;
+ *newPasteboard = nullptr;
+ return E_NOTIMPL;
+}
+
+HRESULT UIDelegate::hasCustomMenuImplementation(_Out_ BOOL* hasCustomMenus)
+{
</ins><span class="cx"> *hasCustomMenus = TRUE;
</span><span class="cx">
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::trackCustomPopupMenu(IWebView* /*sender*/, HMENU /*menu*/, LPPOINT /*point*/)
</del><ins>+HRESULT UIDelegate::trackCustomPopupMenu(_In_opt_ IWebView* /*sender*/, _In_ HMENU /*menu*/, _In_ LPPOINT /*point*/)
</ins><span class="cx"> {
</span><span class="cx"> // Do nothing
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::registerUndoWithTarget(IWebUndoTarget* target, BSTR actionName, IUnknown* actionArg)
</del><ins>+HRESULT UIDelegate::registerUndoWithTarget(_In_opt_ IWebUndoTarget* target, _In_ BSTR actionName, _In_opt_ IUnknown* actionArg)
</ins><span class="cx"> {
</span><span class="cx"> m_undoManager->registerUndoWithTarget(target, actionName, actionArg);
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::removeAllActionsWithTarget(IWebUndoTarget*)
</del><ins>+HRESULT UIDelegate::removeAllActionsWithTarget(_In_opt_ IWebUndoTarget*)
</ins><span class="cx"> {
</span><span class="cx"> m_undoManager->removeAllActions();
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::setActionTitle(BSTR /*actionTitle*/)
</del><ins>+HRESULT UIDelegate::setActionTitle(_In_ BSTR /*actionTitle*/)
</ins><span class="cx"> {
</span><span class="cx"> // It is not neccessary to implement this for DRT because there is
</span><span class="cx"> // menu to write out the title to.
</span><span class="lines">@@ -243,7 +250,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::canUndo(BOOL* result)
</del><ins>+HRESULT UIDelegate::canUndo(_Out_ BOOL* result)
</ins><span class="cx"> {
</span><span class="cx"> if (!result)
</span><span class="cx"> return E_POINTER;
</span><span class="lines">@@ -252,7 +259,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::canRedo(BOOL* result)
</del><ins>+HRESULT UIDelegate::canRedo(_Out_ BOOL* result)
</ins><span class="cx"> {
</span><span class="cx"> if (!result)
</span><span class="cx"> return E_POINTER;
</span><span class="lines">@@ -261,21 +268,21 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::printFrame(IWebView* /*webView*/, IWebFrame* /*frame*/)
</del><ins>+HRESULT UIDelegate::printFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::ftpDirectoryTemplatePath(IWebView* /*webView*/, BSTR* path)
</del><ins>+HRESULT UIDelegate::ftpDirectoryTemplatePath(_In_opt_ IWebView*, __deref_opt_out BSTR* path)
</ins><span class="cx"> {
</span><span class="cx"> if (!path)
</span><span class="cx"> return E_POINTER;
</span><del>- *path = 0;
</del><ins>+ *path = nullptr;
</ins><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx">
</span><del>-HRESULT UIDelegate::webViewHeaderHeight(IWebView* /*webView*/, float* result)
</del><ins>+HRESULT UIDelegate::webViewHeaderHeight(_In_opt_ IWebView*, _Out_ float* result)
</ins><span class="cx"> {
</span><span class="cx"> if (!result)
</span><span class="cx"> return E_POINTER;
</span><span class="lines">@@ -283,7 +290,7 @@
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::webViewFooterHeight(IWebView* /*webView*/, float* result)
</del><ins>+HRESULT UIDelegate::webViewFooterHeight(_In_opt_ IWebView*, _Out_ float* result)
</ins><span class="cx"> {
</span><span class="cx"> if (!result)
</span><span class="cx"> return E_POINTER;
</span><span class="lines">@@ -291,37 +298,40 @@
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::drawHeaderInRect(IWebView* /*webView*/, RECT* /*rect*/, ULONG_PTR /*drawingContext*/)
</del><ins>+HRESULT UIDelegate::drawHeaderInRect(_In_opt_ IWebView*, _In_ RECT*, ULONG_PTR /*drawingContext*/)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::drawFooterInRect(IWebView* /*webView*/, RECT* /*rect*/, ULONG_PTR /*drawingContext*/, UINT /*pageIndex*/, UINT /*pageCount*/)
</del><ins>+HRESULT UIDelegate::drawFooterInRect(_In_opt_ IWebView*, _In_ RECT*, ULONG_PTR /*drawingContext*/, UINT /*pageIndex*/, UINT /*pageCount*/)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::webViewPrintingMarginRect(IWebView* /*webView*/, RECT* /*rect*/)
</del><ins>+HRESULT UIDelegate::webViewPrintingMarginRect(_In_opt_ IWebView*, _Out_ RECT*)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::canRunModal(IWebView* /*webView*/, BOOL* /*canRunBoolean*/)
</del><ins>+HRESULT UIDelegate::canRunModal(_In_opt_ IWebView*, _Out_ BOOL* /*canRunBoolean*/)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::createModalDialog(IWebView* /*sender*/, IWebURLRequest* /*request*/, IWebView** /*newWebView*/)
</del><ins>+HRESULT UIDelegate::createModalDialog(_In_opt_ IWebView* /*sender*/, _In_opt_ IWebURLRequest* /*request*/, _COM_Outptr_opt_ IWebView** newWebView)
</ins><span class="cx"> {
</span><ins>+ if (!newWebView)
+ return E_POINTER;
+ *newWebView = nullptr;
</ins><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::runModal(IWebView* /*webView*/)
</del><ins>+HRESULT UIDelegate::runModal(_In_opt_ IWebView*)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::isMenuBarVisible(IWebView* /*webView*/, BOOL* visible)
</del><ins>+HRESULT UIDelegate::isMenuBarVisible(_In_opt_ IWebView*, _Out_ BOOL* visible)
</ins><span class="cx"> {
</span><span class="cx"> if (!visible)
</span><span class="cx"> return E_POINTER;
</span><span class="lines">@@ -329,12 +339,12 @@
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::setMenuBarVisible(IWebView* /*webView*/, BOOL /*visible*/)
</del><ins>+HRESULT UIDelegate::setMenuBarVisible(_In_opt_ IWebView*, BOOL /*visible*/)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::runDatabaseSizeLimitPrompt(IWebView* /*webView*/, BSTR /*displayName*/, IWebFrame* /*initiatedByFrame*/, BOOL* allowed)
</del><ins>+HRESULT UIDelegate::runDatabaseSizeLimitPrompt(_In_opt_ IWebView*, _In_ BSTR /*displayName*/, _In_opt_ IWebFrame* /*initiatedByFrame*/, _Out_ BOOL* allowed)
</ins><span class="cx"> {
</span><span class="cx"> if (!allowed)
</span><span class="cx"> return E_POINTER;
</span><span class="lines">@@ -342,30 +352,30 @@
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::paintCustomScrollbar(IWebView* /*webView*/, HDC /*hDC*/, RECT /*rect*/, WebScrollBarControlSize /*size*/, WebScrollbarControlState /*state*/,
- WebScrollbarControlPart /*pressedPart*/, BOOL /*vertical*/, float /*value*/, float /*proportion*/, WebScrollbarControlPartMask /*parts*/)
</del><ins>+HRESULT UIDelegate::paintCustomScrollbar(_In_opt_ IWebView*, _In_ HDC, RECT, WebScrollBarControlSize, WebScrollbarControlState,
+ WebScrollbarControlPart /*pressedPart*/, BOOL /*vertical*/, float /*value*/, float /*proportion*/, WebScrollbarControlPartMask)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::paintCustomScrollCorner(IWebView* /*webView*/, HDC /*hDC*/, RECT /*rect*/)
</del><ins>+HRESULT UIDelegate::paintCustomScrollCorner(_In_opt_ IWebView*, _In_ HDC, RECT)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::setFrame(IWebView* /*sender*/, RECT* frame)
</del><ins>+HRESULT UIDelegate::setFrame(_In_opt_ IWebView* /*sender*/, _In_ RECT* frame)
</ins><span class="cx"> {
</span><span class="cx"> m_frame = *frame;
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::webViewFrame(IWebView* /*sender*/, RECT* frame)
</del><ins>+HRESULT UIDelegate::webViewFrame(_In_opt_ IWebView* /*sender*/, _Out_ RECT* frame)
</ins><span class="cx"> {
</span><span class="cx"> *frame = m_frame;
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::runJavaScriptAlertPanelWithMessage(IWebView* /*sender*/, BSTR message)
</del><ins>+HRESULT UIDelegate::runJavaScriptAlertPanelWithMessage(_In_opt_ IWebView* /*sender*/, _In_ BSTR message)
</ins><span class="cx"> {
</span><span class="cx"> if (!done) {
</span><span class="cx"> printf("ALERT: %S\n", message ? message : L"");
</span><span class="lines">@@ -375,7 +385,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::runJavaScriptConfirmPanelWithMessage(IWebView* /*sender*/, BSTR message, BOOL* result)
</del><ins>+HRESULT UIDelegate::runJavaScriptConfirmPanelWithMessage(_In_opt_ IWebView* /*sender*/, _In_ BSTR message, _Out_ BOOL* result)
</ins><span class="cx"> {
</span><span class="cx"> if (!done)
</span><span class="cx"> printf("CONFIRM: %S\n", message ? message : L"");
</span><span class="lines">@@ -385,7 +395,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::runJavaScriptTextInputPanelWithPrompt(IWebView* /*sender*/, BSTR message, BSTR defaultText, BSTR* result)
</del><ins>+HRESULT UIDelegate::runJavaScriptTextInputPanelWithPrompt(_In_opt_ IWebView* /*sender*/, _In_ BSTR message, _In_ BSTR defaultText, __deref_opt_out BSTR* result)
</ins><span class="cx"> {
</span><span class="cx"> if (!done)
</span><span class="cx"> printf("PROMPT: %S, default text: %S\n", message ? message : L"", defaultText ? defaultText : L"");
</span><span class="lines">@@ -395,7 +405,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::runBeforeUnloadConfirmPanelWithMessage(IWebView* /*sender*/, BSTR message, IWebFrame* /*initiatedByFrame*/, BOOL* result)
</del><ins>+HRESULT UIDelegate::runBeforeUnloadConfirmPanelWithMessage(_In_opt_ IWebView* /*sender*/, _In_ BSTR message, _In_opt_ IWebFrame* /*initiatedByFrame*/, _Out_ BOOL* result)
</ins><span class="cx"> {
</span><span class="cx"> if (!result)
</span><span class="cx"> return E_POINTER;
</span><span class="lines">@@ -408,7 +418,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::webViewAddMessageToConsole(IWebView* /*sender*/, BSTR message, int lineNumber, BSTR url, BOOL isError)
</del><ins>+HRESULT UIDelegate::webViewAddMessageToConsole(_In_opt_ IWebView* /*sender*/, _In_ BSTR message, int lineNumber, _In_ BSTR url, BOOL isError)
</ins><span class="cx"> {
</span><span class="cx"> if (done)
</span><span class="cx"> return S_OK;
</span><span class="lines">@@ -429,7 +439,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::doDragDrop(IWebView* /*sender*/, IDataObject* object, IDropSource* source, DWORD /*okEffect*/, DWORD* performedEffect)
</del><ins>+HRESULT UIDelegate::doDragDrop(_In_opt_ IWebView* /*sender*/, _In_opt_ IDataObject* object, _In_opt_ IDropSource* source, DWORD /*okEffect*/, _Out_ DWORD* performedEffect)
</ins><span class="cx"> {
</span><span class="cx"> if (!performedEffect)
</span><span class="cx"> return E_POINTER;
</span><span class="lines">@@ -447,7 +457,7 @@
</span><span class="cx"> return oleDragAndDropReturnValue;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::webViewGetDlgCode(IWebView* /*sender*/, UINT /*keyCode*/, LONG_PTR* code)
</del><ins>+HRESULT UIDelegate::webViewGetDlgCode(_In_opt_ IWebView* /*sender*/, UINT /*keyCode*/, _Out_ LONG_PTR* code)
</ins><span class="cx"> {
</span><span class="cx"> if (!code)
</span><span class="cx"> return E_POINTER;
</span><span class="lines">@@ -455,15 +465,20 @@
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::createWebViewWithRequest(IWebView* /*sender*/, IWebURLRequest* /*request*/, IWebView** newWebView)
</del><ins>+HRESULT UIDelegate::createWebViewWithRequest(_In_opt_ IWebView* /*sender*/, _In_opt_ IWebURLRequest* /*request*/, _COM_Outptr_opt_ IWebView** newWebView)
</ins><span class="cx"> {
</span><ins>+ if (!newWebView)
+ return E_POINTER;
+ *newWebView = nullptr;
+
</ins><span class="cx"> if (!::gTestRunner->canOpenWindows())
</span><span class="cx"> return E_FAIL;
</span><ins>+
</ins><span class="cx"> *newWebView = createWebViewAndOffscreenWindow();
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::webViewClose(IWebView* sender)
</del><ins>+HRESULT UIDelegate::webViewClose(_In_opt_ IWebView* sender)
</ins><span class="cx"> {
</span><span class="cx"> HWND hostWindow;
</span><span class="cx"> sender->hostWindow(&hostWindow);
</span><span class="lines">@@ -471,7 +486,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::webViewFocus(IWebView* sender)
</del><ins>+HRESULT UIDelegate::webViewFocus(_In_opt_ IWebView* sender)
</ins><span class="cx"> {
</span><span class="cx"> HWND hostWindow;
</span><span class="cx"> sender->hostWindow(&hostWindow);
</span><span class="lines">@@ -479,18 +494,18 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::webViewUnfocus(IWebView* /*sender*/)
</del><ins>+HRESULT UIDelegate::webViewUnfocus(_In_opt_ IWebView* /*sender*/)
</ins><span class="cx"> {
</span><span class="cx"> SetForegroundWindow(GetDesktopWindow());
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::webViewPainted(IWebView* /*sender*/)
</del><ins>+HRESULT UIDelegate::webViewPainted(_In_opt_ IWebView* /*sender*/)
</ins><span class="cx"> {
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::exceededDatabaseQuota(IWebView* sender, IWebFrame* frame, IWebSecurityOrigin* origin, BSTR databaseIdentifier)
</del><ins>+HRESULT UIDelegate::exceededDatabaseQuota(_In_opt_ IWebView* sender, _In_opt_ IWebFrame* frame, _In_opt_ IWebSecurityOrigin* origin, _In_ BSTR databaseIdentifier)
</ins><span class="cx"> {
</span><span class="cx"> _bstr_t protocol;
</span><span class="cx"> _bstr_t host;
</span><span class="lines">@@ -541,60 +556,65 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::embeddedViewWithArguments(IWebView* /*sender*/, IWebFrame* /*frame*/, IPropertyBag* /*arguments*/, IWebEmbeddedView** view)
</del><ins>+HRESULT UIDelegate::embeddedViewWithArguments(_In_opt_ IWebView* /*sender*/, _In_opt_ IWebFrame* /*frame*/, _In_opt_ IPropertyBag* /*arguments*/, _COM_Outptr_opt_ IWebEmbeddedView** view)
</ins><span class="cx"> {
</span><span class="cx"> if (!view)
</span><span class="cx"> return E_POINTER;
</span><del>- *view = 0;
</del><ins>+ *view = nullptr;
</ins><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::webViewClosing(IWebView* /*sender*/)
</del><ins>+HRESULT UIDelegate::webViewClosing(_In_opt_ IWebView* /*sender*/)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::webViewSetCursor(IWebView* /*sender*/, HCURSOR /*cursor*/)
</del><ins>+HRESULT UIDelegate::webViewSetCursor(_In_opt_ IWebView* /*sender*/, _In_ HCURSOR /*cursor*/)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::webViewDidInvalidate(IWebView* /*sender*/)
</del><ins>+HRESULT UIDelegate::webViewDidInvalidate(_In_opt_ IWebView* /*sender*/)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::setStatusText(IWebView*, BSTR text)
</del><ins>+HRESULT UIDelegate::setStatusText(_In_opt_ IWebView*, _In_ BSTR text)
</ins><span class="cx"> {
</span><span class="cx"> if (gTestRunner->dumpStatusCallbacks())
</span><span class="cx"> printf("UI DELEGATE STATUS CALLBACK: setStatusText:%S\n", text ? text : L"");
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::desktopNotificationsDelegate(IWebDesktopNotificationsDelegate** result)
</del><ins>+HRESULT UIDelegate::desktopNotificationsDelegate(_COM_Outptr_opt_ IWebDesktopNotificationsDelegate** result)
</ins><span class="cx"> {
</span><ins>+ if (!result)
+ return E_POINTER;
+ *result = nullptr;
</ins><span class="cx"> m_desktopNotifications.copyRefTo(result);
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::createWebViewWithRequest(IWebView* /*sender*/, IWebURLRequest* /*request*/, IPropertyBag* /*windowFeatures*/, IWebView** /*newWebView*/)
</del><ins>+HRESULT UIDelegate::createWebViewWithRequest(_In_opt_ IWebView* /*sender*/, _In_opt_ IWebURLRequest* /*request*/, _In_opt_ IPropertyBag* /*windowFeatures*/, _COM_Outptr_opt_ IWebView** newWebView)
</ins><span class="cx"> {
</span><ins>+ if (!newWebView)
+ return E_POINTER;
+ *newWebView = nullptr;
</ins><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::drawBackground(IWebView* /*sender*/, HDC /*hdc*/, const RECT* /*dirtyRect*/)
</del><ins>+HRESULT UIDelegate::drawBackground(_In_opt_ IWebView* /*sender*/, _In_ HDC, _In_ const RECT* /*dirtyRect*/)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::decidePolicyForGeolocationRequest(IWebView* /*sender*/, IWebFrame* frame, IWebSecurityOrigin* /*origin*/, IWebGeolocationPolicyListener* /*listener*/)
</del><ins>+HRESULT UIDelegate::decidePolicyForGeolocationRequest(_In_opt_ IWebView* /*sender*/, _In_opt_ IWebFrame*, _In_opt_ IWebSecurityOrigin*, _In_opt_ IWebGeolocationPolicyListener*)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT UIDelegate::didPressMissingPluginButton(IDOMElement* /*element*/)
</del><ins>+HRESULT UIDelegate::didPressMissingPluginButton(_In_opt_ IDOMElement* /*element*/)
</ins><span class="cx"> {
</span><span class="cx"> printf("MISSING PLUGIN BUTTON PRESSED\n");
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><del>-
</del></span></pre></div>
<a id="trunkToolsDumpRenderTreewinUIDelegateh"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/UIDelegate.h (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/UIDelegate.h        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/DumpRenderTree/win/UIDelegate.h        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2005, 2006, 2007, 2014 Apple Inc. All rights reserved.
</del><ins>+ * Copyright (C) 2005-2007, 2014-2015 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">@@ -43,338 +43,102 @@
</span><span class="cx"> void resetUndoManager();
</span><span class="cx">
</span><span class="cx"> // IUnknown
</span><del>- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
- virtual ULONG STDMETHODCALLTYPE AddRef(void);
- virtual ULONG STDMETHODCALLTYPE Release(void);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject);
+ virtual ULONG STDMETHODCALLTYPE AddRef();
+ virtual ULONG STDMETHODCALLTYPE Release();
</ins><span class="cx">
</span><span class="cx"> // IWebUIDelegate
</span><del>- virtual HRESULT STDMETHODCALLTYPE createWebViewWithRequest(
- /* [in] */ IWebView *sender,
- /* [in] */ IWebURLRequest *request,
- /* [retval][out] */ IWebView **newWebView);
-
- virtual HRESULT STDMETHODCALLTYPE webViewShow(
- /* [in] */ IWebView *sender) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE webViewClose(
- /* [in] */ IWebView *sender);
-
- virtual HRESULT STDMETHODCALLTYPE webViewFocus(
- /* [in] */ IWebView *sender);
-
- virtual HRESULT STDMETHODCALLTYPE webViewUnfocus(
- /* [in] */ IWebView *sender);
-
- virtual HRESULT STDMETHODCALLTYPE webViewFirstResponder(IWebView*, HWND*) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE makeFirstResponder(IWebView*, HWND) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE setStatusText(
- /* [in] */ IWebView *sender,
- /* [in] */ BSTR text);
-
- virtual HRESULT STDMETHODCALLTYPE webViewStatusText(
- /* [in] */ IWebView *sender,
- /* [retval][out] */ BSTR *text) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE webViewAreToolbarsVisible(
- /* [in] */ IWebView *sender,
- /* [retval][out] */ BOOL *visible) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE setToolbarsVisible(
- /* [in] */ IWebView *sender,
- /* [in] */ BOOL visible) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE webViewIsStatusBarVisible(
- /* [in] */ IWebView *sender,
- /* [retval][out] */ BOOL *visible) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE setStatusBarVisible(
- /* [in] */ IWebView *sender,
- /* [in] */ BOOL visible) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE webViewIsResizable(
- /* [in] */ IWebView *sender,
- /* [retval][out] */ BOOL *resizable) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE setResizable(
- /* [in] */ IWebView *sender,
- /* [in] */ BOOL resizable) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE setFrame(
- /* [in] */ IWebView *sender,
- /* [in] */ RECT *frame);
-
- virtual HRESULT STDMETHODCALLTYPE webViewFrame(
- /* [in] */ IWebView *sender,
- /* [retval][out] */ RECT *frame);
-
- virtual HRESULT STDMETHODCALLTYPE setContentRect(
- /* [in] */ IWebView *sender,
- /* [in] */ RECT *contentRect) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE webViewContentRect(
- /* [in] */ IWebView *sender,
- /* [retval][out] */ RECT *contentRect) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE runJavaScriptAlertPanelWithMessage(
- /* [in] */ IWebView *sender,
- /* [in] */ BSTR message);
-
- virtual HRESULT STDMETHODCALLTYPE runJavaScriptConfirmPanelWithMessage(
- /* [in] */ IWebView *sender,
- /* [in] */ BSTR message,
- /* [retval][out] */ BOOL *result);
-
- virtual HRESULT STDMETHODCALLTYPE runJavaScriptTextInputPanelWithPrompt(
- /* [in] */ IWebView *sender,
- /* [in] */ BSTR message,
- /* [in] */ BSTR defaultText,
- /* [retval][out] */ BSTR *result);
-
- virtual HRESULT STDMETHODCALLTYPE runBeforeUnloadConfirmPanelWithMessage(
- /* [in] */ IWebView *sender,
- /* [in] */ BSTR message,
- /* [in] */ IWebFrame *initiatedByFrame,
- /* [retval][out] */ BOOL *result);
-
- virtual HRESULT STDMETHODCALLTYPE runOpenPanelForFileButtonWithResultListener(
- /* [in] */ IWebView *sender,
- /* [in] */ IWebOpenPanelResultListener *resultListener) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE mouseDidMoveOverElement(
- /* [in] */ IWebView *sender,
- /* [in] */ IPropertyBag *elementInformation,
- /* [in] */ UINT modifierFlags) { return E_NOTIMPL; }
-
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE createWebViewWithRequest(_In_opt_ IWebView* sender, _In_opt_ IWebURLRequest*, _COM_Outptr_opt_ IWebView**);
+ virtual HRESULT STDMETHODCALLTYPE webViewShow(_In_opt_ IWebView* sender) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewClose(_In_opt_ IWebView* sender);
+ virtual HRESULT STDMETHODCALLTYPE webViewFocus(_In_opt_ IWebView* sender);
+ virtual HRESULT STDMETHODCALLTYPE webViewUnfocus(_In_opt_ IWebView* sender);
+ virtual HRESULT STDMETHODCALLTYPE webViewFirstResponder(_In_opt_ IWebView*, _Out_ HWND*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE makeFirstResponder(_In_opt_ IWebView*, _In_ HWND) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE setStatusText(_In_opt_ IWebView* sender, _In_ BSTR text);
+ virtual HRESULT STDMETHODCALLTYPE webViewStatusText(_In_opt_ IWebView* sender, __deref_opt_out BSTR* text) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewAreToolbarsVisible(_In_opt_ IWebView* sender, _Out_ BOOL* visible) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE setToolbarsVisible(_In_opt_ IWebView* sender, BOOL visible) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewIsStatusBarVisible(_In_opt_ IWebView* sender, _Out_ BOOL* visible) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE setStatusBarVisible(_In_opt_ IWebView* sender, BOOL visible) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewIsResizable(_In_opt_ IWebView* sender, _Out_ BOOL *resizable) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE setResizable(_In_opt_ IWebView* sender, BOOL resizable) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE setFrame(_In_opt_ IWebView* sender, _In_ RECT* frame);
+ virtual HRESULT STDMETHODCALLTYPE webViewFrame(_In_opt_ IWebView* sender, _Out_ RECT* frame);
+ virtual HRESULT STDMETHODCALLTYPE setContentRect(_In_opt_ IWebView* sender, _In_ RECT* contentRect) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewContentRect(_In_opt_ IWebView* sender, _Out_ RECT *contentRect) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE runJavaScriptAlertPanelWithMessage(_In_opt_ IWebView* sender, _In_ BSTR message);
+ virtual HRESULT STDMETHODCALLTYPE runJavaScriptConfirmPanelWithMessage(_In_opt_ IWebView* sender, _In_ BSTR message, _Out_ BOOL *result);
+ virtual HRESULT STDMETHODCALLTYPE runJavaScriptTextInputPanelWithPrompt(_In_opt_ IWebView* sender, _In_ BSTR message, _In_ BSTR defaultText, __deref_opt_out BSTR* result);
+ virtual HRESULT STDMETHODCALLTYPE runBeforeUnloadConfirmPanelWithMessage(_In_opt_ IWebView* sender, _In_ BSTR message, _In_opt_ IWebFrame* initiatedByFrame, _Out_ BOOL *result);
+ virtual HRESULT STDMETHODCALLTYPE runOpenPanelForFileButtonWithResultListener(_In_opt_ IWebView* sender, _In_opt_ IWebOpenPanelResultListener*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE mouseDidMoveOverElement(_In_opt_ IWebView* sender, _In_opt_ IPropertyBag* elementInformation, UINT modifierFlags) { return E_NOTIMPL; }
</ins><span class="cx"> virtual HRESULT STDMETHODCALLTYPE contextMenuItemsForElement(IWebView*, IPropertyBag*, HMENU, HMENU*) { return E_NOTIMPL; }
</span><del>-
- virtual HRESULT STDMETHODCALLTYPE validateUserInterfaceItem(
- /* [in] */ IWebView *webView,
- /* [in] */ UINT itemCommandID,
- /* [in] */ BOOL defaultValidation,
- /* [retval][out] */ BOOL *isValid) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE shouldPerformAction(
- /* [in] */ IWebView *webView,
- /* [in] */ UINT itemCommandID,
- /* [in] */ UINT sender) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE dragDestinationActionMaskForDraggingInfo(
- /* [in] */ IWebView *webView,
- /* [in] */ IDataObject *draggingInfo,
- /* [retval][out] */ WebDragDestinationAction *action) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE willPerformDragDestinationAction(
- /* [in] */ IWebView *webView,
- /* [in] */ WebDragDestinationAction action,
- /* [in] */ IDataObject *draggingInfo) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE dragSourceActionMaskForPoint(
- /* [in] */ IWebView *webView,
- /* [in] */ LPPOINT point,
- /* [retval][out] */ WebDragSourceAction *action) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE willPerformDragSourceAction(
- /* [in] */ IWebView *webView,
- /* [in] */ WebDragSourceAction action,
- /* [in] */ LPPOINT point,
- /* [in] */ IDataObject *pasteboard,
- /* [retval][out] */ IDataObject **newPasteboard) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE contextMenuItemSelected(
- /* [in] */ IWebView *sender,
- /* [in] */ void *item,
- /* [in] */ IPropertyBag *element) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE hasCustomMenuImplementation(
- /* [retval][out] */ BOOL *hasCustomMenus);
-
- virtual HRESULT STDMETHODCALLTYPE trackCustomPopupMenu(/* [in] */ IWebView* sender, /* [in] */ HMENU, /* [in] */ LPPOINT);
-
- virtual HRESULT STDMETHODCALLTYPE measureCustomMenuItem(
- /* [in] */ IWebView *sender,
- /* [in] */ void *measureItem) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE drawCustomMenuItem(
- /* [in] */ IWebView *sender,
- /* [in] */ void *drawItem) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE addCustomMenuDrawingData(IWebView*, HMENU) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE cleanUpCustomMenuDrawingData(IWebView*, HMENU) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE canTakeFocus(
- /* [in] */ IWebView *sender,
- /* [in] */ BOOL forward,
- /* [out] */ BOOL *result) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE takeFocus(
- /* [in] */ IWebView *sender,
- /* [in] */ BOOL forward) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE registerUndoWithTarget(
- /* [in] */ IWebUndoTarget *target,
- /* [in] */ BSTR actionName,
- /* [in] */ IUnknown *actionArg);
-
- virtual HRESULT STDMETHODCALLTYPE removeAllActionsWithTarget(
- /* [in] */ IWebUndoTarget *target);
-
- virtual HRESULT STDMETHODCALLTYPE setActionTitle(
- /* [in] */ BSTR actionTitle);
-
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE validateUserInterfaceItem(_In_opt_ IWebView*, UINT itemCommandID, BOOL defaultValidation, _Out_ BOOL *isValid) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE shouldPerformAction(_In_opt_ IWebView*, UINT itemCommandID, UINT sender) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE dragDestinationActionMaskForDraggingInfo(_In_opt_ IWebView*, _In_opt_ IDataObject* draggingInfo, _Out_ WebDragDestinationAction* action) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE willPerformDragDestinationAction(_In_opt_ IWebView*, WebDragDestinationAction action, _In_opt_ IDataObject* draggingInfo) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE dragSourceActionMaskForPoint(_In_opt_ IWebView*, _In_ LPPOINT, _Out_ WebDragSourceAction*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE willPerformDragSourceAction(_In_opt_ IWebView*, WebDragSourceAction, _In_ LPPOINT, _In_opt_ IDataObject* pasteboard, _COM_Outptr_opt_ IDataObject** newPasteboard);
+ virtual HRESULT STDMETHODCALLTYPE contextMenuItemSelected(_In_opt_ IWebView* sender, _In_opt_ void* item, _In_opt_ IPropertyBag* element) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE hasCustomMenuImplementation(_Out_ BOOL* hasCustomMenus);
+ virtual HRESULT STDMETHODCALLTYPE trackCustomPopupMenu(_In_opt_ IWebView* sender, _In_ HMENU, _In_ LPPOINT);
+ virtual HRESULT STDMETHODCALLTYPE measureCustomMenuItem(_In_opt_ IWebView* sender, _In_ void* measureItem) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE drawCustomMenuItem(_In_opt_ IWebView* sender, _In_ void* drawItem) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE addCustomMenuDrawingData(_In_opt_ IWebView*, HMENU) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE cleanUpCustomMenuDrawingData(_In_opt_ IWebView*, HMENU) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE canTakeFocus(_In_opt_ IWebView* sender, BOOL forward, _Out_ BOOL* result) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE takeFocus(_In_opt_ IWebView* sender, BOOL forward) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE registerUndoWithTarget(_In_opt_ IWebUndoTarget*, _In_ BSTR actionName, _In_opt_ IUnknown* actionArg);
+ virtual HRESULT STDMETHODCALLTYPE removeAllActionsWithTarget(_In_opt_ IWebUndoTarget*);
+ virtual HRESULT STDMETHODCALLTYPE setActionTitle(_In_ BSTR);
</ins><span class="cx"> virtual HRESULT STDMETHODCALLTYPE undo();
</span><del>-
</del><span class="cx"> virtual HRESULT STDMETHODCALLTYPE redo();
</span><del>-
- virtual HRESULT STDMETHODCALLTYPE canUndo(
- /* [retval][out] */ BOOL *result);
-
- virtual HRESULT STDMETHODCALLTYPE canRedo(
- /* [retval][out] */ BOOL *result);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE canUndo(_Out_ BOOL* result);
+ virtual HRESULT STDMETHODCALLTYPE canRedo(_Out_ BOOL* result);
+ virtual HRESULT STDMETHODCALLTYPE printFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE ftpDirectoryTemplatePath(_In_opt_ IWebView*, __deref_opt_out BSTR* path);
+ virtual HRESULT STDMETHODCALLTYPE webViewHeaderHeight(_In_opt_ IWebView*, _Out_ float*);
+ virtual HRESULT STDMETHODCALLTYPE webViewFooterHeight(_In_opt_ IWebView*, _Out_ float*);
+ virtual HRESULT STDMETHODCALLTYPE drawHeaderInRect(_In_opt_ IWebView*, _In_ RECT*, ULONG_PTR drawingContext);
+ virtual HRESULT STDMETHODCALLTYPE drawFooterInRect(_In_opt_ IWebView*, _In_ RECT*, ULONG_PTR drawingContext, UINT pageIndex, UINT pageCount);
+ virtual HRESULT STDMETHODCALLTYPE webViewPrintingMarginRect(_In_opt_ IWebView*, _Out_ RECT*);
+ virtual HRESULT STDMETHODCALLTYPE canRunModal(_In_opt_ IWebView*, _Out_ BOOL*);
+ virtual HRESULT STDMETHODCALLTYPE createModalDialog(_In_opt_ IWebView* sender, _In_opt_ IWebURLRequest*, _COM_Outptr_opt_ IWebView**);
+ virtual HRESULT STDMETHODCALLTYPE runModal(_In_opt_ IWebView*);
+ virtual HRESULT STDMETHODCALLTYPE isMenuBarVisible(_In_opt_ IWebView*, _Out_ BOOL*);
+ virtual HRESULT STDMETHODCALLTYPE setMenuBarVisible(_In_opt_ IWebView*, BOOL);
+ virtual HRESULT STDMETHODCALLTYPE runDatabaseSizeLimitPrompt(_In_opt_ IWebView*, _In_ BSTR displayName, _In_opt_ IWebFrame* initiatedByFrame, _Out_ BOOL* allowed);
+ virtual HRESULT STDMETHODCALLTYPE paintCustomScrollbar(_In_opt_ IWebView*, _In_ HDC, RECT, WebScrollBarControlSize, WebScrollbarControlState,
+ WebScrollbarControlPart pressedPart, BOOL vertical, float value, float proportion, WebScrollbarControlPartMask);
+ virtual HRESULT STDMETHODCALLTYPE paintCustomScrollCorner(_In_opt_ IWebView*, _In_ HDC, RECT);
+ virtual HRESULT STDMETHODCALLTYPE createWebViewWithRequest(_In_opt_ IWebView* sender, _In_opt_ IWebURLRequest*, _In_opt_ IPropertyBag* windowFeatures, _COM_Outptr_opt_ IWebView**);
+ virtual HRESULT STDMETHODCALLTYPE drawBackground(_In_opt_ IWebView* sender, _In_ HDC, _In_ const RECT* dirtyRect);
+ virtual HRESULT STDMETHODCALLTYPE decidePolicyForGeolocationRequest(_In_opt_ IWebView* sender, _In_opt_ IWebFrame*, _In_opt_ IWebSecurityOrigin*, _In_opt_ IWebGeolocationPolicyListener*);
+ virtual HRESULT STDMETHODCALLTYPE didPressMissingPluginButton(_In_opt_ IDOMElement*);
</ins><span class="cx">
</span><del>- virtual HRESULT STDMETHODCALLTYPE printFrame(
- /* [in] */ IWebView *webView,
- /* [in] */ IWebFrame *frame);
-
- virtual HRESULT STDMETHODCALLTYPE ftpDirectoryTemplatePath(
- /* [in] */ IWebView *webView,
- /* [retval][out] */ BSTR *path);
-
- virtual HRESULT STDMETHODCALLTYPE webViewHeaderHeight(
- /* [in] */ IWebView *webView,
- /* [retval][out] */ float *result);
-
- virtual HRESULT STDMETHODCALLTYPE webViewFooterHeight(
- /* [in] */ IWebView *webView,
- /* [retval][out] */ float *result);
-
- virtual HRESULT STDMETHODCALLTYPE drawHeaderInRect(IWebView*, RECT*, ULONG_PTR drawingContext);
-
- virtual HRESULT STDMETHODCALLTYPE drawFooterInRect(IWebView*, RECT*, ULONG_PTR drawingContext, UINT pageIndex, UINT pageCount);
-
- virtual HRESULT STDMETHODCALLTYPE webViewPrintingMarginRect(
- /* [in] */ IWebView *webView,
- /* [retval][out] */ RECT *rect);
-
- virtual HRESULT STDMETHODCALLTYPE canRunModal(
- /* [in] */ IWebView *webView,
- /* [retval][out] */ BOOL *canRunBoolean);
-
- virtual HRESULT STDMETHODCALLTYPE createModalDialog(
- /* [in] */ IWebView *sender,
- /* [in] */ IWebURLRequest *request,
- /* [retval][out] */ IWebView **newWebView);
-
- virtual HRESULT STDMETHODCALLTYPE runModal(
- /* [in] */ IWebView *webView);
-
- virtual HRESULT STDMETHODCALLTYPE isMenuBarVisible(
- /* [in] */ IWebView *webView,
- /* [retval][out] */ BOOL *visible);
-
- virtual HRESULT STDMETHODCALLTYPE setMenuBarVisible(
- /* [in] */ IWebView *webView,
- /* [in] */ BOOL visible);
-
- virtual HRESULT STDMETHODCALLTYPE runDatabaseSizeLimitPrompt(
- /* [in] */ IWebView *webView,
- /* [in] */ BSTR displayName,
- /* [in] */ IWebFrame *initiatedByFrame,
- /* [retval][out] */ BOOL *allowed);
-
- virtual HRESULT STDMETHODCALLTYPE paintCustomScrollbar(
- /* [in] */ IWebView *webView,
- /* [in] */ HDC hDC,
- /* [in] */ RECT rect,
- /* [in] */ WebScrollBarControlSize size,
- /* [in] */ WebScrollbarControlState state,
- /* [in] */ WebScrollbarControlPart pressedPart,
- /* [in] */ BOOL vertical,
- /* [in] */ float value,
- /* [in] */ float proportion,
- /* [in] */ WebScrollbarControlPartMask parts);
-
- virtual HRESULT STDMETHODCALLTYPE paintCustomScrollCorner(
- /* [in] */ IWebView *webView,
- /* [in] */ HDC hDC,
- /* [in] */ RECT rect);
-
- virtual HRESULT STDMETHODCALLTYPE createWebViewWithRequest(IWebView* sender, IWebURLRequest* request, IPropertyBag* windowFeatures, IWebView** newWebView);
-
- virtual HRESULT STDMETHODCALLTYPE drawBackground(IWebView* sender, HDC, const RECT* dirtyRect);
-
- virtual HRESULT STDMETHODCALLTYPE decidePolicyForGeolocationRequest(IWebView* sender, IWebFrame* frame, IWebSecurityOrigin* origin, IWebGeolocationPolicyListener* listener);
-
- virtual HRESULT STDMETHODCALLTYPE didPressMissingPluginButton(IDOMElement*);
-
</del><span class="cx"> protected:
</span><span class="cx"> // IWebUIDelegatePrivate
</span><del>-
</del><span class="cx"> virtual HRESULT STDMETHODCALLTYPE unused1() { return E_NOTIMPL; }
</span><del>-
</del><span class="cx"> virtual HRESULT STDMETHODCALLTYPE unused2() { return E_NOTIMPL; }
</span><del>-
</del><span class="cx"> virtual HRESULT STDMETHODCALLTYPE unused3() { return E_NOTIMPL; }
</span><del>-
- virtual HRESULT STDMETHODCALLTYPE webViewScrolled(
- /* [in] */ IWebView *sender) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE webViewAddMessageToConsole(
- /* [in] */ IWebView *sender,
- /* [in] */ BSTR message,
- /* [in] */ int lineNumber,
- /* [in] */ BSTR url,
- /* [in] */ BOOL isError);
-
- virtual HRESULT STDMETHODCALLTYPE webViewShouldInterruptJavaScript(IWebView*, BOOL*) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE webViewReceivedFocus(
- /* [in] */ IWebView *sender) { return E_NOTIMPL; }
-
- virtual HRESULT STDMETHODCALLTYPE webViewLostFocus(IWebView*, HWND) { return E_NOTIMPL; }
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE webViewScrolled(_In_opt_ IWebView* sender) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewAddMessageToConsole(_In_opt_ IWebView* sender, _In_ BSTR message, int lineNumber, _In_ BSTR url, BOOL isError);
+ virtual HRESULT STDMETHODCALLTYPE webViewShouldInterruptJavaScript(_In_opt_ IWebView*, _Out_ BOOL*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewReceivedFocus(_In_opt_ IWebView* sender) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewLostFocus(_In_opt_ IWebView*, _In_ HWND) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE doDragDrop(_In_opt_ IWebView* sender, _In_opt_ IDataObject*, _In_opt_ IDropSource*, DWORD okEffect, _Out_ DWORD* performedEffect);
+ virtual HRESULT STDMETHODCALLTYPE webViewGetDlgCode(_In_opt_ IWebView* sender, UINT keyCode, _Out_ LONG_PTR* code);
+ virtual HRESULT STDMETHODCALLTYPE webViewPainted(_In_opt_ IWebView* sender);
+ virtual HRESULT STDMETHODCALLTYPE exceededDatabaseQuota(_In_opt_ IWebView* sender, _In_opt_ IWebFrame*, _In_opt_ IWebSecurityOrigin*, _In_ BSTR databaseIdentifier);
+ virtual HRESULT STDMETHODCALLTYPE embeddedViewWithArguments(_In_opt_ IWebView* sender, _In_opt_ IWebFrame*, _In_opt_ IPropertyBag* arguments, _COM_Outptr_opt_ IWebEmbeddedView**);
+ virtual HRESULT STDMETHODCALLTYPE webViewClosing(_In_opt_ IWebView* sender);
+ virtual HRESULT STDMETHODCALLTYPE webViewSetCursor(_In_opt_ IWebView* sender, _In_ HCURSOR);
+ virtual HRESULT STDMETHODCALLTYPE webViewDidInvalidate(_In_opt_ IWebView* sender);
+ virtual HRESULT STDMETHODCALLTYPE desktopNotificationsDelegate(_COM_Outptr_opt_ IWebDesktopNotificationsDelegate**);
</ins><span class="cx">
</span><del>- virtual HRESULT STDMETHODCALLTYPE doDragDrop(
- /* [in] */ IWebView *sender,
- /* [in] */ IDataObject *dataObject,
- /* [in] */ IDropSource *dropSource,
- /* [in] */ DWORD okEffect,
- /* [retval][out] */ DWORD *performedEffect);
</del><ins>+ ULONG m_refCount { 1 };
</ins><span class="cx">
</span><del>- virtual HRESULT STDMETHODCALLTYPE webViewGetDlgCode(
- /* [in] */ IWebView *sender,
- /* [in] */ UINT keyCode,
- /* [retval][out] */ LONG_PTR *code);
-
- virtual HRESULT STDMETHODCALLTYPE webViewPainted(
- /* [in] */ IWebView *sender);
-
- virtual HRESULT STDMETHODCALLTYPE exceededDatabaseQuota(
- /* [in] */ IWebView *sender,
- /* [in] */ IWebFrame *frame,
- /* [in] */ IWebSecurityOrigin *origin,
- /* [in] */ BSTR databaseIdentifier);
-
- virtual HRESULT STDMETHODCALLTYPE embeddedViewWithArguments(
- /* [in] */ IWebView *sender,
- /* [in] */ IWebFrame *frame,
- /* [in] */ IPropertyBag *arguments,
- /* [retval][out] */ IWebEmbeddedView **view);
-
- virtual HRESULT STDMETHODCALLTYPE webViewClosing(
- /* [in] */ IWebView *sender);
-
- virtual HRESULT STDMETHODCALLTYPE webViewSetCursor(IWebView* sender, HCURSOR);
-
- virtual HRESULT STDMETHODCALLTYPE webViewDidInvalidate(
- /* [in] */ IWebView *sender);
-
- virtual HRESULT STDMETHODCALLTYPE desktopNotificationsDelegate(
- /* [out] */ IWebDesktopNotificationsDelegate** result);
-
- ULONG m_refCount;
-
</del><span class="cx"> private:
</span><span class="cx"> RECT m_frame;
</span><span class="cx"> std::unique_ptr<DRTUndoManager> m_undoManager;
</span></span></pre></div>
<a id="trunkToolsWinLauncherAccessibilityDelegatecpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WinLauncher/AccessibilityDelegate.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WinLauncher/AccessibilityDelegate.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/WinLauncher/AccessibilityDelegate.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2013 Apple Inc. All Rights Reserved.
</del><ins>+ * Copyright (C) 2013, 2015 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">@@ -34,9 +34,11 @@
</span><span class="cx"> #include <stdio.h>
</span><span class="cx"> #include <wininet.h>
</span><span class="cx">
</span><del>-HRESULT AccessibilityDelegate::QueryInterface(REFIID riid, void** ppvObject)
</del><ins>+HRESULT AccessibilityDelegate::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject)
</ins><span class="cx"> {
</span><del>- *ppvObject = 0;
</del><ins>+ if (!ppvObject)
+ return E_POINTER;
+ *ppvObject = nullptr;
</ins><span class="cx"> if (IsEqualIID(riid, IID_IUnknown))
</span><span class="cx"> *ppvObject = static_cast<IAccessibilityDelegate*>(this);
</span><span class="cx"> else if (IsEqualIID(riid, IID_IAccessibilityDelegate))
</span><span class="lines">@@ -48,12 +50,12 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG AccessibilityDelegate::AddRef(void)
</del><ins>+ULONG AccessibilityDelegate::AddRef()
</ins><span class="cx"> {
</span><span class="cx"> return ++m_refCount;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG AccessibilityDelegate::Release(void)
</del><ins>+ULONG AccessibilityDelegate::Release()
</ins><span class="cx"> {
</span><span class="cx"> ULONG newRef = --m_refCount;
</span><span class="cx"> if (!newRef)
</span></span></pre></div>
<a id="trunkToolsWinLauncherAccessibilityDelegateh"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WinLauncher/AccessibilityDelegate.h (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WinLauncher/AccessibilityDelegate.h        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/WinLauncher/AccessibilityDelegate.h        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2013 Apple Inc. All Rights Reserved.
</del><ins>+ * Copyright (C) 2013, 2015 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">@@ -30,15 +30,15 @@
</span><span class="cx">
</span><span class="cx"> class AccessibilityDelegate : public IAccessibilityDelegate {
</span><span class="cx"> public:
</span><del>- AccessibilityDelegate() : m_refCount(1) { }
- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
- virtual ULONG STDMETHODCALLTYPE AddRef(void);
- virtual ULONG STDMETHODCALLTYPE Release(void);
</del><ins>+ AccessibilityDelegate() { }
+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject);
+ virtual ULONG STDMETHODCALLTYPE AddRef();
+ virtual ULONG STDMETHODCALLTYPE Release();
</ins><span class="cx">
</span><span class="cx"> virtual HRESULT STDMETHODCALLTYPE fireFrameLoadStartedEvents();
</span><span class="cx"> virtual HRESULT STDMETHODCALLTYPE fireFrameLoadFinishedEvents();
</span><span class="cx"> private:
</span><del>- int m_refCount;
</del><ins>+ int m_refCount { 1 };
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkToolsWinLauncherCommoncpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WinLauncher/Common.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WinLauncher/Common.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/WinLauncher/Common.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -219,7 +219,7 @@
</span><span class="cx"> && ::GetLastError() != ERROR_ALREADY_EXISTS)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- std::wstring fileName = directory + L"\\CrashReport.dmp";
</del><ins>+ std::wstring fileName = std::wstring(static_cast<const wchar_t*>(directory)) + L"\\CrashReport.dmp";
</ins><span class="cx"> HANDLE miniDumpFile = ::CreateFile(fileName.c_str(), GENERIC_WRITE, 0, 0, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0);
</span><span class="cx">
</span><span class="cx"> if (miniDumpFile && miniDumpFile != INVALID_HANDLE_VALUE) {
</span></span></pre></div>
<a id="trunkToolsWinLauncherDOMDefaultImplcpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WinLauncher/DOMDefaultImpl.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WinLauncher/DOMDefaultImpl.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/WinLauncher/DOMDefaultImpl.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2014 Apple Inc. All Rights Reserved.
</del><ins>+ * Copyright (C) 2014-2015 Apple Inc. All Rights Reserved.
</ins><span class="cx"> * Copyright (C) 2011 Anthony Johnson. All Rights Reserved.
</span><span class="cx"> * Copyright (C) 2011 Brent Fulgham. All Rights Reserved.
</span><span class="cx"> *
</span><span class="lines">@@ -29,9 +29,11 @@
</span><span class="cx"> #include "DOMDefaultImpl.h"
</span><span class="cx">
</span><span class="cx"> // IUnknown -------------------------------------------------------------------
</span><del>-HRESULT WebScriptObject::QueryInterface(REFIID riid, void** ppvObject)
</del><ins>+HRESULT WebScriptObject::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject)
</ins><span class="cx"> {
</span><del>- *ppvObject = 0;
</del><ins>+ if (!ppvObject)
+ return E_POINTER;
+ *ppvObject = nullptr;
</ins><span class="cx"> if (IsEqualGUID(riid, IID_IUnknown))
</span><span class="cx"> *ppvObject = static_cast<IWebScriptObject*>(this);
</span><span class="cx"> else if (IsEqualGUID(riid, IID_IWebScriptObject))
</span><span class="lines">@@ -43,12 +45,12 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG WebScriptObject::AddRef(void)
</del><ins>+ULONG WebScriptObject::AddRef()
</ins><span class="cx"> {
</span><span class="cx"> return ++m_refCount;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG WebScriptObject::Release(void)
</del><ins>+ULONG WebScriptObject::Release()
</ins><span class="cx"> {
</span><span class="cx"> ULONG newRef = --m_refCount;
</span><span class="cx"> if (!newRef)
</span><span class="lines">@@ -58,9 +60,11 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // DOMObject -------------------------------------------------------------------
</span><del>-HRESULT DOMObject::QueryInterface(REFIID riid, void** ppvObject)
</del><ins>+HRESULT DOMObject::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject)
</ins><span class="cx"> {
</span><del>- *ppvObject = 0;
</del><ins>+ if (!ppvObject)
+ return E_POINTER;
+ *ppvObject = nullptr;
</ins><span class="cx"> if (IsEqualGUID(riid, IID_IDOMObject))
</span><span class="cx"> *ppvObject = static_cast<IDOMObject*>(this);
</span><span class="cx"> else
</span><span class="lines">@@ -72,9 +76,9 @@
</span><span class="cx">
</span><span class="cx">
</span><span class="cx"> // DOMEventListener -------------------------------------------------------------------
</span><del>-HRESULT DOMEventListener::QueryInterface(const IID &riid, void** ppvObject)
</del><ins>+HRESULT DOMEventListener::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject)
</ins><span class="cx"> {
</span><del>- *ppvObject = 0;
</del><ins>+ *ppvObject = nullptr;
</ins><span class="cx"> if (IsEqualGUID(riid, IID_IDOMEventListener))
</span><span class="cx"> *ppvObject = static_cast<IDOMEventListener*>(this);
</span><span class="cx"> else
</span><span class="lines">@@ -84,12 +88,12 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG DOMEventListener::AddRef(void)
</del><ins>+ULONG DOMEventListener::AddRef()
</ins><span class="cx"> {
</span><span class="cx"> return WebScriptObject::AddRef();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG DOMEventListener::Release(void)
</del><ins>+ULONG DOMEventListener::Release()
</ins><span class="cx"> {
</span><span class="cx"> return WebScriptObject::Release();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkToolsWinLauncherDOMDefaultImplh"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WinLauncher/DOMDefaultImpl.h (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WinLauncher/DOMDefaultImpl.h        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/WinLauncher/DOMDefaultImpl.h        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2011 Anthony Johnson. All Rights Reserved.
</del><ins>+* Copyright (C) 2015 Apple Inc. All Rights Reserved.
+* Copyright (C) 2011 Anthony Johnson. All Rights Reserved.
</ins><span class="cx"> * Copyright (C) 2011 Brent Fulgham. All Rights Reserved.
</span><span class="cx"> *
</span><span class="cx"> * Redistribution and use in source and binary forms, with or without
</span><span class="lines">@@ -31,7 +32,7 @@
</span><span class="cx">
</span><span class="cx"> class WebScriptObject : public IWebScriptObject {
</span><span class="cx"> public:
</span><del>- WebScriptObject() : m_refCount(0)
</del><ins>+ WebScriptObject()
</ins><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -40,51 +41,51 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // IUnknown
</span><del>- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
- virtual ULONG STDMETHODCALLTYPE AddRef(void);
- virtual ULONG STDMETHODCALLTYPE Release(void);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject);
+ virtual ULONG STDMETHODCALLTYPE AddRef();
+ virtual ULONG STDMETHODCALLTYPE Release();
</ins><span class="cx">
</span><span class="cx"> // IWebScriptObject
</span><del>- virtual HRESULT STDMETHODCALLTYPE throwException(BSTR, BOOL*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE callWebScriptMethod(BSTR, const VARIANT[], int, VARIANT*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE evaluateWebScript(BSTR, VARIANT*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE removeWebScriptKey(BSTR) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE stringRepresentation(BSTR*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE webScriptValueAtIndex(unsigned int, VARIANT*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE setWebScriptValueAtIndex(unsigned int, VARIANT) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE setException(BSTR) { return E_NOTIMPL; }
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE throwException(_In_ BSTR, _Out_ BOOL*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE callWebScriptMethod(_In_ BSTR, __in_ecount(cArgs) const VARIANT[], int cArgs, _Out_ VARIANT*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE evaluateWebScript(_In_ BSTR, _Out_ VARIANT*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE removeWebScriptKey(_In_ BSTR) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE stringRepresentation(__deref_opt_out BSTR*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webScriptValueAtIndex(unsigned, _Out_ VARIANT*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE setWebScriptValueAtIndex(unsigned, VARIANT) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE setException(_In_ BSTR) { return E_NOTIMPL; }
</ins><span class="cx">
</span><span class="cx"> protected:
</span><del>- ULONG m_refCount;
</del><ins>+ ULONG m_refCount { 0 };
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx">
</span><span class="cx"> class DOMObject : public WebScriptObject, public IDOMObject {
</span><span class="cx"> public:
</span><span class="cx"> // IUnknown
</span><del>- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject);
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx">
</span><span class="cx"> class DOMEventListener : public DOMObject, public IDOMEventListener {
</span><span class="cx"> public:
</span><span class="cx"> // IUnknown
</span><del>- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
- virtual ULONG STDMETHODCALLTYPE AddRef(void);
- virtual ULONG STDMETHODCALLTYPE Release(void);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject);
+ virtual ULONG STDMETHODCALLTYPE AddRef();
+ virtual ULONG STDMETHODCALLTYPE Release();
</ins><span class="cx">
</span><span class="cx"> // IWebScriptObject
</span><del>- virtual HRESULT STDMETHODCALLTYPE throwException(BSTR, BOOL*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE callWebScriptMethod(BSTR, const VARIANT[], int, VARIANT*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE evaluateWebScript(BSTR, VARIANT*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE removeWebScriptKey(BSTR) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE stringRepresentation(BSTR*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE webScriptValueAtIndex(unsigned int, VARIANT*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE setWebScriptValueAtIndex(unsigned int, VARIANT) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE setException(BSTR) { return E_NOTIMPL; }
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE throwException(_In_ BSTR, _Out_ BOOL*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE callWebScriptMethod(_In_ BSTR, __in_ecount(cArgs) const VARIANT[], int cArgs, _Out_ VARIANT*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE evaluateWebScript(_In_ BSTR, _Out_ VARIANT*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE removeWebScriptKey(_In_ BSTR) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE stringRepresentation(__deref_opt_out BSTR*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webScriptValueAtIndex(unsigned, _Out_ VARIANT*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE setWebScriptValueAtIndex(unsigned, VARIANT) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE setException(_In_ BSTR) { return E_NOTIMPL; }
</ins><span class="cx">
</span><span class="cx"> // IDOMEventListener
</span><del>- virtual HRESULT STDMETHODCALLTYPE handleEvent(IDOMEvent*) { return E_NOTIMPL; }
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE handleEvent(_In_opt_ IDOMEvent*) { return E_NOTIMPL; }
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkToolsWinLauncherPageLoadTestClientcpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WinLauncher/PageLoadTestClient.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WinLauncher/PageLoadTestClient.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/WinLauncher/PageLoadTestClient.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>-* Copyright (C) 2014 Apple Inc. All rights reserved.
</del><ins>+* Copyright (C) 2014-2015 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">@@ -36,19 +36,8 @@
</span><span class="cx">
</span><span class="cx"> PageLoadTestClient::PageLoadTestClient(WinLauncher* host, bool pageLoadTesting)
</span><span class="cx"> : m_host(host)
</span><del>- , m_pageLoadEndTime(0)
- , m_totalTime(0)
- , m_totalSquareRootsOfTime(0)
- , m_longestTime(0)
- , m_geometricMeanProductSum(1.0)
- , m_frames(0)
- , m_onLoadEvents(0)
- , m_currentURLIndex(0)
- , m_currentRepetition(0)
- , m_pagesTimed(0)
</del><span class="cx"> , m_repetitions(pageLoadTesting ? 20 : 1)
</span><span class="cx"> , m_waitForLoadToReallyEnd(this, &PageLoadTestClient::endPageLoad)
</span><del>- , m_currentPageLoadFinished(false)
</del><span class="cx"> , m_pageLoadTesting(pageLoadTesting)
</span><span class="cx"> {
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkToolsWinLauncherPageLoadTestClienth"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WinLauncher/PageLoadTestClient.h (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WinLauncher/PageLoadTestClient.h        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/WinLauncher/PageLoadTestClient.h        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -132,10 +132,10 @@
</span><span class="cx"> void dumpRunStatistics();
</span><span class="cx">
</span><span class="cx"> WinLauncher* m_host;
</span><del>- CFAbsoluteTime m_pageLoadEndTime;
- CFTimeInterval m_totalTime;
- CFTimeInterval m_totalSquareRootsOfTime;
- CFTimeInterval m_longestTime;
</del><ins>+ CFAbsoluteTime m_pageLoadEndTime { 0 };
+ CFTimeInterval m_totalTime { 0 };
+ CFTimeInterval m_totalSquareRootsOfTime { 0 };
+ CFTimeInterval m_longestTime { 0 };
</ins><span class="cx"> Vector<CFAbsoluteTime> m_startTimes;
</span><span class="cx"> Vector<CFAbsoluteTime> m_endTimes;
</span><span class="cx"> HashSet<uint64_t> m_loadingSubresources;
</span><span class="lines">@@ -143,15 +143,15 @@
</span><span class="cx"> #if OS(WINDOWS)
</span><span class="cx"> _bstr_t m_url;
</span><span class="cx"> #endif
</span><del>- double m_geometricMeanProductSum;
- unsigned m_frames;
- unsigned m_onLoadEvents;
- unsigned m_currentURLIndex;
- unsigned m_currentRepetition;
- unsigned m_pagesTimed;
</del><ins>+ double m_geometricMeanProductSum { 1.0 };
+ unsigned m_frames { 0 };
+ unsigned m_onLoadEvents { 0 };
+ unsigned m_currentURLIndex { 0 };
+ unsigned m_currentRepetition { 0 };
+ unsigned m_pagesTimed { 0 };
</ins><span class="cx"> unsigned m_repetitions;
</span><span class="cx">
</span><del>- bool m_currentPageLoadFinished;
</del><ins>+ bool m_currentPageLoadFinished { false };
</ins><span class="cx"> bool m_pageLoadTesting;
</span><span class="cx"> };
</span><span class="cx">
</span></span></pre></div>
<a id="trunkToolsWinLauncherPrintWebUIDelegatecpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WinLauncher/PrintWebUIDelegate.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WinLauncher/PrintWebUIDelegate.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/WinLauncher/PrintWebUIDelegate.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2009, 2013-2014 Apple Inc. All Rights Reserved.
</del><ins>+ * Copyright (C) 2009, 2013-2015 Apple Inc. All Rights Reserved.
</ins><span class="cx"> * Copyright (C) 2009 Brent Fulgham. All Rights Reserved.
</span><span class="cx"> * Copyright (C) 2013 Alex Christensen. All Rights Reserved.
</span><span class="cx"> *
</span><span class="lines">@@ -37,20 +37,23 @@
</span><span class="cx">
</span><span class="cx"> static const int MARGIN = 20;
</span><span class="cx">
</span><del>-HRESULT STDMETHODCALLTYPE PrintWebUIDelegate::runJavaScriptAlertPanelWithMessage(IWebView*, BSTR message)
</del><ins>+HRESULT PrintWebUIDelegate::runJavaScriptAlertPanelWithMessage(_In_opt_ IWebView*, _In_ BSTR message)
</ins><span class="cx"> {
</span><span class="cx"> ::MessageBoxW(0, message, L"JavaScript Alert", MB_OK);
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT STDMETHODCALLTYPE PrintWebUIDelegate::runJavaScriptConfirmPanelWithMessage(IWebView*, BSTR message, BOOL* result)
</del><ins>+HRESULT PrintWebUIDelegate::runJavaScriptConfirmPanelWithMessage(_In_opt_ IWebView*, _In_ BSTR message, _Out_ BOOL* result)
</ins><span class="cx"> {
</span><span class="cx"> *result = ::MessageBoxW(0, message, L"JavaScript Confirm", MB_OKCANCEL) == IDOK;
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT PrintWebUIDelegate::createWebViewWithRequest(IWebView*, IWebURLRequest* request, IWebView**)
</del><ins>+HRESULT PrintWebUIDelegate::createWebViewWithRequest(_In_opt_ IWebView*, _In_opt_ IWebURLRequest* request, _COM_Outptr_opt_ IWebView** newWebView)
</ins><span class="cx"> {
</span><ins>+ if (!newWebView)
+ return E_POINTER;
+ *newWebView = nullptr;
</ins><span class="cx"> if (!request)
</span><span class="cx"> return E_POINTER;
</span><span class="cx">
</span><span class="lines">@@ -78,9 +81,11 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT PrintWebUIDelegate::QueryInterface(REFIID riid, void** ppvObject)
</del><ins>+HRESULT PrintWebUIDelegate::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject)
</ins><span class="cx"> {
</span><del>- *ppvObject = 0;
</del><ins>+ if (!ppvObject)
+ return E_POINTER;
+ *ppvObject = nullptr;
</ins><span class="cx"> if (IsEqualIID(riid, IID_IUnknown))
</span><span class="cx"> *ppvObject = static_cast<IWebUIDelegate*>(this);
</span><span class="cx"> else if (IsEqualIID(riid, IID_IWebUIDelegate))
</span><span class="lines">@@ -92,12 +97,12 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG PrintWebUIDelegate::AddRef(void)
</del><ins>+ULONG PrintWebUIDelegate::AddRef()
</ins><span class="cx"> {
</span><span class="cx"> return ++m_refCount;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG PrintWebUIDelegate::Release(void)
</del><ins>+ULONG PrintWebUIDelegate::Release()
</ins><span class="cx"> {
</span><span class="cx"> ULONG newRef = --m_refCount;
</span><span class="cx"> if (!newRef)
</span><span class="lines">@@ -109,7 +114,7 @@
</span><span class="cx"> typedef _com_ptr_t<_com_IIID<IWebFrame, &__uuidof(IWebFrame)>> IWebFramePtr;
</span><span class="cx"> typedef _com_ptr_t<_com_IIID<IWebFramePrivate, &__uuidof(IWebFramePrivate)>> IWebFramePrivatePtr;
</span><span class="cx">
</span><del>-HRESULT PrintWebUIDelegate::webViewPrintingMarginRect(IWebView* view, RECT* rect)
</del><ins>+HRESULT PrintWebUIDelegate::webViewPrintingMarginRect(_In_opt_ IWebView* view, _Out_ RECT* rect)
</ins><span class="cx"> {
</span><span class="cx"> if (!view || !rect)
</span><span class="cx"> return E_POINTER;
</span><span class="lines">@@ -134,8 +139,16 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT PrintWebUIDelegate::webViewHeaderHeight(IWebView* webView, float* height)
</del><ins>+HRESULT PrintWebUIDelegate::willPerformDragSourceAction(_In_opt_ IWebView*, WebDragSourceAction, _In_ LPPOINT, _In_opt_ IDataObject*, _COM_Outptr_opt_ IDataObject** result)
</ins><span class="cx"> {
</span><ins>+ if (!result)
+ return E_POINTER;
+ *result = nullptr;
+ return E_NOTIMPL;
+}
+
+HRESULT PrintWebUIDelegate::webViewHeaderHeight(_In_opt_ IWebView* webView, _Out_ float* height)
+{
</ins><span class="cx"> if (!webView || !height)
</span><span class="cx"> return E_POINTER;
</span><span class="cx">
</span><span class="lines">@@ -150,7 +163,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT PrintWebUIDelegate::webViewFooterHeight(IWebView* webView, float* height)
</del><ins>+HRESULT PrintWebUIDelegate::webViewFooterHeight(_In_opt_ IWebView* webView, _Out_ float* height)
</ins><span class="cx"> {
</span><span class="cx"> if (!webView || !height)
</span><span class="cx"> return E_POINTER;
</span><span class="lines">@@ -166,7 +179,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT PrintWebUIDelegate::drawHeaderInRect(IWebView* webView, RECT* rect, ULONG_PTR drawingContext)
</del><ins>+HRESULT PrintWebUIDelegate::drawHeaderInRect(_In_opt_ IWebView* webView, _In_ RECT* rect, ULONG_PTR drawingContext)
</ins><span class="cx"> {
</span><span class="cx"> if (!webView || !rect)
</span><span class="cx"> return E_POINTER;
</span><span class="lines">@@ -195,7 +208,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT PrintWebUIDelegate::drawFooterInRect(IWebView* webView, RECT* rect, ULONG_PTR drawingContext, UINT pageIndex, UINT pageCount)
</del><ins>+HRESULT PrintWebUIDelegate::drawFooterInRect(_In_opt_ IWebView* webView, _In_ RECT* rect, ULONG_PTR drawingContext, UINT pageIndex, UINT pageCount)
</ins><span class="cx"> {
</span><span class="cx"> if (!webView || !rect)
</span><span class="cx"> return E_POINTER;
</span><span class="lines">@@ -223,3 +236,11 @@
</span><span class="cx">
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><ins>+
+HRESULT PrintWebUIDelegate::createModalDialog(_In_opt_ IWebView*, _In_opt_ IWebURLRequest*, _COM_Outptr_opt_ IWebView** webView)
+{
+ if (!webView)
+ return E_POINTER;
+ *webView = nullptr;
+ return E_NOTIMPL;
+}
</ins></span></pre></div>
<a id="trunkToolsWinLauncherPrintWebUIDelegateh"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WinLauncher/PrintWebUIDelegate.h (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WinLauncher/PrintWebUIDelegate.h        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/WinLauncher/PrintWebUIDelegate.h        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2009, 2014 Apple Inc. All Rights Reserved.
</del><ins>+ * Copyright (C) 2009, 2014-2015 Apple Inc. All Rights Reserved.
</ins><span class="cx"> * Copyright (C) 2009 Brent Fulgham. All Rights Reserved.
</span><span class="cx"> *
</span><span class="cx"> * Redistribution and use in source and binary forms, with or without
</span><span class="lines">@@ -31,79 +31,79 @@
</span><span class="cx">
</span><span class="cx"> class PrintWebUIDelegate : public IWebUIDelegate {
</span><span class="cx"> public:
</span><del>- PrintWebUIDelegate() : m_refCount(1) {}
</del><ins>+ PrintWebUIDelegate() { }
</ins><span class="cx">
</span><span class="cx"> // IUnknown
</span><del>- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
- virtual ULONG STDMETHODCALLTYPE AddRef(void);
- virtual ULONG STDMETHODCALLTYPE Release(void);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject);
+ virtual ULONG STDMETHODCALLTYPE AddRef();
+ virtual ULONG STDMETHODCALLTYPE Release();
</ins><span class="cx">
</span><del>- virtual HRESULT STDMETHODCALLTYPE createWebViewWithRequest(IWebView*, IWebURLRequest*, IWebView**);
- virtual HRESULT STDMETHODCALLTYPE webViewShow(IWebView*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE webViewClose(IWebView*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE webViewFocus(IWebView*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE webViewUnfocus(IWebView*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE webViewFirstResponder(IWebView*, HWND*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE makeFirstResponder(IWebView*, HWND) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE setStatusText(IWebView*, BSTR) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE webViewStatusText(IWebView*, BSTR*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE webViewAreToolbarsVisible(IWebView*, BOOL*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE setToolbarsVisible(IWebView*, BOOL) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE webViewIsStatusBarVisible(IWebView*, BOOL*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE setStatusBarVisible(IWebView*, BOOL) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE webViewIsResizable(IWebView*, BOOL*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE setResizable(IWebView*, BOOL) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE setFrame(IWebView*, RECT*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE webViewFrame(IWebView*, RECT*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE setContentRect(IWebView*, RECT*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE webViewContentRect(IWebView*, RECT*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE runJavaScriptAlertPanelWithMessage(IWebView*, BSTR);
- virtual HRESULT STDMETHODCALLTYPE runJavaScriptConfirmPanelWithMessage(IWebView*, BSTR, BOOL*);
- virtual HRESULT STDMETHODCALLTYPE runJavaScriptTextInputPanelWithPrompt(IWebView*, BSTR, BSTR, BSTR*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE runBeforeUnloadConfirmPanelWithMessage(IWebView*, BSTR, IWebFrame*, BOOL*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE runOpenPanelForFileButtonWithResultListener(IWebView*, IWebOpenPanelResultListener*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE mouseDidMoveOverElement(IWebView*, IPropertyBag*, UINT) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE contextMenuItemsForElement(IWebView*, IPropertyBag*, HMENU, HMENU*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE validateUserInterfaceItem(IWebView*, UINT, BOOL, BOOL*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE shouldPerformAction(IWebView*, UINT, UINT) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE dragDestinationActionMaskForDraggingInfo(IWebView*, IDataObject*, WebDragDestinationAction*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE willPerformDragDestinationAction(IWebView*, WebDragDestinationAction, IDataObject*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE dragSourceActionMaskForPoint(IWebView*, LPPOINT, WebDragSourceAction*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE willPerformDragSourceAction(IWebView*, WebDragSourceAction, LPPOINT, IDataObject*, IDataObject**) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE contextMenuItemSelected(IWebView*, void*, IPropertyBag*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE hasCustomMenuImplementation(BOOL*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE trackCustomPopupMenu(IWebView*, HMENU, LPPOINT) { return E_NOTIMPL; }
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE createWebViewWithRequest(_In_opt_ IWebView*, _In_opt_ IWebURLRequest*, _COM_Outptr_opt_ IWebView**);
+ virtual HRESULT STDMETHODCALLTYPE webViewShow(_In_opt_ IWebView*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewClose(_In_opt_ IWebView*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewFocus(_In_opt_ IWebView*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewUnfocus(_In_opt_ IWebView*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewFirstResponder(_In_opt_ IWebView*, _Out_ HWND*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE makeFirstResponder(_In_opt_ IWebView*, _In_ HWND) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE setStatusText(_In_opt_ IWebView*, _In_ BSTR) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewStatusText(_In_opt_ IWebView*, __deref_opt_out BSTR*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewAreToolbarsVisible(_In_opt_ IWebView*, _Out_ BOOL*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE setToolbarsVisible(_In_opt_ IWebView*, BOOL) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewIsStatusBarVisible(_In_opt_ IWebView*, _Out_ BOOL*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE setStatusBarVisible(_In_opt_ IWebView*, BOOL) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewIsResizable(_In_opt_ IWebView*, _Out_ BOOL*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE setResizable(_In_opt_ IWebView*, BOOL) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE setFrame(_In_opt_ IWebView*, _In_ RECT*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewFrame(_In_opt_ IWebView*, _Out_ RECT*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE setContentRect(_In_opt_ IWebView*, _In_ RECT*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewContentRect(_In_opt_ IWebView*, _Out_ RECT*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE runJavaScriptAlertPanelWithMessage(_In_opt_ IWebView*, _In_ BSTR);
+ virtual HRESULT STDMETHODCALLTYPE runJavaScriptConfirmPanelWithMessage(_In_opt_ IWebView*, _In_ BSTR, _Out_ BOOL*);
+ virtual HRESULT STDMETHODCALLTYPE runJavaScriptTextInputPanelWithPrompt(_In_opt_ IWebView*, _In_ BSTR, _In_ BSTR, __deref_opt_out BSTR*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE runBeforeUnloadConfirmPanelWithMessage(_In_opt_ IWebView*, _In_ BSTR, IWebFrame*, _Out_ BOOL*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE runOpenPanelForFileButtonWithResultListener(_In_opt_ IWebView*, _In_opt_ IWebOpenPanelResultListener*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE mouseDidMoveOverElement(_In_opt_ IWebView*, _In_opt_ IPropertyBag*, UINT) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE contextMenuItemsForElement(_In_opt_ IWebView*, _In_opt_ IPropertyBag*, _In_ HMENU, _Out_ HMENU*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE validateUserInterfaceItem(_In_opt_ IWebView*, UINT, BOOL, _Out_ BOOL*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE shouldPerformAction(_In_opt_ IWebView*, UINT, UINT) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE dragDestinationActionMaskForDraggingInfo(_In_opt_ IWebView*, _In_opt_ IDataObject*, _In_opt_ WebDragDestinationAction*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE willPerformDragDestinationAction(_In_opt_ IWebView*, WebDragDestinationAction, _In_opt_ IDataObject*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE dragSourceActionMaskForPoint(_In_opt_ IWebView*, _In_ LPPOINT, _Out_ WebDragSourceAction*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE willPerformDragSourceAction(_In_opt_ IWebView*, WebDragSourceAction, _In_ LPPOINT, _In_opt_ IDataObject*, _COM_Outptr_opt_ IDataObject**);
+ virtual HRESULT STDMETHODCALLTYPE contextMenuItemSelected(_In_opt_ IWebView*, void*, IPropertyBag*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE hasCustomMenuImplementation(_Out_ BOOL*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE trackCustomPopupMenu(_In_opt_ IWebView*, _In_ HMENU, _In_ LPPOINT) { return E_NOTIMPL; }
</ins><span class="cx"> virtual HRESULT STDMETHODCALLTYPE measureCustomMenuItem(IWebView*, void*) { return E_NOTIMPL; }
</span><span class="cx"> virtual HRESULT STDMETHODCALLTYPE drawCustomMenuItem(IWebView*, void*) { return E_NOTIMPL; }
</span><del>- virtual HRESULT STDMETHODCALLTYPE addCustomMenuDrawingData(IWebView*, HMENU) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE cleanUpCustomMenuDrawingData(IWebView*, HMENU) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE canTakeFocus(IWebView*, BOOL, BOOL*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE takeFocus(IWebView*, BOOL) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE registerUndoWithTarget(IWebUndoTarget*, BSTR, IUnknown*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE removeAllActionsWithTarget(IWebUndoTarget*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE setActionTitle(BSTR) { return E_NOTIMPL; }
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE addCustomMenuDrawingData(_In_opt_ IWebView*, _In_ HMENU) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE cleanUpCustomMenuDrawingData(_In_opt_ IWebView*, _In_ HMENU) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE canTakeFocus(_In_opt_ IWebView*, BOOL, _Out_ BOOL*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE takeFocus(_In_opt_ IWebView*, BOOL) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE registerUndoWithTarget(_In_opt_ IWebUndoTarget*, _In_ BSTR, _In_opt_ IUnknown*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE removeAllActionsWithTarget(_In_opt_ IWebUndoTarget*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE setActionTitle(_In_ BSTR) { return E_NOTIMPL; }
</ins><span class="cx"> virtual HRESULT STDMETHODCALLTYPE undo() { return E_NOTIMPL; }
</span><span class="cx"> virtual HRESULT STDMETHODCALLTYPE redo() { return E_NOTIMPL; }
</span><del>- virtual HRESULT STDMETHODCALLTYPE canUndo(BOOL*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE canRedo(BOOL*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE printFrame(IWebView*, IWebFrame *) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE ftpDirectoryTemplatePath(IWebView*, BSTR*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE webViewHeaderHeight(IWebView*, float*);
- virtual HRESULT STDMETHODCALLTYPE webViewFooterHeight(IWebView*, float*);
- virtual HRESULT STDMETHODCALLTYPE drawHeaderInRect(IWebView*, RECT*, ULONG_PTR);
- virtual HRESULT STDMETHODCALLTYPE drawFooterInRect(IWebView*, RECT*, ULONG_PTR, UINT, UINT);
- virtual HRESULT STDMETHODCALLTYPE webViewPrintingMarginRect(IWebView*, RECT*);
- virtual HRESULT STDMETHODCALLTYPE canRunModal(IWebView*, BOOL*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE createModalDialog(IWebView*, IWebURLRequest*, IWebView**) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE runModal(IWebView*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE isMenuBarVisible(IWebView*, BOOL*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE setMenuBarVisible(IWebView*, BOOL) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE runDatabaseSizeLimitPrompt(IWebView*, BSTR, IWebFrame*, BOOL*) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE paintCustomScrollbar(IWebView*, HDC, RECT, WebScrollBarControlSize, WebScrollbarControlState, WebScrollbarControlPart, BOOL, float, float, WebScrollbarControlPartMask) { return E_NOTIMPL; }
- virtual HRESULT STDMETHODCALLTYPE paintCustomScrollCorner(IWebView*, HDC, RECT) { return E_NOTIMPL; }
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE canUndo(_Out_ BOOL*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE canRedo(_Out_ BOOL*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE printFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE ftpDirectoryTemplatePath(_In_opt_ IWebView*, __deref_opt_out BSTR*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE webViewHeaderHeight(_In_opt_ IWebView*, _Out_ float*);
+ virtual HRESULT STDMETHODCALLTYPE webViewFooterHeight(_In_opt_ IWebView*, _Out_ float*);
+ virtual HRESULT STDMETHODCALLTYPE drawHeaderInRect(_In_opt_ IWebView*, _In_ RECT*, ULONG_PTR);
+ virtual HRESULT STDMETHODCALLTYPE drawFooterInRect(_In_opt_ IWebView*, _In_ RECT*, ULONG_PTR, UINT, UINT);
+ virtual HRESULT STDMETHODCALLTYPE webViewPrintingMarginRect(_In_opt_ IWebView*, _Out_ RECT*);
+ virtual HRESULT STDMETHODCALLTYPE canRunModal(_In_opt_ IWebView*, _Out_ BOOL*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE createModalDialog(_In_opt_ IWebView*, _In_opt_ IWebURLRequest*, _COM_Outptr_opt_ IWebView**);
+ virtual HRESULT STDMETHODCALLTYPE runModal(_In_opt_ IWebView*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE isMenuBarVisible(_In_opt_ IWebView*, _Out_ BOOL*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE setMenuBarVisible(_In_opt_ IWebView*, BOOL) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE runDatabaseSizeLimitPrompt(_In_opt_ IWebView*, _In_ BSTR, _In_opt_ IWebFrame*, _Out_ BOOL*) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE paintCustomScrollbar(_In_opt_ IWebView*, _In_ HDC, RECT, WebScrollBarControlSize, WebScrollbarControlState, WebScrollbarControlPart, BOOL, float, float, WebScrollbarControlPartMask) { return E_NOTIMPL; }
+ virtual HRESULT STDMETHODCALLTYPE paintCustomScrollCorner(_In_opt_ IWebView*, _In_ HDC, RECT) { return E_NOTIMPL; }
</ins><span class="cx">
</span><span class="cx"> private:
</span><del>- int m_refCount;
</del><ins>+ int m_refCount { 1 };
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkToolsWinLauncherResourceLoadDelegatecpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WinLauncher/ResourceLoadDelegate.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WinLauncher/ResourceLoadDelegate.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/WinLauncher/ResourceLoadDelegate.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>-* Copyright (C) 2014 Apple Inc. All Rights Reserved.
</del><ins>+* Copyright (C) 2014-2015 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">@@ -35,9 +35,11 @@
</span><span class="cx"> #include <shlwapi.h>
</span><span class="cx"> #include <wininet.h>
</span><span class="cx">
</span><del>-HRESULT ResourceLoadDelegate::QueryInterface(REFIID riid, void** ppvObject)
</del><ins>+HRESULT ResourceLoadDelegate::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject)
</ins><span class="cx"> {
</span><del>- *ppvObject = 0;
</del><ins>+ if (!ppvObject)
+ return E_POINTER;
+ *ppvObject = nullptr;
</ins><span class="cx"> if (IsEqualIID(riid, IID_IUnknown))
</span><span class="cx"> *ppvObject = static_cast<IWebResourceLoadDelegate*>(this);
</span><span class="cx"> else if (IsEqualIID(riid, IID_IWebResourceLoadDelegate))
</span><span class="lines">@@ -49,12 +51,12 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG ResourceLoadDelegate::AddRef(void)
</del><ins>+ULONG ResourceLoadDelegate::AddRef()
</ins><span class="cx"> {
</span><span class="cx"> return ++m_refCount;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG ResourceLoadDelegate::Release(void)
</del><ins>+ULONG ResourceLoadDelegate::Release()
</ins><span class="cx"> {
</span><span class="cx"> ULONG newRef = --m_refCount;
</span><span class="cx"> if (!newRef)
</span><span class="lines">@@ -63,7 +65,7 @@
</span><span class="cx"> return newRef;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT ResourceLoadDelegate::identifierForInitialRequest(IWebView*, IWebURLRequest*, IWebDataSource*, unsigned long identifier)
</del><ins>+HRESULT ResourceLoadDelegate::identifierForInitialRequest(_In_opt_ IWebView*, _In_opt_ IWebURLRequest*, _In_opt_ IWebDataSource*, unsigned long identifier)
</ins><span class="cx"> {
</span><span class="cx"> if (!m_client)
</span><span class="cx"> return E_FAIL;
</span><span class="lines">@@ -73,32 +75,35 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT ResourceLoadDelegate::willSendRequest(IWebView*, unsigned long, IWebURLRequest*, IWebURLResponse*, IWebDataSource*, IWebURLRequest**)
</del><ins>+HRESULT ResourceLoadDelegate::willSendRequest(_In_opt_ IWebView*, unsigned long, _In_opt_ IWebURLRequest*, _In_opt_ IWebURLResponse*, _In_opt_ IWebDataSource*, _COM_Outptr_opt_ IWebURLRequest** result)
</ins><span class="cx"> {
</span><ins>+ if (!result)
+ return E_POINTER;
+ *result = nullptr;
</ins><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT ResourceLoadDelegate::didReceiveAuthenticationChallenge(IWebView*, unsigned long, IWebURLAuthenticationChallenge*, IWebDataSource*)
</del><ins>+HRESULT ResourceLoadDelegate::didReceiveAuthenticationChallenge(_In_opt_ IWebView*, unsigned long, _In_opt_ IWebURLAuthenticationChallenge*, _In_opt_ IWebDataSource*)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT ResourceLoadDelegate::didCancelAuthenticationChallenge(IWebView*, unsigned long, IWebURLAuthenticationChallenge*, IWebDataSource*)
</del><ins>+HRESULT ResourceLoadDelegate::didCancelAuthenticationChallenge(_In_opt_ IWebView*, unsigned long, _In_opt_ IWebURLAuthenticationChallenge*, _In_opt_ IWebDataSource*)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT ResourceLoadDelegate::didReceiveResponse(IWebView*, unsigned long, IWebURLResponse*, IWebDataSource*)
</del><ins>+HRESULT ResourceLoadDelegate::didReceiveResponse(_In_opt_ IWebView*, unsigned long, _In_opt_ IWebURLResponse*, _In_opt_ IWebDataSource*)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT ResourceLoadDelegate::didReceiveContentLength(IWebView*, unsigned long, UINT, IWebDataSource*)
</del><ins>+HRESULT ResourceLoadDelegate::didReceiveContentLength(_In_opt_ IWebView*, unsigned long, UINT, _In_opt_ IWebDataSource*)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT ResourceLoadDelegate::didFinishLoadingFromDataSource(IWebView*, unsigned long identifier, IWebDataSource*)
</del><ins>+HRESULT ResourceLoadDelegate::didFinishLoadingFromDataSource(_In_opt_ IWebView*, unsigned long identifier, _In_opt_ IWebDataSource*)
</ins><span class="cx"> {
</span><span class="cx"> if (!m_client)
</span><span class="cx"> return E_FAIL;
</span><span class="lines">@@ -108,7 +113,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT ResourceLoadDelegate::didFailLoadingWithError(IWebView*, unsigned long identifier, IWebError*, IWebDataSource*)
</del><ins>+HRESULT ResourceLoadDelegate::didFailLoadingWithError(_In_opt_ IWebView*, unsigned long identifier, _In_opt_ IWebError*, _In_opt_ IWebDataSource*)
</ins><span class="cx"> {
</span><span class="cx"> if (!m_client)
</span><span class="cx"> return E_FAIL;
</span><span class="lines">@@ -118,7 +123,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT ResourceLoadDelegate::plugInFailedWithError(IWebView*, IWebError*, IWebDataSource*)
</del><ins>+HRESULT ResourceLoadDelegate::plugInFailedWithError(_In_opt_ IWebView*, _In_opt_ IWebError*, _In_opt_ IWebDataSource*)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkToolsWinLauncherResourceLoadDelegateh"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WinLauncher/ResourceLoadDelegate.h (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WinLauncher/ResourceLoadDelegate.h        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/WinLauncher/ResourceLoadDelegate.h        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>-* Copyright (C) 2014 Apple Inc. All Rights Reserved.
</del><ins>+* Copyright (C) 2014-2015 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">@@ -33,27 +33,27 @@
</span><span class="cx"> class ResourceLoadDelegate : public IWebResourceLoadDelegate {
</span><span class="cx"> public:
</span><span class="cx"> ResourceLoadDelegate(WinLauncher* client)
</span><del>- : m_refCount(1), m_client(client) { }
</del><ins>+ : m_client(client) { }
</ins><span class="cx">
</span><span class="cx"> // IUnknown
</span><del>- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
- virtual ULONG STDMETHODCALLTYPE AddRef(void);
- virtual ULONG STDMETHODCALLTYPE Release(void);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject);
+ virtual ULONG STDMETHODCALLTYPE AddRef();
+ virtual ULONG STDMETHODCALLTYPE Release();
</ins><span class="cx">
</span><span class="cx"> // IWebResourceLoadDelegate
</span><del>- virtual HRESULT STDMETHODCALLTYPE identifierForInitialRequest(IWebView*, IWebURLRequest*, IWebDataSource*, unsigned long identifier);
- virtual HRESULT STDMETHODCALLTYPE willSendRequest(IWebView*, unsigned long identifier, IWebURLRequest*, IWebURLResponse* redirectResponse, IWebDataSource*, IWebURLRequest** newRequest);
- virtual HRESULT STDMETHODCALLTYPE didReceiveAuthenticationChallenge(IWebView*, unsigned long identifier, IWebURLAuthenticationChallenge*, IWebDataSource*);
- virtual HRESULT STDMETHODCALLTYPE didCancelAuthenticationChallenge(IWebView*, unsigned long identifier, IWebURLAuthenticationChallenge*, IWebDataSource*);
- virtual HRESULT STDMETHODCALLTYPE didReceiveResponse(IWebView*, unsigned long identifier, IWebURLResponse*, IWebDataSource*);
- virtual HRESULT STDMETHODCALLTYPE didReceiveContentLength(IWebView*, unsigned long identifier, UINT length, IWebDataSource*);
- virtual HRESULT STDMETHODCALLTYPE didFinishLoadingFromDataSource(IWebView*, unsigned long identifier, IWebDataSource*);
- virtual HRESULT STDMETHODCALLTYPE didFailLoadingWithError(IWebView*, unsigned long identifier, IWebError*, IWebDataSource*);
- virtual HRESULT STDMETHODCALLTYPE plugInFailedWithError(IWebView*, IWebError*, IWebDataSource*);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE identifierForInitialRequest(_In_opt_ IWebView*, _In_opt_ IWebURLRequest*, _In_opt_ IWebDataSource*, unsigned long identifier);
+ virtual HRESULT STDMETHODCALLTYPE willSendRequest(_In_opt_ IWebView*, unsigned long identifier, _In_opt_ IWebURLRequest*, _In_opt_ IWebURLResponse* redirectResponse, _In_opt_ IWebDataSource*, _COM_Outptr_opt_ IWebURLRequest** newRequest);
+ virtual HRESULT STDMETHODCALLTYPE didReceiveAuthenticationChallenge(_In_opt_ IWebView*, unsigned long identifier, _In_opt_ IWebURLAuthenticationChallenge*, _In_opt_ IWebDataSource*);
+ virtual HRESULT STDMETHODCALLTYPE didCancelAuthenticationChallenge(_In_opt_ IWebView*, unsigned long identifier, _In_opt_ IWebURLAuthenticationChallenge*, _In_opt_ IWebDataSource*);
+ virtual HRESULT STDMETHODCALLTYPE didReceiveResponse(_In_opt_ IWebView*, unsigned long identifier, _In_opt_ IWebURLResponse*, _In_opt_ IWebDataSource*);
+ virtual HRESULT STDMETHODCALLTYPE didReceiveContentLength(_In_opt_ IWebView*, unsigned long identifier, UINT length, _In_opt_ IWebDataSource*);
+ virtual HRESULT STDMETHODCALLTYPE didFinishLoadingFromDataSource(_In_opt_ IWebView*, unsigned long identifier, _In_opt_ IWebDataSource*);
+ virtual HRESULT STDMETHODCALLTYPE didFailLoadingWithError(_In_opt_ IWebView*, unsigned long identifier, _In_opt_ IWebError*, _In_opt_ IWebDataSource*);
+ virtual HRESULT STDMETHODCALLTYPE plugInFailedWithError(_In_opt_ IWebView*, _In_opt_ IWebError*, _In_opt_ IWebDataSource*);
</ins><span class="cx">
</span><span class="cx"> private:
</span><span class="cx"> WinLauncher* m_client;
</span><del>- int m_refCount;
</del><ins>+ int m_refCount { 1 };
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> #endif // ResourceLoadDelegate
</span></span></pre></div>
<a id="trunkToolsWinLauncherWebDownloadDelegatecpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WinLauncher/WebDownloadDelegate.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WinLauncher/WebDownloadDelegate.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/WinLauncher/WebDownloadDelegate.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -29,7 +29,6 @@
</span><span class="cx"> #include <shlobj.h>
</span><span class="cx">
</span><span class="cx"> WebDownloadDelegate::WebDownloadDelegate()
</span><del>- : m_refCount(1)
</del><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -37,9 +36,11 @@
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT STDMETHODCALLTYPE WebDownloadDelegate::QueryInterface(REFIID riid, void** ppvObject)
</del><ins>+HRESULT WebDownloadDelegate::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject)
</ins><span class="cx"> {
</span><del>- *ppvObject = 0;
</del><ins>+ if (!ppvObject)
+ return E_POINTER;
+ *ppvObject = nullptr;
</ins><span class="cx">
</span><span class="cx"> if (IsEqualGUID(riid, IID_IUnknown))
</span><span class="cx"> *ppvObject = static_cast<IWebDownloadDelegate*>(this);
</span><span class="lines">@@ -52,13 +53,13 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG STDMETHODCALLTYPE WebDownloadDelegate::AddRef(void)
</del><ins>+ULONG WebDownloadDelegate::AddRef()
</ins><span class="cx"> {
</span><span class="cx"> m_refCount++;
</span><span class="cx"> return m_refCount;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-ULONG STDMETHODCALLTYPE WebDownloadDelegate::Release(void)
</del><ins>+ULONG WebDownloadDelegate::Release()
</ins><span class="cx"> {
</span><span class="cx"> m_refCount--;
</span><span class="cx"> int refCount = m_refCount;
</span><span class="lines">@@ -67,8 +68,11 @@
</span><span class="cx"> return refCount;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT STDMETHODCALLTYPE WebDownloadDelegate::decideDestinationWithSuggestedFilename(IWebDownload* download, BSTR filename)
</del><ins>+HRESULT WebDownloadDelegate::decideDestinationWithSuggestedFilename(_In_opt_ IWebDownload* download, _In_ BSTR filename)
</ins><span class="cx"> {
</span><ins>+ if (!download)
+ return E_POINTER;
+
</ins><span class="cx"> wchar_t desktopDirectory[MAX_PATH];
</span><span class="cx"> if (FAILED(SHGetFolderPathW(0, CSIDL_DESKTOP, 0, 0, desktopDirectory)))
</span><span class="cx"> return E_FAIL;
</span><span class="lines">@@ -82,60 +86,73 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT STDMETHODCALLTYPE WebDownloadDelegate::didCancelAuthenticationChallenge(IWebDownload* download, IWebURLAuthenticationChallenge* challenge)
</del><ins>+HRESULT WebDownloadDelegate::didCancelAuthenticationChallenge(_In_opt_ IWebDownload* download, _In_opt_ IWebURLAuthenticationChallenge* challenge)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT STDMETHODCALLTYPE WebDownloadDelegate::didCreateDestination(IWebDownload* download, BSTR destination)
</del><ins>+HRESULT WebDownloadDelegate::didCreateDestination(_In_opt_ IWebDownload* download, _In_ BSTR destination)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT STDMETHODCALLTYPE WebDownloadDelegate::didFailWithError(IWebDownload* download, IWebError* error)
</del><ins>+HRESULT WebDownloadDelegate::didFailWithError(_In_opt_ IWebDownload* download, _In_opt_ IWebError* error)
</ins><span class="cx"> {
</span><ins>+ if (!download)
+ return E_POINTER;
+
</ins><span class="cx"> download->Release();
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT STDMETHODCALLTYPE WebDownloadDelegate::didReceiveAuthenticationChallenge(IWebDownload* download, IWebURLAuthenticationChallenge* challenge)
</del><ins>+HRESULT WebDownloadDelegate::didReceiveAuthenticationChallenge(_In_opt_ IWebDownload* download, _In_opt_ IWebURLAuthenticationChallenge* challenge)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT STDMETHODCALLTYPE WebDownloadDelegate::didReceiveDataOfLength(IWebDownload* download, unsigned length)
</del><ins>+HRESULT WebDownloadDelegate::didReceiveDataOfLength(_In_opt_ IWebDownload* download, unsigned length)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT STDMETHODCALLTYPE WebDownloadDelegate::didReceiveResponse(IWebDownload* download, IWebURLResponse* response)
</del><ins>+HRESULT WebDownloadDelegate::didReceiveResponse(_In_opt_ IWebDownload* download, _In_opt_ IWebURLResponse* response)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT STDMETHODCALLTYPE WebDownloadDelegate::shouldDecodeSourceDataOfMIMEType(IWebDownload* download, BSTR encodingType, BOOL* shouldDecode)
</del><ins>+HRESULT WebDownloadDelegate::shouldDecodeSourceDataOfMIMEType(_In_opt_ IWebDownload* download, _In_ BSTR encodingType, _Out_ BOOL* shouldDecode)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT STDMETHODCALLTYPE WebDownloadDelegate::willResumeWithResponse(IWebDownload* download, IWebURLResponse* response, long long fromByte)
</del><ins>+HRESULT WebDownloadDelegate::willResumeWithResponse(_In_opt_ IWebDownload* download, _In_opt_ IWebURLResponse* response, long long fromByte)
</ins><span class="cx"> {
</span><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT STDMETHODCALLTYPE WebDownloadDelegate::willSendRequest(IWebDownload* download, IWebMutableURLRequest* request, IWebURLResponse* redirectResponse, IWebMutableURLRequest** finalRequest)
</del><ins>+HRESULT WebDownloadDelegate::willSendRequest(_In_opt_ IWebDownload* download, _In_opt_ IWebMutableURLRequest* request,
+ _In_opt_ IWebURLResponse* redirectResponse, _COM_Outptr_opt_ IWebMutableURLRequest** finalRequest)
</ins><span class="cx"> {
</span><ins>+ if (!finalRequest)
+ return E_POINTER;
+ *finalRequest = nullptr;
</ins><span class="cx"> return E_NOTIMPL;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT STDMETHODCALLTYPE WebDownloadDelegate::didBegin(IWebDownload* download)
</del><ins>+HRESULT WebDownloadDelegate::didBegin(_In_opt_ IWebDownload* download)
</ins><span class="cx"> {
</span><ins>+ if (!download)
+ return E_POINTER;
+
</ins><span class="cx"> download->AddRef();
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT STDMETHODCALLTYPE WebDownloadDelegate::didFinish(IWebDownload* download)
</del><ins>+HRESULT WebDownloadDelegate::didFinish(_In_opt_ IWebDownload* download)
</ins><span class="cx"> {
</span><ins>+ if (!download)
+ return E_POINTER;
+
</ins><span class="cx"> download->Release();
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkToolsWinLauncherWebDownloadDelegateh"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WinLauncher/WebDownloadDelegate.h (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WinLauncher/WebDownloadDelegate.h        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/WinLauncher/WebDownloadDelegate.h        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -34,25 +34,25 @@
</span><span class="cx"> WebDownloadDelegate();
</span><span class="cx"> virtual ~WebDownloadDelegate();
</span><span class="cx">
</span><del>- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
- virtual ULONG STDMETHODCALLTYPE AddRef(void);
- virtual ULONG STDMETHODCALLTYPE Release(void);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject);
+ virtual ULONG STDMETHODCALLTYPE AddRef();
+ virtual ULONG STDMETHODCALLTYPE Release();
</ins><span class="cx">
</span><del>- virtual HRESULT STDMETHODCALLTYPE decideDestinationWithSuggestedFilename(IWebDownload*, BSTR filename);
- virtual HRESULT STDMETHODCALLTYPE didCancelAuthenticationChallenge(IWebDownload*, IWebURLAuthenticationChallenge*);
- virtual HRESULT STDMETHODCALLTYPE didCreateDestination(IWebDownload*, BSTR destination);
- virtual HRESULT STDMETHODCALLTYPE didFailWithError(IWebDownload*, IWebError*);
- virtual HRESULT STDMETHODCALLTYPE didReceiveAuthenticationChallenge(IWebDownload*, IWebURLAuthenticationChallenge*);
- virtual HRESULT STDMETHODCALLTYPE didReceiveDataOfLength(IWebDownload*, unsigned length);
- virtual HRESULT STDMETHODCALLTYPE didReceiveResponse(IWebDownload*, IWebURLResponse*);
- virtual HRESULT STDMETHODCALLTYPE shouldDecodeSourceDataOfMIMEType(IWebDownload*, BSTR encodingType, BOOL* shouldDecode);
- virtual HRESULT STDMETHODCALLTYPE willResumeWithResponse(IWebDownload*, IWebURLResponse*, long long fromByte);
- virtual HRESULT STDMETHODCALLTYPE willSendRequest(IWebDownload*, IWebMutableURLRequest*, IWebURLResponse* redirectResponse, IWebMutableURLRequest** finalRequest);
- virtual HRESULT STDMETHODCALLTYPE didBegin(IWebDownload*);
- virtual HRESULT STDMETHODCALLTYPE didFinish(IWebDownload*);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE decideDestinationWithSuggestedFilename(_In_opt_ IWebDownload*, _In_ BSTR filename);
+ virtual HRESULT STDMETHODCALLTYPE didCancelAuthenticationChallenge(_In_opt_ IWebDownload*, _In_opt_ IWebURLAuthenticationChallenge*);
+ virtual HRESULT STDMETHODCALLTYPE didCreateDestination(_In_opt_ IWebDownload*, _In_ BSTR destination);
+ virtual HRESULT STDMETHODCALLTYPE didFailWithError(_In_opt_ IWebDownload*, _In_opt_ IWebError*);
+ virtual HRESULT STDMETHODCALLTYPE didReceiveAuthenticationChallenge(_In_opt_ IWebDownload*, _In_opt_ IWebURLAuthenticationChallenge*);
+ virtual HRESULT STDMETHODCALLTYPE didReceiveDataOfLength(_In_opt_ IWebDownload*, unsigned length);
+ virtual HRESULT STDMETHODCALLTYPE didReceiveResponse(_In_opt_ IWebDownload*, _In_opt_ IWebURLResponse*);
+ virtual HRESULT STDMETHODCALLTYPE shouldDecodeSourceDataOfMIMEType(_In_opt_ IWebDownload*, _In_ BSTR encodingType, _Out_ BOOL* shouldDecode);
+ virtual HRESULT STDMETHODCALLTYPE willResumeWithResponse(_In_opt_ IWebDownload*, _In_opt_ IWebURLResponse*, long long fromByte);
+ virtual HRESULT STDMETHODCALLTYPE willSendRequest(_In_opt_ IWebDownload*, _In_opt_ IWebMutableURLRequest*, _In_opt_ IWebURLResponse* redirectResponse, _COM_Outptr_opt_ IWebMutableURLRequest** finalRequest);
+ virtual HRESULT STDMETHODCALLTYPE didBegin(_In_opt_ IWebDownload*);
+ virtual HRESULT STDMETHODCALLTYPE didFinish(_In_opt_ IWebDownload*);
</ins><span class="cx">
</span><span class="cx"> private:
</span><del>- int m_refCount;
</del><ins>+ int m_refCount { 1 };
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkToolsWinLauncherWinLauncherWebHostcpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WinLauncher/WinLauncherWebHost.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WinLauncher/WinLauncherWebHost.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/WinLauncher/WinLauncherWebHost.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2006, 2008, 2013-2014 Apple Inc. All rights reserved.
</del><ins>+ * Copyright (C) 2006, 2008, 2013-2015 Apple Inc. All rights reserved.
</ins><span class="cx"> * Copyright (C) 2009, 2011 Brent Fulgham. All rights reserved.
</span><span class="cx"> * Copyright (C) 2009, 2010, 2011 Appcelerator, Inc. All rights reserved.
</span><span class="cx"> * Copyright (C) 2013 Alex Christensen. All rights reserved.
</span><span class="lines">@@ -64,24 +64,24 @@
</span><span class="cx"> IWebFramePtr mainFrame;
</span><span class="cx"> HRESULT hr = webView.mainFrame(&mainFrame.GetInterfacePtr());
</span><span class="cx"> if (FAILED(hr))
</span><del>- return 0;
</del><ins>+ return hr;
</ins><span class="cx">
</span><span class="cx"> IWebDataSourcePtr dataSource;
</span><span class="cx"> hr = mainFrame->dataSource(&dataSource.GetInterfacePtr());
</span><span class="cx"> if (FAILED(hr) || !dataSource)
</span><span class="cx"> hr = mainFrame->provisionalDataSource(&dataSource.GetInterfacePtr());
</span><span class="cx"> if (FAILED(hr) || !dataSource)
</span><del>- return 0;
</del><ins>+ return hr;
</ins><span class="cx">
</span><span class="cx"> IWebMutableURLRequestPtr request;
</span><span class="cx"> hr = dataSource->request(&request.GetInterfacePtr());
</span><span class="cx"> if (FAILED(hr) || !request)
</span><del>- return 0;
</del><ins>+ return hr;
</ins><span class="cx">
</span><span class="cx"> _bstr_t frameURL;
</span><span class="cx"> hr = request->mainDocumentURL(frameURL.GetAddress());
</span><span class="cx"> if (FAILED(hr))
</span><del>- return 0;
</del><ins>+ return hr;
</ins><span class="cx">
</span><span class="cx"> if (frameURL.length()) {
</span><span class="cx"> m_client->pageLoadTestClient().setPageURL(frameURL);
</span><span class="lines">@@ -90,7 +90,7 @@
</span><span class="cx">
</span><span class="cx"> loadURL(frameURL);
</span><span class="cx">
</span><del>- return 0;
</del><ins>+ return S_OK;
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void WinLauncherWebHost::loadURL(_bstr_t& url)
</span><span class="lines">@@ -98,10 +98,12 @@
</span><span class="cx"> ::SendMessage(m_hURLBarWnd, static_cast<UINT>(WM_SETTEXT), 0, reinterpret_cast<LPARAM>(url.GetBSTR()));
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT WinLauncherWebHost::didFailProvisionalLoadWithError(IWebView*, IWebError *error, IWebFrame*)
</del><ins>+HRESULT WinLauncherWebHost::didFailProvisionalLoadWithError(_In_opt_ IWebView*, _In_opt_ IWebError *error, _In_opt_ IWebFrame*)
</ins><span class="cx"> {
</span><span class="cx"> _bstr_t errorDescription;
</span><del>- HRESULT hr = error->localizedDescription(errorDescription.GetAddress());
</del><ins>+ HRESULT hr = E_POINTER;
+ if (error)
+ hr = error->localizedDescription(errorDescription.GetAddress());
</ins><span class="cx"> if (FAILED(hr))
</span><span class="cx"> errorDescription = L"Failed to load page and to localize error description.";
</span><span class="cx">
</span><span class="lines">@@ -111,9 +113,11 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT WinLauncherWebHost::QueryInterface(REFIID riid, void** ppvObject)
</del><ins>+HRESULT WinLauncherWebHost::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject)
</ins><span class="cx"> {
</span><del>- *ppvObject = 0;
</del><ins>+ if (!ppvObject)
+ return E_POINTER;
+ *ppvObject = nullptr;
</ins><span class="cx"> if (IsEqualGUID(riid, IID_IUnknown))
</span><span class="cx"> *ppvObject = static_cast<IWebFrameLoadDelegate*>(this);
</span><span class="cx"> else if (IsEqualGUID(riid, IID_IWebFrameLoadDelegate))
</span><span class="lines">@@ -144,7 +148,7 @@
</span><span class="cx"> typedef _com_ptr_t<_com_IIID<IDOMEventTarget, &__uuidof(IDOMEventTarget)>> IDOMEventTargetPtr;
</span><span class="cx"> typedef _com_ptr_t<_com_IIID<IWebFrame2, &__uuidof(IWebFrame2)>> IWebFrame2Ptr;
</span><span class="cx">
</span><del>-HRESULT WinLauncherWebHost::didFinishLoadForFrame(IWebView* webView, IWebFrame* frame)
</del><ins>+HRESULT WinLauncherWebHost::didFinishLoadForFrame(_In_opt_ IWebView* webView, _In_opt_ IWebFrame* frame)
</ins><span class="cx"> {
</span><span class="cx"> if (!frame || !webView)
</span><span class="cx"> return E_POINTER;
</span><span class="lines">@@ -183,7 +187,7 @@
</span><span class="cx"> return hr;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT WinLauncherWebHost::didStartProvisionalLoadForFrame(IWebView*, IWebFrame* frame)
</del><ins>+HRESULT WinLauncherWebHost::didStartProvisionalLoadForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame* frame)
</ins><span class="cx"> {
</span><span class="cx"> if (!frame)
</span><span class="cx"> return E_FAIL;
</span><span class="lines">@@ -192,30 +196,30 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT WinLauncherWebHost::didFailLoadWithError(IWebView*, IWebError*, IWebFrame*)
</del><ins>+HRESULT WinLauncherWebHost::didFailLoadWithError(_In_opt_ IWebView*, _In_opt_ IWebError*, _In_opt_ IWebFrame*)
</ins><span class="cx"> {
</span><span class="cx"> m_client->pageLoadTestClient().didFailLoad();
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT WinLauncherWebHost::didHandleOnloadEventsForFrame(IWebView* sender, IWebFrame* frame)
</del><ins>+HRESULT WinLauncherWebHost::didHandleOnloadEventsForFrame(_In_opt_ IWebView* sender, _In_opt_ IWebFrame* frame)
</ins><span class="cx"> {
</span><span class="cx"> IWebDataSourcePtr dataSource;
</span><span class="cx"> HRESULT hr = frame->dataSource(&dataSource.GetInterfacePtr());
</span><span class="cx"> if (FAILED(hr) || !dataSource)
</span><span class="cx"> hr = frame->provisionalDataSource(&dataSource.GetInterfacePtr());
</span><span class="cx"> if (FAILED(hr) || !dataSource)
</span><del>- return 0;
</del><ins>+ return hr;
</ins><span class="cx">
</span><span class="cx"> IWebMutableURLRequestPtr request;
</span><span class="cx"> hr = dataSource->request(&request.GetInterfacePtr());
</span><span class="cx"> if (FAILED(hr) || !request)
</span><del>- return 0;
</del><ins>+ return hr;
</ins><span class="cx">
</span><span class="cx"> _bstr_t frameURL;
</span><span class="cx"> hr = request->mainDocumentURL(frameURL.GetAddress());
</span><span class="cx"> if (FAILED(hr))
</span><del>- return 0;
</del><ins>+ return hr;
</ins><span class="cx">
</span><span class="cx"> if (frameURL.length())
</span><span class="cx"> m_client->pageLoadTestClient().didHandleOnLoadEvents();
</span><span class="lines">@@ -223,7 +227,7 @@
</span><span class="cx"> return S_OK;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-HRESULT WinLauncherWebHost::didFirstLayoutInFrame(IWebView*, IWebFrame* frame)
</del><ins>+HRESULT WinLauncherWebHost::didFirstLayoutInFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame* frame)
</ins><span class="cx"> {
</span><span class="cx"> if (!frame)
</span><span class="cx"> return E_POINTER;
</span></span></pre></div>
<a id="trunkToolsWinLauncherWinLauncherWebHosth"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WinLauncher/WinLauncherWebHost.h (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WinLauncher/WinLauncherWebHost.h        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/WinLauncher/WinLauncherWebHost.h        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -33,18 +33,18 @@
</span><span class="cx"> class WinLauncherWebHost : public IWebFrameLoadDelegate, public IWebFrameLoadDelegatePrivate {
</span><span class="cx"> public:
</span><span class="cx"> WinLauncherWebHost(WinLauncher* client, HWND urlBar)
</span><del>- : m_refCount(1), m_client(client), m_hURLBarWnd(urlBar) { }
</del><ins>+ : m_client(client), m_hURLBarWnd(urlBar) { }
</ins><span class="cx">
</span><span class="cx"> // IUnknown
</span><del>- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppvObject);
</ins><span class="cx"> virtual ULONG STDMETHODCALLTYPE AddRef();
</span><span class="cx"> virtual ULONG STDMETHODCALLTYPE Release();
</span><span class="cx">
</span><span class="cx"> // IWebFrameLoadDelegate
</span><del>- virtual HRESULT STDMETHODCALLTYPE didStartProvisionalLoadForFrame(IWebView*, IWebFrame*);
- virtual HRESULT STDMETHODCALLTYPE didReceiveServerRedirectForProvisionalLoadForFrame(IWebView*, IWebFrame*) { return S_OK; }
- virtual HRESULT STDMETHODCALLTYPE didFailProvisionalLoadWithError(IWebView*, IWebError*, IWebFrame*);
- virtual HRESULT STDMETHODCALLTYPE didCommitLoadForFrame(IWebView* webView, IWebFrame*)
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE didStartProvisionalLoadForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didReceiveServerRedirectForProvisionalLoadForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*) { return S_OK; }
+ virtual HRESULT STDMETHODCALLTYPE didFailProvisionalLoadWithError(_In_opt_ IWebView*, _In_opt_ IWebError*, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didCommitLoadForFrame(_In_opt_ IWebView* webView, _In_opt_ IWebFrame*)
</ins><span class="cx"> {
</span><span class="cx"> if (!webView)
</span><span class="cx"> return E_POINTER;
</span><span class="lines">@@ -52,23 +52,23 @@
</span><span class="cx"> return updateAddressBar(*webView);
</span><span class="cx"> }
</span><span class="cx">
</span><del>- virtual HRESULT STDMETHODCALLTYPE didReceiveTitle(IWebView*, BSTR title, IWebFrame*) { return S_OK; }
- virtual HRESULT STDMETHODCALLTYPE didChangeIcons(IWebView*, IWebFrame*) { return S_OK; }
- virtual HRESULT STDMETHODCALLTYPE didReceiveIcon(IWebView*, HBITMAP, IWebFrame*) { return S_OK; }
- virtual HRESULT STDMETHODCALLTYPE didFinishLoadForFrame(IWebView*, IWebFrame*);
- virtual HRESULT STDMETHODCALLTYPE didFailLoadWithError(IWebView*, IWebError*, IWebFrame*);
- virtual HRESULT STDMETHODCALLTYPE didChangeLocationWithinPageForFrame(IWebView*, IWebFrame*) { return S_OK; }
- virtual HRESULT STDMETHODCALLTYPE willPerformClientRedirectToURL(IWebView*, BSTR url, double delaySeconds, DATE fireDate, IWebFrame*) { return S_OK; }
- virtual HRESULT STDMETHODCALLTYPE didCancelClientRedirectForFrame(IWebView*, IWebFrame*) { return S_OK; }
- virtual HRESULT STDMETHODCALLTYPE willCloseFrame(IWebView*, IWebFrame*) { return S_OK; }
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE didReceiveTitle(_In_opt_ IWebView*, _In_ BSTR title, _In_opt_ IWebFrame*) { return S_OK; }
+ virtual HRESULT STDMETHODCALLTYPE didChangeIcons(_In_opt_ IWebView*, _In_opt_ IWebFrame*) { return S_OK; }
+ virtual HRESULT STDMETHODCALLTYPE didReceiveIcon(_In_opt_ IWebView*, _In_ HBITMAP, _In_opt_ IWebFrame*) { return S_OK; }
+ virtual HRESULT STDMETHODCALLTYPE didFinishLoadForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didFailLoadWithError(_In_opt_ IWebView*, _In_opt_ IWebError*, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didChangeLocationWithinPageForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*) { return S_OK; }
+ virtual HRESULT STDMETHODCALLTYPE willPerformClientRedirectToURL(_In_opt_ IWebView*, _In_ BSTR url, double delaySeconds, DATE fireDate, _In_opt_ IWebFrame*) { return S_OK; }
+ virtual HRESULT STDMETHODCALLTYPE didCancelClientRedirectForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*) { return S_OK; }
+ virtual HRESULT STDMETHODCALLTYPE willCloseFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*) { return S_OK; }
</ins><span class="cx"> virtual /* [local] */ HRESULT STDMETHODCALLTYPE windowScriptObjectAvailable(IWebView*, JSContextRef, JSObjectRef) { return S_OK; }
</span><span class="cx"> virtual /* [local] */ HRESULT STDMETHODCALLTYPE didClearWindowObject(IWebView*, JSContextRef, JSObjectRef, IWebFrame*) { return S_OK; }
</span><span class="cx">
</span><span class="cx"> // IWebFrameLoadDelegatePrivate
</span><del>- virtual HRESULT STDMETHODCALLTYPE didFinishDocumentLoadForFrame(IWebView* sender, IWebFrame*) { return S_OK; }
- virtual HRESULT STDMETHODCALLTYPE didFirstLayoutInFrame(IWebView* sender, IWebFrame*);
- virtual HRESULT STDMETHODCALLTYPE didHandleOnloadEventsForFrame(IWebView*, IWebFrame*);
- virtual HRESULT STDMETHODCALLTYPE didFirstVisuallyNonEmptyLayoutInFrame(IWebView* sender, IWebFrame*) { return S_OK; }
</del><ins>+ virtual HRESULT STDMETHODCALLTYPE didFinishDocumentLoadForFrame(_In_opt_ IWebView* sender, _In_opt_ IWebFrame*) { return S_OK; }
+ virtual HRESULT STDMETHODCALLTYPE didFirstLayoutInFrame(_In_opt_ IWebView* sender, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didHandleOnloadEventsForFrame(_In_opt_ IWebView*, _In_opt_ IWebFrame*);
+ virtual HRESULT STDMETHODCALLTYPE didFirstVisuallyNonEmptyLayoutInFrame(_In_opt_ IWebView* sender, _In_opt_ IWebFrame*) { return S_OK; }
</ins><span class="cx">
</span><span class="cx"> void loadURL(_bstr_t&);
</span><span class="cx">
</span><span class="lines">@@ -79,6 +79,6 @@
</span><span class="cx"> HWND m_hURLBarWnd { 0 };
</span><span class="cx"> HGDIOBJ m_URLBarFont { 0 };
</span><span class="cx"> HGDIOBJ m_oldFont { 0 };
</span><del>- ULONG m_refCount { 0 };
</del><ins>+ ULONG m_refCount { 1 };
</ins><span class="cx"> WinLauncher* m_client { nullptr };
</span><span class="cx"> };
</span></span></pre></div>
<a id="trunkToolsWinLauncherWinMaincpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/WinLauncher/WinMain.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/WinLauncher/WinMain.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/WinLauncher/WinMain.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> /*
</span><del>- * Copyright (C) 2006, 2008, 2013, 2014 Apple Inc. All rights reserved.
</del><ins>+ * Copyright (C) 2006, 2008, 2013-2015 Apple Inc. All rights reserved.
</ins><span class="cx"> * Copyright (C) 2009, 2011 Brent Fulgham. All rights reserved.
</span><span class="cx"> * Copyright (C) 2009, 2010, 2011 Appcelerator, Inc. All rights reserved.
</span><span class="cx"> * Copyright (C) 2013 Alex Christensen. All rights reserved.
</span><span class="lines">@@ -35,7 +35,7 @@
</span><span class="cx"> float deviceScaleFactorForWindow(HWND);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-int WINAPI wWinMain(HINSTANCE, HINSTANCE, PWSTR, int nCmdShow)
</del><ins>+int WINAPI wWinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance, _In_ LPWSTR lpstrCmdLine, _In_ int nCmdShow)
</ins><span class="cx"> {
</span><span class="cx"> #ifdef _CRTDBG_MAP_ALLOC
</span><span class="cx"> _CrtSetReportFile(_CRT_WARN, _CRTDBG_FILE_STDERR);
</span></span></pre></div>
<a id="trunkToolswinDLLLauncherDLLLauncherMaincpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/win/DLLLauncher/DLLLauncherMain.cpp (188708 => 188709)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/win/DLLLauncher/DLLLauncherMain.cpp        2015-08-20 22:07:59 UTC (rev 188708)
+++ trunk/Tools/win/DLLLauncher/DLLLauncherMain.cpp        2015-08-20 22:11:17 UTC (rev 188709)
</span><span class="lines">@@ -181,7 +181,7 @@
</span><span class="cx"> #if USE_CONSOLE_ENTRY_POINT
</span><span class="cx"> int main(int argc, const char* argv[])
</span><span class="cx"> #else
</span><del>-int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpstrCmdLine, int nCmdShow)
</del><ins>+int WINAPI wWinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance, _In_ LPWSTR lpstrCmdLine, _In_ int nCmdShow)
</ins><span class="cx"> #endif
</span><span class="cx"> {
</span><span class="cx"> #if defined(_M_X64) || defined(__x86_64__)
</span></span></pre>
</div>
</div>
</body>
</html>