<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>189492</bug_id>
          
          <creation_ts>2018-09-10 20:18:04 -0700</creation_ts>
          <short_desc>[Win][Clang][DumpRenderTree] 0 and nullptr can&apos;t be implicitly converted to AccessibilityUIElement</short_desc>
          <delta_ts>2018-09-12 09:39:22 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Fujii Hironori">fujii</reporter>
          <assigned_to name="Fujii Hironori">fujii</assigned_to>
          <cc>achristensen</cc>
    
    <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>lforschler</cc>
    
    <cc>pvollan</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1458373</commentid>
    <comment_count>0</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-09-10 20:18:04 -0700</bug_when>
    <thetext>[Win][Clang][DumpRenderTree] Add a constructor of AccessibilityUIElement for 0 or nullptr

While trying to build WebKit WinCairo port with the latest Clang (Bug 171618),
the following compilation error is reported.

&gt; [9/31] Building CXX object Tools\DumpRenderTree\CMakeFiles\DumpRenderTreeLib.dir\AccessibilityUIElement.cpp.obj
&gt; FAILED: Tools/DumpRenderTree/CMakeFiles/DumpRenderTreeLib.dir/AccessibilityUIElement.cpp.obj 
&gt; C:\tools\llvm\bin\clang-cl.exe (...) /FoTools\DumpRenderTree\CMakeFiles\DumpRenderTreeLib.dir\AccessibilityUIElement.cpp.obj /FdTools\DumpRenderTree\CMakeFiles\DumpRenderTreeLib.dir\ -c ..\..\Tools\DumpRenderTree\AccessibilityUIElement.cpp
&gt; ..\..\Tools\DumpRenderTree\AccessibilityUIElement.cpp(1564,85):  error: no viable conversion from returned value of type &apos;int&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt; AccessibilityUIElement AccessibilityUIElement::horizontalScrollbar() const { return 0; }
&gt;                                                                                     ^
&gt; ..\..\Tools\DumpRenderTree/AccessibilityUIElement.h(66,5):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt;     AccessibilityUIElement(PlatformUIElement);
&gt;     ^
&gt; ..\..\Tools\DumpRenderTree/AccessibilityUIElement.h(67,5):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt;     AccessibilityUIElement(const AccessibilityUIElement&amp;);
&gt;     ^
&gt; ..\..\Tools\DumpRenderTree\AccessibilityUIElement.cpp(1565,83):  error: no viable conversion from returned value of type &apos;int&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt; AccessibilityUIElement AccessibilityUIElement::verticalScrollbar() const { return 0; }
&gt;                                                                                   ^
&gt; ..\..\Tools\DumpRenderTree/AccessibilityUIElement.h(66,5):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt;     AccessibilityUIElement(PlatformUIElement);
&gt;     ^
&gt; ..\..\Tools\DumpRenderTree/AccessibilityUIElement.h(67,5):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt;     AccessibilityUIElement(const AccessibilityUIElement&amp;);
&gt;     ^
&gt; ..\..\Tools\DumpRenderTree\AccessibilityUIElement.cpp(1566,100):  error: no viable conversion from returned value of type &apos;int&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt; AccessibilityUIElement AccessibilityUIElement::uiElementAttributeValue(JSStringRef) const { return 0; }
&gt;                                                                                                    ^
&gt; ..\..\Tools\DumpRenderTree/AccessibilityUIElement.h(66,5):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt;     AccessibilityUIElement(PlatformUIElement);
&gt;     ^
&gt; ..\..\Tools\DumpRenderTree/AccessibilityUIElement.h(67,5):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt;     AccessibilityUIElement(const AccessibilityUIElement&amp;);
&gt;     ^
&gt; ..\..\Tools\DumpRenderTree\AccessibilityUIElement.cpp(1635,12):  error: no viable conversion from returned value of type &apos;int&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;     return 0;
&gt;            ^
&gt; ..\..\Tools\DumpRenderTree/AccessibilityUIElement.h(66,5):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt;     AccessibilityUIElement(PlatformUIElement);
&gt;     ^
&gt; ..\..\Tools\DumpRenderTree/AccessibilityUIElement.h(67,5):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt;     AccessibilityUIElement(const AccessibilityUIElement&amp;);
&gt;     ^
&gt; 4 errors generated.


&gt; [10/31] Building CXX object Tools\DumpRenderTree\CMakeFiles\DumpRenderTreeLib.dir\win\AccessibilityUIElementWin.cpp.obj
&gt; FAILED: Tools/DumpRenderTree/CMakeFiles/DumpRenderTreeLib.dir/win/AccessibilityUIElementWin.cpp.obj 
&gt; C:\tools\llvm\bin\clang-cl.exe  (...) /FoTools\DumpRenderTree\CMakeFiles\DumpRenderTreeLib.dir\win\AccessibilityUIElementWin.cpp.obj /FdTools\DumpRenderTree\CMakeFiles\DumpRenderTreeLib.dir\ -c ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(136,12):  error: no viable conversion from returned value of type &apos;int&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;     return 0;
&gt;            ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(142,12):  error: no viable conversion from returned value of type &apos;int&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;     return 0;
&gt;            ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(148,16):  error: no viable conversion from returned value of type &apos;nullptr_t&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;         return nullptr;
&gt;                ^~~~~~~
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;nullptr_t&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;nullptr_t&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(156,16):  error: no viable conversion from returned value of type &apos;nullptr_t&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;         return nullptr;
&gt;                ^~~~~~~
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;nullptr_t&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;nullptr_t&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(187,16):  error: no viable conversion from returned value of type &apos;int&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;         return 0;
&gt;                ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(192,16):  error: no viable conversion from returned value of type &apos;nullptr_t&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;         return nullptr;
&gt;                ^~~~~~~
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;nullptr_t&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;nullptr_t&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(195,16):  error: no viable conversion from returned value of type &apos;nullptr_t&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;         return nullptr;
&gt;                ^~~~~~~
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;nullptr_t&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;nullptr_t&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(200,16):  error: no viable conversion from returned value of type &apos;nullptr_t&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;         return nullptr;
&gt;                ^~~~~~~
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;nullptr_t&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;nullptr_t&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(210,16):  error: no viable conversion from returned value of type &apos;nullptr_t&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;         return nullptr;
&gt;                ^~~~~~~
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;nullptr_t&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;nullptr_t&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(672,12):  error: no viable conversion from returned value of type &apos;int&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;     return 0;
&gt;            ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(682,12):  error: no viable conversion from returned value of type &apos;int&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;     return 0;
&gt;            ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(758,12):  error: no viable conversion from returned value of type &apos;int&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;     return 0;
&gt;            ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(763,12):  error: no viable conversion from returned value of type &apos;int&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;     return 0;
&gt;            ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(768,12):  error: no viable conversion from returned value of type &apos;int&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;     return 0;
&gt;            ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(773,12):  error: no viable conversion from returned value of type &apos;int&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;     return 0;
&gt;            ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(778,12):  error: no viable conversion from returned value of type &apos;int&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;     return 0;
&gt;            ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(783,12):  error: no viable conversion from returned value of type &apos;int&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;     return 0;
&gt;            ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(788,12):  error: no viable conversion from returned value of type &apos;int&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;     return 0;
&gt;            ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(967,12):  error: no viable conversion from returned value of type &apos;int&apos; to function return type &apos;AccessibilityUIElement&apos;
&gt;     return 0;
&gt;            ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(51,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;PlatformUIElement&apos; (aka &apos;COMPtr&lt;IAccessible&gt;&apos;) for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement element)
&gt;                         ^
&gt; ..\..\Tools\DumpRenderTree\win\AccessibilityUIElementWin.cpp(56,25):  note: candidate constructor not viable: no known conversion from &apos;int&apos; to &apos;const AccessibilityUIElement &amp;&apos; for 1st argument
&gt; AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&amp; other)
&gt;                         ^
&gt; 19 errors generated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1458393</commentid>
    <comment_count>1</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-09-10 21:45:23 -0700</bug_when>
    <thetext>I created a repro. This source can be compiled by MSVC, but by GCC and Clang.

https://godbolt.org/z/cL3sGK</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1458396</commentid>
    <comment_count>2</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-09-10 21:59:13 -0700</bug_when>
    <thetext>https://en.cppreference.com/w/cpp/language/implicit_conversion

&gt; 2) zero or one user-defined conversion;

It seems that implicit conversions allows only one user-defined conversion.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1458397</commentid>
    <comment_count>3</comment_count>
      <attachid>349377</attachid>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-09-10 22:09:16 -0700</bug_when>
    <thetext>Created attachment 349377
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1458683</commentid>
    <comment_count>4</comment_count>
      <attachid>349377</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-09-11 14:46:56 -0700</bug_when>
    <thetext>Comment on attachment 349377
Patch

replace nullptr with AccessibilityUIElement(nullptr) instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1458685</commentid>
    <comment_count>5</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-09-11 14:48:42 -0700</bug_when>
    <thetext>Or maybe replace 0 with { nullptr }.  Something like that.  A windows-specific constructor isn&apos;t the answer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1458834</commentid>
    <comment_count>6</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-09-11 19:26:54 -0700</bug_when>
    <thetext>Umm, the reason why I don&apos;t like your idea is it can cause
compilation errors only for Windows Clang builds while it
compiles on other ports if someone will add a new code just putting
nullptr.

Other ports typedef PlatformUIElement just to a simple pointer.

&gt; typedef AtkObject* PlatformUIElement;

What about an idea not to use COMPtr? Just use IAccessible*.

&gt; typedef IAccessible* PlatformUIElement;

I will submit a propose patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1458844</commentid>
    <comment_count>7</comment_count>
      <attachid>349509</attachid>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-09-11 20:06:32 -0700</bug_when>
    <thetext>Created attachment 349509
WIP patch

Umm. Too many &quot;.get()&quot; without using windows-specific constructor.
I will submit a patch following your propose.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1458853</commentid>
    <comment_count>8</comment_count>
      <attachid>349513</attachid>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-09-11 20:34:40 -0700</bug_when>
    <thetext>Created attachment 349513
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1458973</commentid>
    <comment_count>9</comment_count>
      <attachid>349513</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-09-12 09:18:01 -0700</bug_when>
    <thetext>Comment on attachment 349513
Patch

Great!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1458990</commentid>
    <comment_count>10</comment_count>
      <attachid>349513</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-09-12 09:38:02 -0700</bug_when>
    <thetext>Comment on attachment 349513
Patch

Clearing flags on attachment: 349513

Committed r235941: &lt;https://trac.webkit.org/changeset/235941&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1458991</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-09-12 09:38:03 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1458993</commentid>
    <comment_count>12</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-09-12 09:39:22 -0700</bug_when>
    <thetext>&lt;rdar://problem/44386055&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>349377</attachid>
            <date>2018-09-10 22:09:16 -0700</date>
            <delta_ts>2018-09-11 20:34:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-189492-20180911140915.patch</filename>
            <type>text/plain</type>
            <size>2218</size>
            <attacher name="Fujii Hironori">fujii</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1ODgwCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYmFiM2RhYzk3NDY5OTExNjAxNzY5ZTA3ZTBjOGVlMzU5
YjYyN2NhOC4uYzE3NTIwMGY5MjQxMzE3MWFmYTMxMGFmYzhmZGU0ZGViYzEwZWEyZiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2
IEBACisyMDE4LTA5LTEwICBGdWppaSBIaXJvbm9yaSAgPEhpcm9ub3JpLkZ1amlpQHNvbnkuY29t
PgorCisgICAgICAgIFtXaW5dW0NsYW5nXVtEdW1wUmVuZGVyVHJlZV0gQWRkIGEgY29uc3RydWN0
b3Igb2YgQWNjZXNzaWJpbGl0eVVJRWxlbWVudCBmb3IgMCBvciBudWxscHRyCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODk0OTIKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAwIGFuZCBudWxscHRyIGNhbid0
IGJlIGNvbnZlcnRlZCBpbXBsaWNpdGx5IHRvIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQuCisKKyAg
ICAgICAgKiBEdW1wUmVuZGVyVHJlZS93aW4vQWNjZXNzaWJpbGl0eVVJRWxlbWVudFdpbi5jcHA6
CisgICAgICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpBY2Nlc3NpYmlsaXR5VUlFbGVtZW50
KTogQWRkZWQgYSBjb25zdHJ1Y3RvciBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50KG51bGxwdHJfdCku
CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oOiBBZGRl
ZCB0aGUgZGVjbGFyYXRpb24uCisKIDIwMTgtMDktMTAgIFRob21hcyBEZW5uZXkgIDx0ZGVubmV5
QGFwcGxlLmNvbT4KIAogICAgICAgICBbV0hMU0xdIElubGluaW5nIHNob3VsZCBiZSBvcHRpb25h
bApkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVu
dC5oIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oCmluZGV4
IDYzNGNlOGE4ZTQxMWEwOTg5ZjY4MjA0MDZmMTJmOTY1OTAzMWJiZWYuLjdiYzdkNWFmOWRlMzAw
ZDRkZjEzZjU3OWYzNTFiYzUxMzA4OWE1YzMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJU
cmVlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuaAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9B
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50LmgKQEAgLTY1LDYgKzY1LDkgQEAgY2xhc3MgQWNjZXNzaWJp
bGl0eVVJRWxlbWVudCB7CiBwdWJsaWM6CiAgICAgQWNjZXNzaWJpbGl0eVVJRWxlbWVudChQbGF0
Zm9ybVVJRWxlbWVudCk7CiAgICAgQWNjZXNzaWJpbGl0eVVJRWxlbWVudChjb25zdCBBY2Nlc3Np
YmlsaXR5VUlFbGVtZW50Jik7CisjaWYgUExBVEZPUk0oV0lOKQorICAgIEFjY2Vzc2liaWxpdHlV
SUVsZW1lbnQobnVsbHB0cl90KTsKKyNlbmRpZgogICAgIH5BY2Nlc3NpYmlsaXR5VUlFbGVtZW50
KCk7CiAKICAgICBQbGF0Zm9ybVVJRWxlbWVudCBwbGF0Zm9ybVVJRWxlbWVudCgpIGNvbnN0IHsg
cmV0dXJuIG1fZWxlbWVudDsgfQpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvd2lu
L0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRXaW4uY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvd2lu
L0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRXaW4uY3BwCmluZGV4IDRkYTIyNjkyNDQyNDZlMzE1NDdm
M2ViZTJhNzFiNTg1ODIzNTcwMDQuLmRkMDhlZGJhNjBmYTA3MTE2ZWEyNDUzNTczODNhMWQ3NDVh
N2Y3MjQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9BY2Nlc3NpYmlsaXR5
VUlFbGVtZW50V2luLmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS93aW4vQWNjZXNzaWJp
bGl0eVVJRWxlbWVudFdpbi5jcHAKQEAgLTUzLDYgKzUzLDExIEBAIEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6OkFjY2Vzc2liaWxpdHlVSUVsZW1lbnQoUGxhdGZvcm1VSUVsZW1lbnQgZWxlbWVudCkK
IHsKIH0KIAorQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6QWNjZXNzaWJpbGl0eVVJRWxlbWVudChu
dWxscHRyX3QpCisgICAgOiBtX2VsZW1lbnQobnVsbHB0cikKK3sKK30KKwogQWNjZXNzaWJpbGl0
eVVJRWxlbWVudDo6QWNjZXNzaWJpbGl0eVVJRWxlbWVudChjb25zdCBBY2Nlc3NpYmlsaXR5VUlF
bGVtZW50JiBvdGhlcikKICAgICA6IG1fZWxlbWVudChvdGhlci5tX2VsZW1lbnQpCiB7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>349509</attachid>
            <date>2018-09-11 20:06:32 -0700</date>
            <delta_ts>2018-09-11 20:34:37 -0700</delta_ts>
            <desc>WIP patch</desc>
            <filename>wip.diff</filename>
            <type>text/plain</type>
            <size>6007</size>
            <attacher name="Fujii Hironori">fujii</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQu
aCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuaAppbmRleCA2
MzRjZThhOGU0MTEuLjgxYmFiYTY5ZTgwZCAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRy
ZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0Fj
Y2Vzc2liaWxpdHlVSUVsZW1lbnQuaApAQCAtNDEsMTAgKzQxLDkgQEAgdHlwZWRlZiBzdHJ1Y3Qg
b2JqY19vYmplY3QqIFBsYXRmb3JtVUlFbGVtZW50OwogI3VuZGVmIF9XSU5TT0NLQVBJXwogI2Rl
ZmluZSBfV0lOU09DS0FQSV8gLy8gUHJldmVudCBpbmNsdXNpb24gb2Ygd2luc29jay5oIGluIHdp
bmRvd3MuaAogCi0jaW5jbHVkZSA8V2ViQ29yZS9DT01QdHIuaD4KICNpbmNsdWRlIDxvbGVhY2Mu
aD4KIAotdHlwZWRlZiBDT01QdHI8SUFjY2Vzc2libGU+IFBsYXRmb3JtVUlFbGVtZW50OwordXNp
bmcgUGxhdGZvcm1VSUVsZW1lbnQgPSBJQWNjZXNzaWJsZSo7CiAjZWxpZiBIQVZFKEFDQ0VTU0lC
SUxJVFkpICYmIFBMQVRGT1JNKEdUSykKICNpbmNsdWRlICJBY2Nlc3NpYmlsaXR5Tm90aWZpY2F0
aW9uSGFuZGxlckF0ay5oIgogI2luY2x1ZGUgPGF0ay9hdGsuaD4KZGlmZiAtLWdpdCBhL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL3dpbi9BY2Nlc3NpYmlsaXR5Q29udHJvbGxlcldpbi5jcHAgYi9Ub29s
cy9EdW1wUmVuZGVyVHJlZS93aW4vQWNjZXNzaWJpbGl0eUNvbnRyb2xsZXJXaW4uY3BwCmluZGV4
IGI5OGEwMjg4NDdkYy4uZjY1MzhjZjMwN2UzIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVy
VHJlZS93aW4vQWNjZXNzaWJpbGl0eUNvbnRyb2xsZXJXaW4uY3BwCisrKyBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL3dpbi9BY2Nlc3NpYmlsaXR5Q29udHJvbGxlcldpbi5jcHAKQEAgLTEyMSw3ICsx
MjEsNyBAQCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50IEFjY2Vzc2liaWxpdHlDb250cm9sbGVyOjph
Y2Nlc3NpYmxlRWxlbWVudEJ5SWQoSlNTdHJpbmdSZQogCiAgICAgQ09NUHRyPElBY2Nlc3NpYmxl
PiByZXN1bHQgPSBmaW5kQWNjZXNzaWJsZU9iamVjdEJ5SWQocm9vdEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQsIGlkQXR0cmlidXRlKTsKICAgICBpZiAocmVzdWx0KQotICAgICAgICByZXR1cm4gQWNj
ZXNzaWJpbGl0eVVJRWxlbWVudChyZXN1bHQpOworICAgICAgICByZXR1cm4gQWNjZXNzaWJpbGl0
eVVJRWxlbWVudChyZXN1bHQuZ2V0KCkpOwogCiAgICAgcmV0dXJuIDA7CiB9CkBAIC0xMzcsMTIg
KzEzNywxMiBAQCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50IEFjY2Vzc2liaWxpdHlDb250cm9sbGVy
Ojpmb2N1c2VkRWxlbWVudCgpCiAgICAgaWYgKFZfVlQoJnZGb2N1cykgPT0gVlRfSTQpIHsKICAg
ICAgICAgQVNTRVJUKFZfSTQoJnZGb2N1cykgPT0gQ0hJTERJRF9TRUxGKTsKICAgICAgICAgLy8g
VGhlIHJvb3QgYWNjZXNzaWJsZSBvYmplY3QgaXMgdGhlIGZvY3VzZWQgb2JqZWN0LgotICAgICAg
ICByZXR1cm4gcm9vdEFjY2Vzc2libGU7CisgICAgICAgIHJldHVybiByb290QWNjZXNzaWJsZS5n
ZXQoKTsKICAgICB9CiAKICAgICBBU1NFUlQoVl9WVCgmdkZvY3VzKSA9PSBWVF9ESVNQQVRDSCk7
CiAgICAgLy8gV2UgaGF2ZSBhbiBJRGlzcGF0Y2g7IHF1ZXJ5IGZvciBJQWNjZXNzaWJsZS4KLSAg
ICByZXR1cm4gQ09NUHRyPElBY2Nlc3NpYmxlPihRdWVyeSwgVl9ESVNQQVRDSCgmdkZvY3VzKSk7
CisgICAgcmV0dXJuIENPTVB0cjxJQWNjZXNzaWJsZT4oUXVlcnksIFZfRElTUEFUQ0goJnZGb2N1
cykpLmdldCgpOwogfQogCiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50IEFjY2Vzc2liaWxpdHlDb250
cm9sbGVyOjpyb290RWxlbWVudCgpCkBAIC0xNzAsNyArMTcwLDcgQEAgQWNjZXNzaWJpbGl0eVVJ
RWxlbWVudCBBY2Nlc3NpYmlsaXR5Q29udHJvbGxlcjo6cm9vdEVsZW1lbnQoKQogICAgIGlmIChG
QUlMRUQoQWNjZXNzaWJsZU9iamVjdEZyb21XaW5kb3cod2ViVmlld1dpbmRvdywgc3RhdGljX2Nh
c3Q8RFdPUkQ+KE9CSklEX0NMSUVOVCksIF9fdXVpZG9mKElBY2Nlc3NpYmxlKSwgcmVpbnRlcnBy
ZXRfY2FzdDx2b2lkKio+KCZyb290QWNjZXNzaWJsZSkpKSkKICAgICAgICAgcmV0dXJuIDA7CiAK
LSAgICByZXR1cm4gcm9vdEFjY2Vzc2libGU7CisgICAgcmV0dXJuIHJvb3RBY2Nlc3NpYmxlLmdl
dCgpOwogfQogCiBzdGF0aWMgdm9pZCBDQUxMQkFDSyBsb2dFdmVudFByb2MoSFdJTkVWRU5USE9P
SywgRFdPUkQgZXZlbnQsIEhXTkQgaHduZCwgTE9ORyBpZE9iamVjdCwgTE9ORyBpZENoaWxkLCBE
V09SRCwgRFdPUkQpCkBAIC0zMjcsNyArMzI3LDcgQEAgc3RhdGljIHZvaWQgQ0FMTEJBQ0sgbm90
aWZpY2F0aW9uTGlzdGVuZXJQcm9jKEhXSU5FVkVOVEhPT0ssIERXT1JEIGV2ZW50LCBIV05EIGgK
ICAgICAgICAgcmV0dXJuOwogCiAgICAgQ09NUHRyPElBY2Nlc3NpYmxlPiBjaGlsZEFjY2Vzc2li
bGUoUXVlcnksIGNoaWxkRGlzcGF0Y2gpOwotICAgIHNoYXJlZEZyYW1lTG9hZERlbGVnYXRlLT5h
Y2Nlc3NpYmlsaXR5Q29udHJvbGxlcigpLT53aW5Ob3RpZmljYXRpb25SZWNlaXZlZChjaGlsZEFj
Y2Vzc2libGUsIHN0cmluZ0V2ZW50KGV2ZW50KSk7CisgICAgc2hhcmVkRnJhbWVMb2FkRGVsZWdh
dGUtPmFjY2Vzc2liaWxpdHlDb250cm9sbGVyKCktPndpbk5vdGlmaWNhdGlvblJlY2VpdmVkKGNo
aWxkQWNjZXNzaWJsZS5nZXQoKSwgc3RyaW5nRXZlbnQoZXZlbnQpKTsKIH0KIAogYm9vbCBBY2Nl
c3NpYmlsaXR5Q29udHJvbGxlcjo6YWRkTm90aWZpY2F0aW9uTGlzdGVuZXIoSlNPYmplY3RSZWYg
ZnVuY3Rpb25DYWxsYmFjaykKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9B
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50V2luLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9B
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50V2luLmNwcAppbmRleCA0ZGEyMjY5MjQ0MjQuLmM4ZTRjMDNk
Yzg2ZiAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvd2luL0FjY2Vzc2liaWxpdHlV
SUVsZW1lbnRXaW4uY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9BY2Nlc3NpYmls
aXR5VUlFbGVtZW50V2luLmNwcApAQCAtNTEsMjEgKzUxLDI0IEBAIHN0YXRpYyBDT01QdHI8SUFj
Y2Vzc2libGVDb21wYXJhYmxlPiBjb21wYXJhYmxlT2JqZWN0KElBY2Nlc3NpYmxlKiBhY2Nlc3Np
YmxlKQogQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6QWNjZXNzaWJpbGl0eVVJRWxlbWVudChQbGF0
Zm9ybVVJRWxlbWVudCBlbGVtZW50KQogICAgIDogbV9lbGVtZW50KGVsZW1lbnQpCiB7CisgICAg
bV9lbGVtZW50LT5BZGRSZWYoKTsKIH0KIAogQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6QWNjZXNz
aWJpbGl0eVVJRWxlbWVudChjb25zdCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50JiBvdGhlcikKICAg
ICA6IG1fZWxlbWVudChvdGhlci5tX2VsZW1lbnQpCiB7CisgICAgbV9lbGVtZW50LT5BZGRSZWYo
KTsKIH0KIAogQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6fkFjY2Vzc2liaWxpdHlVSUVsZW1lbnQo
KQogeworICAgIG1fZWxlbWVudC0+UmVsZWFzZSgpOwogfQogCiBib29sIEFjY2Vzc2liaWxpdHlV
SUVsZW1lbnQ6OmlzRXF1YWwoQWNjZXNzaWJpbGl0eVVJRWxlbWVudCogb3RoZXJFbGVtZW50KQog
ewotICAgIENPTVB0cjxJQWNjZXNzaWJsZUNvbXBhcmFibGU+IGNvbXBhcmFibGUgPSBjb21wYXJh
YmxlT2JqZWN0KG1fZWxlbWVudC5nZXQoKSk7Ci0gICAgQ09NUHRyPElBY2Nlc3NpYmxlQ29tcGFy
YWJsZT4gb3RoZXJDb21wYXJhYmxlID0gY29tcGFyYWJsZU9iamVjdChvdGhlckVsZW1lbnQtPm1f
ZWxlbWVudC5nZXQoKSk7CisgICAgQ09NUHRyPElBY2Nlc3NpYmxlQ29tcGFyYWJsZT4gY29tcGFy
YWJsZSA9IGNvbXBhcmFibGVPYmplY3QobV9lbGVtZW50KTsKKyAgICBDT01QdHI8SUFjY2Vzc2li
bGVDb21wYXJhYmxlPiBvdGhlckNvbXBhcmFibGUgPSBjb21wYXJhYmxlT2JqZWN0KG90aGVyRWxl
bWVudC0+bV9lbGVtZW50KTsKICAgICBpZiAoIWNvbXBhcmFibGUgfHwgIW90aGVyQ29tcGFyYWJs
ZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIEJPT0wgaXNTYW1lID0gRkFMU0U7CkBAIC0x
NTQsNyArMTU3LDcgQEAgQWNjZXNzaWJpbGl0eVVJRWxlbWVudCBBY2Nlc3NpYmlsaXR5VUlFbGVt
ZW50OjpnZXRDaGlsZEF0SW5kZXgodW5zaWduZWQgaW5kZXgpCiAgICAgVl9JNCgmdkNoaWxkKSA9
IGluZGV4ICsgMTsKICAgICBpZiAoRkFJTEVEKG1fZWxlbWVudC0+Z2V0X2FjY0NoaWxkKHZDaGls
ZC5HZXRWQVJJQU5UKCksICZjaGlsZCkpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICBy
ZXR1cm4gQ09NUHRyPElBY2Nlc3NpYmxlPihRdWVyeSwgY2hpbGQpOworICAgIHJldHVybiBDT01Q
dHI8SUFjY2Vzc2libGU+KFF1ZXJ5LCBjaGlsZCkuZ2V0KCk7CiB9CiAKIHVuc2lnbmVkIEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQ6OmluZGV4T2ZDaGlsZChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50KiBl
bGVtZW50KQpAQCAtMjAxLDcgKzIwNCw3IEBAIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQgQWNjZXNz
aWJpbGl0eVVJRWxlbWVudDo6dGl0bGVVSUVsZW1lbnQoKQogCiAgICAgQ09NUHRyPElBY2Nlc3Np
YmxlPiB0aXRsZUVsZW1lbnQoUXVlcnksIHZhbHVlLnB1bmtWYWwpOwogCi0gICAgcmV0dXJuIHRp
dGxlRWxlbWVudDsKKyAgICByZXR1cm4gdGl0bGVFbGVtZW50LmdldCgpOwogfQogCiBBY2Nlc3Np
YmlsaXR5VUlFbGVtZW50IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnBhcmVudEVsZW1lbnQoKQpA
QCAtMjEzLDcgKzIxNiw3IEBAIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQgQWNjZXNzaWJpbGl0eVVJ
RWxlbWVudDo6cGFyZW50RWxlbWVudCgpCiAgICAgbV9lbGVtZW50LT5nZXRfYWNjUGFyZW50KCZw
YXJlbnQpOwogCiAgICAgQ09NUHRyPElBY2Nlc3NpYmxlPiBwYXJlbnRBY2Nlc3NpYmxlKFF1ZXJ5
LCBwYXJlbnQpOwotICAgIHJldHVybiBwYXJlbnRBY2Nlc3NpYmxlOworICAgIHJldHVybiBwYXJl
bnRBY2Nlc3NpYmxlLmdldCgpOwogfQogCiBKU1N0cmluZ1JlZiBBY2Nlc3NpYmlsaXR5VUlFbGVt
ZW50OjphdHRyaWJ1dGVzT2ZDaGlsZHJlbigpCkBAIC0zNzcsNyArMzgwLDcgQEAgSlNTdHJpbmdS
ZWYgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6bGFuZ3VhZ2UoKQogICAgIGlmICghbV9lbGVtZW50
KQogICAgICAgICByZXR1cm4gSlNTdHJpbmdDcmVhdGVXaXRoQlNUUihfYnN0cl90KEwiQVhMYW5n
dWFnZTogIikpOwogCi0gICAgQ09NUHRyPElBY2Nlc3NpYmxlQ29tcGFyYWJsZT4gYWNjZXNzaWJs
ZTJFbGVtZW50ID0gY29tcGFyYWJsZU9iamVjdChtX2VsZW1lbnQuZ2V0KCkpOworICAgIENPTVB0
cjxJQWNjZXNzaWJsZUNvbXBhcmFibGU+IGFjY2Vzc2libGUyRWxlbWVudCA9IGNvbXBhcmFibGVP
YmplY3QobV9lbGVtZW50KTsKICAgICBpZiAoIWFjY2Vzc2libGUyRWxlbWVudCkKICAgICAgICAg
cmV0dXJuIEpTU3RyaW5nQ3JlYXRlV2l0aEJTVFIoX2JzdHJfdChMIkFYTGFuZ3VhZ2U6ICIpKTsK
IApAQCAtNjg0LDcgKzY4Nyw3IEBAIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQgQWNjZXNzaWJpbGl0
eVVJRWxlbWVudDo6Y2VsbEZvckNvbHVtbkFuZFJvdyh1bnNpZ25lZCBjb2x1CiAKIEpTU3RyaW5n
UmVmIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnNlbGVjdGVkVGV4dFJhbmdlKCkKIHsKLSAgICBD
T01QdHI8SUFjY2Vzc2libGVDb21wYXJhYmxlPiBjb21wYXJhYmxlID0gY29tcGFyYWJsZU9iamVj
dChwbGF0Zm9ybVVJRWxlbWVudCgpLmdldCgpKTsKKyAgICBDT01QdHI8SUFjY2Vzc2libGVDb21w
YXJhYmxlPiBjb21wYXJhYmxlID0gY29tcGFyYWJsZU9iamVjdChwbGF0Zm9ybVVJRWxlbWVudCgp
KTsKICAgICBpZiAoIWNvbXBhcmFibGUpCiAgICAgICAgIHJldHVybiBKU1N0cmluZ0NyZWF0ZVdp
dGhDaGFyYWN0ZXJzKDAsIDApOwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>349513</attachid>
            <date>2018-09-11 20:34:40 -0700</date>
            <delta_ts>2018-09-12 09:38:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-189492-20180912123439.patch</filename>
            <type>text/plain</type>
            <size>10884</size>
            <attacher name="Fujii Hironori">fujii</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1OTI1CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYzY4NGE1ZTcyMzVlMmE3Njc1NjcyYjY4NTUwZDA0OGI3
NTk4ZjMyZi4uODg1YzhiNjE0YjkzZmIwZTYxM2Y0OTE1MWVhZWNhODA0YzMyNWJhMSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQz
IEBACisyMDE4LTA5LTExICBGdWppaSBIaXJvbm9yaSAgPEhpcm9ub3JpLkZ1amlpQHNvbnkuY29t
PgorCisgICAgICAgIFtXaW5dW0NsYW5nXVtEdW1wUmVuZGVyVHJlZV0gMCBhbmQgbnVsbHB0ciBj
YW4ndCBiZSBpbXBsaWNpdGx5IGNvbnZlcnRlZCB0byBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Cisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODk0OTIKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAwIGFuZCBudWxs
cHRyIGNhbid0IGJlIGltcGxpY2l0bHkgY29udmVydGVkIHRvCisgICAgICAgIEFjY2Vzc2liaWxp
dHlVSUVsZW1lbnQgYmVjYXVzZSBvbmx5IFdpbmRvd3MgcG9ydCB0eXBlZGVmcworICAgICAgICBQ
bGF0Zm9ybVVJRWxlbWVudCBhcyBDT01QdHI8SUFjY2Vzc2libGU+IG5vdCBhIHBvaW50ZXIuCisK
KyAgICAgICAgUmVwbGFjZWQgInJldHVybiAwIiBhbmQgInJldHVybiBudWxscHRyIiB3aXRoICJy
ZXR1cm4geyBudWxscHRyIH0iLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvQWNjZXNzaWJp
bGl0eVVJRWxlbWVudC5jcHA6CisgICAgICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojpob3Jp
em9udGFsU2Nyb2xsYmFyIGNvbnN0KToKKyAgICAgICAgKEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6
OnZlcnRpY2FsU2Nyb2xsYmFyIGNvbnN0KToKKyAgICAgICAgKEFjY2Vzc2liaWxpdHlVSUVsZW1l
bnQ6OnVpRWxlbWVudEF0dHJpYnV0ZVZhbHVlIGNvbnN0KToKKyAgICAgICAgKEFjY2Vzc2liaWxp
dHlVSUVsZW1lbnQ6OmFjY2Vzc2liaWxpdHlFbGVtZW50Rm9yVGV4dE1hcmtlcik6CisgICAgICAg
ICogRHVtcFJlbmRlclRyZWUvd2luL0FjY2Vzc2liaWxpdHlDb250cm9sbGVyV2luLmNwcDoKKyAg
ICAgICAgKEFjY2Vzc2liaWxpdHlDb250cm9sbGVyOjplbGVtZW50QXRQb2ludCk6CisgICAgICAg
IChBY2Nlc3NpYmlsaXR5Q29udHJvbGxlcjo6YWNjZXNzaWJsZUVsZW1lbnRCeUlkKToKKyAgICAg
ICAgKEFjY2Vzc2liaWxpdHlDb250cm9sbGVyOjpmb2N1c2VkRWxlbWVudCk6CisgICAgICAgIChB
Y2Nlc3NpYmlsaXR5Q29udHJvbGxlcjo6cm9vdEVsZW1lbnQpOgorICAgICAgICAqIER1bXBSZW5k
ZXJUcmVlL3dpbi9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50V2luLmNwcDoKKyAgICAgICAgKEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQ6OmVsZW1lbnRBdFBvaW50KToKKyAgICAgICAgKEFjY2Vzc2liaWxp
dHlVSUVsZW1lbnQ6OmxpbmtlZFVJRWxlbWVudEF0SW5kZXgpOgorICAgICAgICAoQWNjZXNzaWJp
bGl0eVVJRWxlbWVudDo6Z2V0Q2hpbGRBdEluZGV4KToKKyAgICAgICAgKEFjY2Vzc2liaWxpdHlV
SUVsZW1lbnQ6OnRpdGxlVUlFbGVtZW50KToKKyAgICAgICAgKEFjY2Vzc2liaWxpdHlVSUVsZW1l
bnQ6OnBhcmVudEVsZW1lbnQpOgorICAgICAgICAoQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6dWlF
bGVtZW50Rm9yU2VhcmNoUHJlZGljYXRlKToKKyAgICAgICAgKEFjY2Vzc2liaWxpdHlVSUVsZW1l
bnQ6OmNlbGxGb3JDb2x1bW5BbmRSb3cpOgorICAgICAgICAoQWNjZXNzaWJpbGl0eVVJRWxlbWVu
dDo6ZGlzY2xvc2VkUm93QXRJbmRleCk6CisgICAgICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50
OjphcmlhT3duc0VsZW1lbnRBdEluZGV4KToKKyAgICAgICAgKEFjY2Vzc2liaWxpdHlVSUVsZW1l
bnQ6OmFyaWFGbG93VG9FbGVtZW50QXRJbmRleCk6CisgICAgICAgIChBY2Nlc3NpYmlsaXR5VUlF
bGVtZW50OjphcmlhQ29udHJvbHNFbGVtZW50QXRJbmRleCk6CisgICAgICAgIChBY2Nlc3NpYmls
aXR5VUlFbGVtZW50OjpzZWxlY3RlZFJvd0F0SW5kZXgpOgorICAgICAgICAoQWNjZXNzaWJpbGl0
eVVJRWxlbWVudDo6cm93QXRJbmRleCk6CisgICAgICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50
OjpkaXNjbG9zZWRCeVJvdyk6CisgICAgICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpzZWxl
Y3RlZENoaWxkQXRJbmRleCBjb25zdCk6CisKIDIwMTgtMDktMDcgIERlYW4gSmFja3NvbiAgPGRp
bm9AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBhbmQgZXhwb3NlIEludGVybmFsIGZlYXR1cmVz
IGZyb20gV2ViS2l0CmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9BY2Nlc3NpYmls
aXR5VUlFbGVtZW50LmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQuY3BwCmluZGV4IGY2NmMxMzM2MDNhZjI4YWI5ZDIxYzFkMWJhNjI5ZjRmNmFkMzBhYTYu
LjBkOGIxNTk1ZWMzYzU0OWIyOGI5ZGJjNjRmZjY5ZmY3MmY1NzIwOGQgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuY3BwCisrKyBiL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuY3BwCkBAIC0xNTYxLDkgKzE1
NjEsOSBAQCBKU1N0cmluZ1JlZiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpyYW5nZUZvclBvc2l0
aW9uKGludCwgaW50KSB7IHJldHVybiAwOyB9CiB2b2lkIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6
OnNldFNlbGVjdGVkQ2hpbGQoQWNjZXNzaWJpbGl0eVVJRWxlbWVudCopIGNvbnN0IHsgfQogdm9p
ZCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpzZXRTZWxlY3RlZENoaWxkQXRJbmRleCh1bnNpZ25l
ZCkgY29uc3QgeyB9CiB2b2lkIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnJlbW92ZVNlbGVjdGlv
bkF0SW5kZXgodW5zaWduZWQpIGNvbnN0IHsgfQotQWNjZXNzaWJpbGl0eVVJRWxlbWVudCBBY2Nl
c3NpYmlsaXR5VUlFbGVtZW50Ojpob3Jpem9udGFsU2Nyb2xsYmFyKCkgY29uc3QgeyByZXR1cm4g
MDsgfQotQWNjZXNzaWJpbGl0eVVJRWxlbWVudCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojp2ZXJ0
aWNhbFNjcm9sbGJhcigpIGNvbnN0IHsgcmV0dXJuIDA7IH0KLUFjY2Vzc2liaWxpdHlVSUVsZW1l
bnQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6dWlFbGVtZW50QXR0cmlidXRlVmFsdWUoSlNTdHJp
bmdSZWYpIGNvbnN0IHsgcmV0dXJuIDA7IH0KK0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQgQWNjZXNz
aWJpbGl0eVVJRWxlbWVudDo6aG9yaXpvbnRhbFNjcm9sbGJhcigpIGNvbnN0IHsgcmV0dXJuIHsg
bnVsbHB0ciB9OyB9CitBY2Nlc3NpYmlsaXR5VUlFbGVtZW50IEFjY2Vzc2liaWxpdHlVSUVsZW1l
bnQ6OnZlcnRpY2FsU2Nyb2xsYmFyKCkgY29uc3QgeyByZXR1cm4geyBudWxscHRyIH07IH0KK0Fj
Y2Vzc2liaWxpdHlVSUVsZW1lbnQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6dWlFbGVtZW50QXR0
cmlidXRlVmFsdWUoSlNTdHJpbmdSZWYpIGNvbnN0IHsgcmV0dXJuIHsgbnVsbHB0ciB9OyB9CiAj
ZW5kaWYKIAogI2lmICFQTEFURk9STShNQUMpICYmICFQTEFURk9STShJT1MpCkBAIC0xNjMyLDcg
KzE2MzIsNyBAQCBBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlciBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50
OjplbmRUZXh0TWFya2VyRm9yVGV4dE1hcmtlclJhbmdlKAogCiBBY2Nlc3NpYmlsaXR5VUlFbGVt
ZW50IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmFjY2Vzc2liaWxpdHlFbGVtZW50Rm9yVGV4dE1h
cmtlcihBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlciopCiB7Ci0gICAgcmV0dXJuIDA7CisgICAgcmV0
dXJuIHsgbnVsbHB0ciB9OwogfQogCiBBY2Nlc3NpYmlsaXR5VGV4dE1hcmtlciBBY2Nlc3NpYmls
aXR5VUlFbGVtZW50OjplbmRUZXh0TWFya2VyRm9yQm91bmRzKGludCB4LCBpbnQgeSwgaW50IHdp
ZHRoLCBpbnQgaGVpZ2h0KQpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvd2luL0Fj
Y2Vzc2liaWxpdHlDb250cm9sbGVyV2luLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9B
Y2Nlc3NpYmlsaXR5Q29udHJvbGxlcldpbi5jcHAKaW5kZXggYjk4YTAyODg0N2RjYzA3ODU0ZTY4
OWNkOWIwMjI4ZGU5Mjg0YjhlYS4uYjk4NWRmNjZjZjVjNWVmY2JhNTc0OWZjYTRjNDE5MjJiMGVi
NGFiZCAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvd2luL0FjY2Vzc2liaWxpdHlD
b250cm9sbGVyV2luLmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS93aW4vQWNjZXNzaWJp
bGl0eUNvbnRyb2xsZXJXaW4uY3BwCkBAIC02Nyw3ICs2Nyw3IEBAIEFjY2Vzc2liaWxpdHlDb250
cm9sbGVyOjp+QWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIoKQogQWNjZXNzaWJpbGl0eVVJRWxlbWVu
dCBBY2Nlc3NpYmlsaXR5Q29udHJvbGxlcjo6ZWxlbWVudEF0UG9pbnQoaW50IHgsIGludCB5KQog
ewogICAgIC8vIEZJWE1FOiBpbXBsZW1lbnQKLSAgICByZXR1cm4gMDsKKyAgICByZXR1cm4geyBu
dWxscHRyIH07CiB9CiAKIHN0YXRpYyBDT01QdHI8SUFjY2Vzc2libGVDb21wYXJhYmxlPiBjb21w
YXJhYmxlT2JqZWN0KGNvbnN0IENPTVB0cjxJU2VydmljZVByb3ZpZGVyPiYgc2VydmljZVByb3Zp
ZGVyKQpAQCAtMTIzLDcgKzEyMyw3IEBAIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQgQWNjZXNzaWJp
bGl0eUNvbnRyb2xsZXI6OmFjY2Vzc2libGVFbGVtZW50QnlJZChKU1N0cmluZ1JlCiAgICAgaWYg
KHJlc3VsdCkKICAgICAgICAgcmV0dXJuIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQocmVzdWx0KTsK
IAotICAgIHJldHVybiAwOworICAgIHJldHVybiB7IG51bGxwdHIgfTsKIH0KIAogQWNjZXNzaWJp
bGl0eVVJRWxlbWVudCBBY2Nlc3NpYmlsaXR5Q29udHJvbGxlcjo6Zm9jdXNlZEVsZW1lbnQoKQpA
QCAtMTMyLDcgKzEzMiw3IEBAIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQgQWNjZXNzaWJpbGl0eUNv
bnRyb2xsZXI6OmZvY3VzZWRFbGVtZW50KCkKIAogICAgIF92YXJpYW50X3QgdkZvY3VzOwogICAg
IGlmIChGQUlMRUQocm9vdEFjY2Vzc2libGUtPmdldF9hY2NGb2N1cygmdkZvY3VzLkdldFZBUklB
TlQoKSkpKQotICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgcmV0dXJuIHsgbnVsbHB0
ciB9OwogCiAgICAgaWYgKFZfVlQoJnZGb2N1cykgPT0gVlRfSTQpIHsKICAgICAgICAgQVNTRVJU
KFZfSTQoJnZGb2N1cykgPT0gQ0hJTERJRF9TRUxGKTsKQEAgLTE0OSwxNSArMTQ5LDE1IEBAIEFj
Y2Vzc2liaWxpdHlVSUVsZW1lbnQgQWNjZXNzaWJpbGl0eUNvbnRyb2xsZXI6OnJvb3RFbGVtZW50
KCkKIHsKICAgICBDT01QdHI8SVdlYlZpZXc+IHZpZXc7CiAgICAgaWYgKEZBSUxFRChmcmFtZS0+
d2ViVmlldygmdmlldykpKQotICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgcmV0dXJuIHsgbnVs
bHB0ciB9OwogCiAgICAgQ09NUHRyPElXZWJWaWV3UHJpdmF0ZTI+IHZpZXdQcml2YXRlKFF1ZXJ5
LCB2aWV3KTsKICAgICBpZiAoIXZpZXdQcml2YXRlKQotICAgICAgICByZXR1cm4gMDsKKyAgICAg
ICAgcmV0dXJuIHsgbnVsbHB0ciB9OwogCiAgICAgSFdORCB3ZWJWaWV3V2luZG93OwogICAgIGlm
IChGQUlMRUQodmlld1ByaXZhdGUtPnZpZXdXaW5kb3coJndlYlZpZXdXaW5kb3cpKSkKLSAgICAg
ICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiB7IG51bGxwdHIgfTsKIAogICAgIC8vIE1ha2Ug
c3VyZSB0aGUgbGF5b3V0IGlzIHVwIHRvIGRhdGUsIHNvIHdlIGNhbiBmaW5kIGFsbCBhY2Nlc3Np
YmxlIGVsZW1lbnRzLgogICAgIENPTVB0cjxJV2ViRnJhbWVQcml2YXRlPiBmcmFtZVByaXZhdGUo
UXVlcnksIGZyYW1lKTsKQEAgLTE2OCw3ICsxNjgsNyBAQCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50
IEFjY2Vzc2liaWxpdHlDb250cm9sbGVyOjpyb290RWxlbWVudCgpCiAgICAgLy8gV2ViVmlldydz
IHdpbmRvdy4KICAgICBDT01QdHI8SUFjY2Vzc2libGU+IHJvb3RBY2Nlc3NpYmxlOwogICAgIGlm
IChGQUlMRUQoQWNjZXNzaWJsZU9iamVjdEZyb21XaW5kb3cod2ViVmlld1dpbmRvdywgc3RhdGlj
X2Nhc3Q8RFdPUkQ+KE9CSklEX0NMSUVOVCksIF9fdXVpZG9mKElBY2Nlc3NpYmxlKSwgcmVpbnRl
cnByZXRfY2FzdDx2b2lkKio+KCZyb290QWNjZXNzaWJsZSkpKSkKLSAgICAgICAgcmV0dXJuIDA7
CisgICAgICAgIHJldHVybiB7IG51bGxwdHIgfTsKIAogICAgIHJldHVybiByb290QWNjZXNzaWJs
ZTsKIH0KZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9BY2Nlc3NpYmlsaXR5
VUlFbGVtZW50V2luLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9BY2Nlc3NpYmlsaXR5
VUlFbGVtZW50V2luLmNwcAppbmRleCA0ZGEyMjY5MjQ0MjQ2ZTMxNTQ3ZjNlYmUyYTcxYjU4NTgy
MzU3MDA0Li5hNTU5NTQyMWYxODc5NTdhZDM5NjhhZTlhNjgxZGZjNzQyOWQ0NmEwIDEwMDY0NAot
LS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS93aW4vQWNjZXNzaWJpbGl0eVVJRWxlbWVudFdpbi5j
cHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvd2luL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRX
aW4uY3BwCkBAIC0xMzMsMTkgKzEzMywxOSBAQCBpbnQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6
Y29sdW1uQ291bnQoKQogCiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50IEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6OmVsZW1lbnRBdFBvaW50KGludCB4LCBpbnQgeSkKIHsKLSAgICByZXR1cm4gMDsKKyAg
ICByZXR1cm4geyBudWxscHRyIH07CiB9CiAKIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQgQWNjZXNz
aWJpbGl0eVVJRWxlbWVudDo6bGlua2VkVUlFbGVtZW50QXRJbmRleCh1bnNpZ25lZCBpbmRleCkK
IHsKICAgICAvLyBGSVhNRTogaW1wbGVtZW50Ci0gICAgcmV0dXJuIDA7CisgICAgcmV0dXJuIHsg
bnVsbHB0ciB9OwogfQogCiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50IEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6OmdldENoaWxkQXRJbmRleCh1bnNpZ25lZCBpbmRleCkKIHsKICAgICBpZiAoIW1fZWxl
bWVudCkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIHJldHVybiB7IG51bGxwdHIg
fTsKIAogICAgIENPTVB0cjxJRGlzcGF0Y2g+IGNoaWxkOwogICAgIF92YXJpYW50X3QgdkNoaWxk
OwpAQCAtMTUzLDcgKzE1Myw3IEBAIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQgQWNjZXNzaWJpbGl0
eVVJRWxlbWVudDo6Z2V0Q2hpbGRBdEluZGV4KHVuc2lnbmVkIGluZGV4KQogICAgIC8vIEluIE1T
QUEsIGluZGV4IDAgaXMgdGhlIG9iamVjdCBpdHNlbGYuCiAgICAgVl9JNCgmdkNoaWxkKSA9IGlu
ZGV4ICsgMTsKICAgICBpZiAoRkFJTEVEKG1fZWxlbWVudC0+Z2V0X2FjY0NoaWxkKHZDaGlsZC5H
ZXRWQVJJQU5UKCksICZjaGlsZCkpKQotICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAg
cmV0dXJuIHsgbnVsbHB0ciB9OwogICAgIHJldHVybiBDT01QdHI8SUFjY2Vzc2libGU+KFF1ZXJ5
LCBjaGlsZCk7CiB9CiAKQEAgLTE4NCwyMCArMTg0LDIwIEBAIEFjY2Vzc2liaWxpdHlVSUVsZW1l
bnQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6dGl0bGVVSUVsZW1lbnQoKQogCiAgICAgQ09NUHRy
PElBY2Nlc3NpYmxlQ29tcGFyYWJsZT4gY29tcGFyYWJsZSA9IGNvbXBhcmFibGVPYmplY3QocGxh
dGZvcm1FbGVtZW50LmdldCgpKTsKICAgICBpZiAoIWNvbXBhcmFibGUpCi0gICAgICAgIHJldHVy
biAwOworICAgICAgICByZXR1cm4geyBudWxscHRyIH07CiAKICAgICBfdmFyaWFudF90IHZhbHVl
OwogICAgIF9ic3RyX3QgdGl0bGVVSUVsZW1lbnRBdHRyaWJ1dGVLZXkoTCJBWFRpdGxlVUlFbGVt
ZW50QXR0cmlidXRlIik7CiAgICAgaWYgKEZBSUxFRChjb21wYXJhYmxlLT5nZXRfYXR0cmlidXRl
KHRpdGxlVUlFbGVtZW50QXR0cmlidXRlS2V5LCAmdmFsdWUuR2V0VkFSSUFOVCgpKSkpCi0gICAg
ICAgIHJldHVybiBudWxscHRyOworICAgICAgICByZXR1cm4geyBudWxscHRyIH07CiAKICAgICBp
ZiAoVl9WVCgmdmFsdWUpID09IFZUX0VNUFRZKQotICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAg
ICAgICAgcmV0dXJuIHsgbnVsbHB0ciB9OwogCiAgICAgQVNTRVJUKFZfVlQoJnZhbHVlKSA9PSBW
VF9VTktOT1dOKTsKIAogICAgIGlmIChWX1ZUKCZ2YWx1ZSkgIT0gVlRfVU5LTk9XTikKLSAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIHJldHVybiB7IG51bGxwdHIgfTsKIAogICAgIENP
TVB0cjxJQWNjZXNzaWJsZT4gdGl0bGVFbGVtZW50KFF1ZXJ5LCB2YWx1ZS5wdW5rVmFsKTsKIApA
QCAtMjA3LDcgKzIwNyw3IEBAIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQgQWNjZXNzaWJpbGl0eVVJ
RWxlbWVudDo6dGl0bGVVSUVsZW1lbnQoKQogQWNjZXNzaWJpbGl0eVVJRWxlbWVudCBBY2Nlc3Np
YmlsaXR5VUlFbGVtZW50OjpwYXJlbnRFbGVtZW50KCkKIHsKICAgICBpZiAoIW1fZWxlbWVudCkK
LSAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIHJldHVybiB7IG51bGxwdHIgfTsKIAog
ICAgIENPTVB0cjxJRGlzcGF0Y2g+IHBhcmVudDsKICAgICBtX2VsZW1lbnQtPmdldF9hY2NQYXJl
bnQoJnBhcmVudCk7CkBAIC02NjksNyArNjY5LDcgQEAgdW5zaWduZWQgQWNjZXNzaWJpbGl0eVVJ
RWxlbWVudDo6dWlFbGVtZW50Q291bnRGb3JTZWFyY2hQcmVkaWNhdGUoSlNDb250ZXh0UmVmIGMK
IAogQWNjZXNzaWJpbGl0eVVJRWxlbWVudCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojp1aUVsZW1l
bnRGb3JTZWFyY2hQcmVkaWNhdGUoSlNDb250ZXh0UmVmIGNvbnRleHQsIEFjY2Vzc2liaWxpdHlV
SUVsZW1lbnQqIHN0YXJ0RWxlbWVudCwgYm9vbCBpc0RpcmVjdGlvbk5leHQsIEpTVmFsdWVSZWYg
c2VhcmNoS2V5LCBKU1N0cmluZ1JlZiBzZWFyY2hUZXh0LCBib29sIHZpc2libGVPbmx5LCBib29s
IGltbWVkaWF0ZURlc2NlbmRhbnRzT25seSkKIHsKLSAgICByZXR1cm4gMDsKKyAgICByZXR1cm4g
eyBudWxscHRyIH07CiB9CiAKIEpTU3RyaW5nUmVmIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnNl
bGVjdFRleHRXaXRoQ3JpdGVyaWEoSlNDb250ZXh0UmVmIGNvbnRleHQsIEpTU3RyaW5nUmVmIGFt
YmlndWl0eVJlc29sdXRpb24sIEpTVmFsdWVSZWYgc2VhcmNoU3RyaW5ncywgSlNTdHJpbmdSZWYg
cmVwbGFjZW1lbnRTdHJpbmcsIEpTU3RyaW5nUmVmIGFjdGl2aXR5KQpAQCAtNjc5LDcgKzY3OSw3
IEBAIEpTU3RyaW5nUmVmIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnNlbGVjdFRleHRXaXRoQ3Jp
dGVyaWEoSlNDb250ZXh0UmVmIGNvbnRleHQsCiAKIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQgQWNj
ZXNzaWJpbGl0eVVJRWxlbWVudDo6Y2VsbEZvckNvbHVtbkFuZFJvdyh1bnNpZ25lZCBjb2x1bW4s
IHVuc2lnbmVkIHJvdykKIHsKLSAgICByZXR1cm4gMDsKKyAgICByZXR1cm4geyBudWxscHRyIH07
CiB9CiAKIEpTU3RyaW5nUmVmIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnNlbGVjdGVkVGV4dFJh
bmdlKCkKQEAgLTc1NSwzNyArNzU1LDM3IEBAIHZvaWQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6
cHJlc3MoKQogCiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6
OmRpc2Nsb3NlZFJvd0F0SW5kZXgodW5zaWduZWQgaW5kZXgpCiB7Ci0gICAgcmV0dXJuIDA7Cisg
ICAgcmV0dXJuIHsgbnVsbHB0ciB9OwogfQogCiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50IEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQ6OmFyaWFPd25zRWxlbWVudEF0SW5kZXgodW5zaWduZWQgaW5kZXgp
CiB7Ci0gICAgcmV0dXJuIDA7CisgICAgcmV0dXJuIHsgbnVsbHB0ciB9OwogfQogCiBBY2Nlc3Np
YmlsaXR5VUlFbGVtZW50IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmFyaWFGbG93VG9FbGVtZW50
QXRJbmRleCh1bnNpZ25lZCBpbmRleCkKIHsKLSAgICByZXR1cm4gMDsKKyAgICByZXR1cm4geyBu
dWxscHRyIH07CiB9CiAKIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQgQWNjZXNzaWJpbGl0eVVJRWxl
bWVudDo6YXJpYUNvbnRyb2xzRWxlbWVudEF0SW5kZXgodW5zaWduZWQgaW5kZXgpCiB7Ci0gICAg
cmV0dXJuIDA7CisgICAgcmV0dXJuIHsgbnVsbHB0ciB9OwogfQogCiBBY2Nlc3NpYmlsaXR5VUlF
bGVtZW50IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnNlbGVjdGVkUm93QXRJbmRleCh1bnNpZ25l
ZCBpbmRleCkKIHsKLSAgICByZXR1cm4gMDsKKyAgICByZXR1cm4geyBudWxscHRyIH07CiB9CiAK
IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6cm93QXRJbmRl
eCh1bnNpZ25lZCBpbmRleCkKIHsKLSAgICByZXR1cm4gMDsKKyAgICByZXR1cm4geyBudWxscHRy
IH07CiB9CiAKIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6
ZGlzY2xvc2VkQnlSb3coKQogewotICAgIHJldHVybiAwOworICAgIHJldHVybiB7IG51bGxwdHIg
fTsKIH0KIAogSlNTdHJpbmdSZWYgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6YWNjZXNzaWJpbGl0
eVZhbHVlKCkgY29uc3QKQEAgLTk2NCw3ICs5NjQsNyBAQCB1bnNpZ25lZCBBY2Nlc3NpYmlsaXR5
VUlFbGVtZW50OjpzZWxlY3RlZENoaWxkcmVuQ291bnQoKSBjb25zdAogQWNjZXNzaWJpbGl0eVVJ
RWxlbWVudCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpzZWxlY3RlZENoaWxkQXRJbmRleCh1bnNp
Z25lZCkgY29uc3QKIHsKICAgICAvLyBGSVhNRTogaW1wbGVtZW50Ci0gICAgcmV0dXJuIDA7Cisg
ICAgcmV0dXJuIHsgbnVsbHB0ciB9OwogfQogCiB2b2lkIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6
OmNvbHVtbkhlYWRlcnMoVmVjdG9yPEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ+JikgY29uc3QK
</data>

          </attachment>
      

    </bug>

</bugzilla>