<?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>227390</bug_id>
          
          <creation_ts>2021-06-25 02:29:37 -0700</creation_ts>
          <short_desc>Nullptr crash in HTMLStackItem::create via DocumentFragment::parseHTML</short_desc>
          <delta_ts>2021-06-29 05:06:52 -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>HTML Editing</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="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Rob Buis">rbuis</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>cgarcia</cc>
    
    <cc>darin</cc>
    
    <cc>ews-feeder</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fred.wang</cc>
    
    <cc>gpoo</cc>
    
    <cc>mifenton</cc>
    
    <cc>product-security</cc>
    
    <cc>rbuis</cc>
    
    <cc>svillar</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1772594</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-06-25 02:29:37 -0700</bug_when>
    <thetext>e.g.

Debug assertion makes this bug clear:

ASSERTION FAILED: contextElement
./dom/DocumentFragment.cpp(87) : void WebCore::DocumentFragment::parseHTML(const WTF::String &amp;, WebCore::Element *, WebCore::ParserContentPolicy)
1   0x7ba119179 WTFCrash
2   0x79a8ac29b WTFCrashWithInfo(int, char const*, char const*, int)
3   0x79d9dc7e0 WebCore::DocumentFragment::parseHTML(WTF::String const&amp;, WebCore::Element*, WebCore::ParserContentPolicy)
4   0x79b7ee968 WebCore::createFragment(WebCore::Frame&amp;, NSAttributedString*)
5   0x79b7edfba WebCore::createFragmentAndAddResources(WebCore::Frame&amp;, NSAttributedString*)
6   0x79b7f3ccb WebCore::WebContentReader::readRTF(WebCore::SharedBuffer&amp;)
7   0x79c9b0f0f WebCore::Pasteboard::read(WebCore::PasteboardWebContentReader&amp;, WebCore::WebContentReadingPolicy, std::__1::optional&lt;unsigned long&gt;)
8   0x79b663a98 WebCore::Editor::webContentFromPasteboard(WebCore::Pasteboard&amp;, WebCore::SimpleRange const&amp;, bool, bool&amp;)
9   0x79b7f74d6 WebCore::Editor::pasteWithPasteboard(WebCore::Pasteboard*, WTF::OptionSet&lt;WebCore::Editor::PasteOption&gt;)
10  0x79dcbbd4e WebCore::Editor::paste(WebCore::Pasteboard&amp;, WebCore::Editor::FromMenuOrKeyBinding)
11  0x79dcbbbf3 WebCore::Editor::paste(WebCore::Editor::FromMenuOrKeyBinding)
12  0x79dce7463 WebCore::executePaste(WebCore::Frame&amp;, WebCore::Event*, WebCore::EditorCommandSource, WTF::String const&amp;)
13  0x79dcbdc6b WebCore::Editor::Command::execute(WTF::String const&amp;, WebCore::Event*) const
14  0x79d9ca7eb WebCore::Document::execCommand(WTF::String const&amp;, bool, WTF::String const&amp;)
15  0x79b2aff3b WebCore::jsDocumentPrototypeFunction_execCommandBody(JSC::JSGlobalObject*, JSC::CallFrame*, WebCore::JSDocument*)
16  0x79b2af89c long long WebCore::IDLOperation&lt;WebCore::JSDocument&gt;::call&lt;&amp;(WebCore::jsDocumentPrototypeFunction_execCommandBody(JSC::JSGlobalObject*, JSC::CallFrame*, WebCore::JSDocument*)), (WebCore::CastedThisErrorBehavior)0&gt;(JSC::JSGlobalObject&amp;, JSC::CallFrame&amp;, char const*)

In release, we crash with the following backtrace:
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.WebCore             	0x000000011343596a WebCore::Node::ref() const + 0 (Node.h:781) [inlined]
1   com.apple.WebCore             	0x000000011343596a WTF::Ref&lt;WebCore::ContainerNode, WTF::RawPtrTraits&lt;WebCore::ContainerNode&gt; &gt;::Ref(WebCore::ContainerNode&amp;) + 4 (Ref.h:67) [inlined]
2   com.apple.WebCore             	0x000000011343596a WTF::Ref&lt;WebCore::ContainerNode, WTF::RawPtrTraits&lt;WebCore::ContainerNode&gt; &gt;::Ref(WebCore::ContainerNode&amp;) + 4 (Ref.h:66) [inlined]
3   com.apple.WebCore             	0x000000011343596a WebCore::HTMLStackItem::HTMLStackItem(WebCore::Element&amp;) + 10 (HTMLStackItem.h:107) [inlined]
4   com.apple.WebCore             	0x000000011343596a WebCore::HTMLStackItem::HTMLStackItem(WebCore::Element&amp;) + 10 (HTMLStackItem.h:110) [inlined]
5   com.apple.WebCore             	0x000000011343596a WebCore::HTMLStackItem::create(WebCore::Element&amp;) + 20 (HTMLStackItem.h:115) [inlined]
6   com.apple.WebCore             	0x000000011343596a WebCore::HTMLTreeBuilder::FragmentParsingContext::FragmentParsingContext(WebCore::DocumentFragment&amp;, WebCore::Element&amp;) + 32 (HTMLTreeBuilder.cpp:311) [inlined]
7   com.apple.WebCore             	0x000000011343596a WebCore::HTMLTreeBuilder::FragmentParsingContext::FragmentParsingContext(WebCore::DocumentFragment&amp;, WebCore::Element&amp;) + 32 (HTMLTreeBuilder.cpp:309) [inlined]
8   com.apple.WebCore             	0x000000011343596a WebCore::HTMLTreeBuilder::HTMLTreeBuilder(WebCore::HTMLDocumentParser&amp;, WebCore::DocumentFragment&amp;, WebCore::Element&amp;, WebCore::ParserContentPolicy, WebCore::HTMLParserOptions const&amp;) + 74 (HTMLTreeBuilder.cpp:281)
9   com.apple.WebCore             	0x000000011342184a std::__1::__unique_if&lt;WebCore::HTMLTreeBuilder&gt;::__unique_single std::__1::make_unique&lt;WebCore::HTMLTreeBuilder, WebCore::HTMLDocumentParser&amp;, WebCore::DocumentFragment&amp;, WebCore::Element&amp;, WebCore::ParserContentPolicy, WebCore::HTMLParserOptions&amp;&gt;(WebCore::HTMLDocumentParser&amp;, WebCore::DocumentFragment&amp;, WebCore::Element&amp;, WebCore::ParserContentPolicy&amp;&amp;, WebCore::HTMLParserOptions&amp;) + 37 (memory:2755) [inlined]
10  com.apple.WebCore             	0x000000011342184a decltype(auto) WTF::makeUnique&lt;WebCore::HTMLTreeBuilder, WebCore::HTMLDocumentParser&amp;, WebCore::DocumentFragment&amp;, WebCore::Element&amp;, WebCore::ParserContentPolicy, WebCore::HTMLParserOptions&amp;&gt;(WebCore::HTMLDocumentParser&amp;, WebCore::DocumentFragment&amp;, WebCore::Element&amp;, WebCore::ParserContentPolicy&amp;&amp;, WebCore::HTMLParserOptions&amp;) + 37 (StdLibExtras.h:507) [inlined]
11  com.apple.WebCore             	0x000000011342184a WebCore::HTMLDocumentParser::HTMLDocumentParser(WebCore::DocumentFragment&amp;, WebCore::Element&amp;, WebCore::ParserContentPolicy) + 314 (HTMLDocumentParser.cpp:82)
12  com.apple.WebCore             	0x000000011341a50b WebCore::HTMLDocumentParser::HTMLDocumentParser(WebCore::DocumentFragment&amp;, WebCore::Element&amp;, WebCore::ParserContentPolicy) + 17 (HTMLDocumentParser.cpp:85) [inlined]
13  com.apple.WebCore             	0x000000011341a50b WebCore::HTMLDocumentParser::create(WebCore::DocumentFragment&amp;, WebCore::Element&amp;, WebCore::ParserContentPolicy) + 30 (HTMLDocumentParser.cpp:94) [inlined]
14  com.apple.WebCore             	0x000000011341a50b WebCore::HTMLDocumentParser::parseDocumentFragment(WTF::String const&amp;, WebCore::DocumentFragment&amp;, WebCore::Element&amp;, WebCore::ParserContentPolicy) + 59 (HTMLDocumentParser.cpp:621)
15  com.apple.WebCore             	0x00000001125077be WebCore::createFragment(WebCore::Frame&amp;, NSAttributedString*) + 708 (WebContentReaderCocoa.mm:148) [inlined]
16  com.apple.WebCore             	0x00000001125077be WebCore::createFragmentAndAddResources(WebCore::Frame&amp;, NSAttributedString*) + 926 (WebContentReaderCocoa.mm:395)
17  com.apple.WebCore             	0x000000011250c6f5 WebCore::WebContentReader::readRTF(WebCore::SharedBuffer&amp;) + 133 (WebContentReaderCocoa.mm:646)
18  com.apple.WebCore             	0x0000000112aa2892 WebCore::Pasteboard::read(WebCore::PasteboardWebContentReader&amp;, WebCore::WebContentReadingPolicy, std::__1::optional&lt;unsigned long&gt;) + 4866 (PasteboardMac.mm:493)
19  com.apple.WebCore             	0x00000001124969c6 WebCore::Editor::webContentFromPasteboard(WebCore::Pasteboard&amp;, WebCore::SimpleRange const&amp;, bool, bool&amp;) + 150 (EditorCocoa.mm:235)
20  com.apple.WebCore             	0x000000011250f033 WebCore::Editor::pasteWithPasteboard(WebCore::Pasteboard*, WTF::OptionSet&lt;WebCore::Editor::PasteOption&gt;) + 147 (EditorMac.mm:91)
21  com.apple.WebCore             	0x00000001131e6cd9 WebCore::Editor::paste(WebCore::Pasteboard&amp;, WebCore::Editor::FromMenuOrKeyBinding) + 377 (Editor.cpp:1479)
22  com.apple.WebCore             	0x00000001131e6b1f WebCore::Editor::paste(WebCore::Editor::FromMenuOrKeyBinding) + 95 (Editor.cpp:1465)
23  com.apple.WebCore             	0x0000000113208f03 WebCore::executePaste(WebCore::Frame&amp;, WebCore::Event*, WebCore::EditorCommandSource, WTF::String const&amp;) + 51 (EditorCommand.cpp:904)
24  com.apple.WebCore             	0x00000001130d70dd WebCore::Document::execCommand(WTF::String const&amp;, bool, WTF::String const&amp;) + 93 (Document.cpp:5762)
25  com.apple.WebCore             	0x0000000112386d04 WebCore::jsDocumentPrototypeFunction_execCommandBody(JSC::JSGlobalObject*, JSC::CallFrame*, WebCore::JSDocument*) + 240 (JSDocument.cpp:5858) [inlined]
26  com.apple.WebCore             	0x0000000112386d04 long long WebCore::IDLOperation&lt;WebCore::JSDocument&gt;::call&lt;&amp;(WebCore::jsDocumentPrototypeFunction_execCommandBody(JSC::JSGlobalObject*, JSC::CallFrame*, WebCore::JSDocument*)), (WebCore::CastedThisErrorBehavior)0&gt;(JSC::JSGlobalObject&amp;, JSC::CallFrame&amp;, char const*) + 419 (JSDOMOperation.h:63) [inlined]
27  com.apple.WebCore             	0x0000000112386d04 WebCore::jsDocumentPrototypeFunction_execCommand(JSC::JSGlobalObject*, JSC::CallFrame*) + 452 (JSDocument.cpp:5863)

&lt;rdar://79664201&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1772596</commentid>
    <comment_count>1</comment_count>
      <attachid>432248</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-06-25 02:30:35 -0700</bug_when>
    <thetext>Created attachment 432248
Test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1772597</commentid>
    <comment_count>2</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-06-25 02:31:48 -0700</bug_when>
    <thetext>Both reproduce with WebKitTestRunner at r279254.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1772874</commentid>
    <comment_count>3</comment_count>
      <attachid>432327</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2021-06-26 05:50:16 -0700</bug_when>
    <thetext>Created attachment 432327
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1772878</commentid>
    <comment_count>4</comment_count>
      <attachid>432328</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2021-06-26 07:38:40 -0700</bug_when>
    <thetext>Created attachment 432328
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1772893</commentid>
    <comment_count>5</comment_count>
      <attachid>432328</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-06-26 13:46:15 -0700</bug_when>
    <thetext>Comment on attachment 432328
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=432328&amp;action=review

&gt; Source/WebCore/page/DOMSelection.cpp:357
&gt; +        if (!rangeCount())
&gt; +            return Exception { InvalidStateError };

Given we had never thrown before in this case, I think it&apos;s too risky to do this.
Let&apos;s just ignore and return { } instead at least for now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1772921</commentid>
    <comment_count>6</comment_count>
      <attachid>432349</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2021-06-27 01:36:56 -0700</bug_when>
    <thetext>Created attachment 432349
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1772955</commentid>
    <comment_count>7</comment_count>
      <attachid>432349</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-06-27 13:38:14 -0700</bug_when>
    <thetext>Comment on attachment 432349
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=432349&amp;action=review

&gt; Source/WebCore/ChangeLog:11
&gt; +        Selection.extend() should throw if rangeCount is 0 [1].
&gt; +        However as a first step just make it do nothing.
&gt; +
&gt; +        Behavior matches Firefox and Chrome.

Could you explain how this relates to the actual crash we&apos;re fixing?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1773042</commentid>
    <comment_count>8</comment_count>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2021-06-28 06:10:57 -0700</bug_when>
    <thetext>Document looks like this before calling parseHTML:
*#document  0x61f00005f680 (renderer 0x61700004db00)
    HTML    0x60c0000ba4c0 (renderer 0x612000080d40)
        #text   0x60b0000fd7d0 &quot;&lt;d800&gt;&quot;
        DIV 0x60c0000bd940 (renderer 0x612000083140)
            BR  0x60c0000bddc0 (renderer 0x6110000eeb00)
            HEAD    0x60c0000ba580 (renderer 0x0)
                SCRIPT  0x610000039340 (renderer 0x0)
                    #text   0x60b0000fcee0 &quot;\n  onload = () =&gt; {\n    document.documentElement.prepend(&apos;\\ud800&apos;);\nconsole.log(document.head);\n    getSelection().collapse(document.head, 1);\n    getSelection().extend(document.head);\n    document.designMode = &apos;on&apos;;\n    document.execCommand(&apos;InsertParagraph&apos;);\n    document.execCommand(&apos;SelectAll&apos;);\n    document.execCommand(&apos;Copy&apos;);\n    document.execCommand(&apos;Paste&apos;);\n  };\n&quot;
                #text   0x60b0000fd040 &quot;\n&quot;
            BODY    0x60c0000bb000 (renderer 0x612000083a40)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1773045</commentid>
    <comment_count>9</comment_count>
      <attachid>432349</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2021-06-28 06:13:25 -0700</bug_when>
    <thetext>Comment on attachment 432349
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=432349&amp;action=review

&gt;&gt; Source/WebCore/ChangeLog:11
&gt;&gt; +        Behavior matches Firefox and Chrome.
&gt; 
&gt; Could you explain how this relates to the actual crash we&apos;re fixing?

Looking at it again, it is probably a workaround rather than a fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1773047</commentid>
    <comment_count>10</comment_count>
      <attachid>432390</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2021-06-28 06:31:07 -0700</bug_when>
    <thetext>Created attachment 432390
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1773092</commentid>
    <comment_count>11</comment_count>
      <attachid>432399</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2021-06-28 09:23:11 -0700</bug_when>
    <thetext>Created attachment 432399
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1773181</commentid>
    <comment_count>12</comment_count>
      <attachid>432399</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-06-28 13:57:37 -0700</bug_when>
    <thetext>Comment on attachment 432399
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=432399&amp;action=review

&gt; Source/WebCore/editing/cocoa/WebContentReaderCocoa.mm:149
&gt; +    // We use a fake body element here to trick the HTML parser into using the InBody insertion mode.
&gt; +    auto fakeBody = HTMLBodyElement::create(document);

This isn&apos;t really a fake element, right? It&apos;s just a dummy element to force InBody insertion mode.
Instead of adding a comment like this, give it a longer variable name like this:
auto dummyBodyToForceInBodyInsertionMode = ~</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1773184</commentid>
    <comment_count>13</comment_count>
      <attachid>432399</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-06-28 13:59:26 -0700</bug_when>
    <thetext>Comment on attachment 432399
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=432399&amp;action=review

&gt; Source/WebCore/ChangeLog:3
&gt; +        Use fake body for parseHTML call

Since this isn&apos;t a security bug, please make this patch the bug title.

&gt; Source/WebCore/ChangeLog:8
&gt; +        Use fake body for parseHTML call.

Please explain what was causing the crash &amp; how you fixed it.

&gt; LayoutTests/ChangeLog:3
&gt; +        Use fake body for parseHTML call

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1773354</commentid>
    <comment_count>14</comment_count>
      <attachid>432462</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2021-06-29 02:07:38 -0700</bug_when>
    <thetext>Created attachment 432462
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1773382</commentid>
    <comment_count>15</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-06-29 05:06:49 -0700</bug_when>
    <thetext>Committed r279371 (239237@main): &lt;https://commits.webkit.org/239237@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 432462.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>432248</attachid>
            <date>2021-06-25 02:30:35 -0700</date>
            <delta_ts>2021-06-25 02:30:35 -0700</delta_ts>
            <desc>Test</desc>
            <filename>repro_679.html</filename>
            <type>text/html</type>
            <size>318</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">PHNjcmlwdD4KICBvbmxvYWQgPSAoKSA9PiB7CiAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQu
cHJlcGVuZCgnXHVkODAwJyk7CiAgICBnZXRTZWxlY3Rpb24oKS5leHRlbmQoZG9jdW1lbnQuaGVh
ZCk7CiAgICBkb2N1bWVudC5kZXNpZ25Nb2RlID0gJ29uJzsKICAgIGRvY3VtZW50LmV4ZWNDb21t
YW5kKCdJbnNlcnRQYXJhZ3JhcGgnKTsKICAgIGRvY3VtZW50LmV4ZWNDb21tYW5kKCdTZWxlY3RB
bGwnKTsKICAgIGRvY3VtZW50LmV4ZWNDb21tYW5kKCdDb3B5Jyk7CiAgICBkb2N1bWVudC5leGVj
Q29tbWFuZCgnUGFzdGUnKTsKICB9Owo8L3NjcmlwdD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432327</attachid>
            <date>2021-06-26 05:50:16 -0700</date>
            <delta_ts>2021-06-26 07:38:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227390-20210626135015.patch</filename>
            <type>text/plain</type>
            <size>1371</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5MzA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTVhOGViYTA5NGRlM2E4
OTg1OWMzZTdhMTI0MzU4MTFkZjdmYTY3Yy4uNTFiODMwN2QwYTliYTE5MGFmNjA4NDE0YWI5NmYx
MTk0YjM3NzI0NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIxLTA2LTI2ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgTnVsbHB0ciBjcmFzaCBpbiBIVE1M
U3RhY2tJdGVtOjpjcmVhdGUgdmlhIERvY3VtZW50RnJhZ21lbnQ6OnBhcnNlSFRNTAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3MzkwCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV0lQLgorCisgICAgICAg
ICogcGFnZS9ET01TZWxlY3Rpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6RE9NU2VsZWN0aW9u
OjpleHRlbmQpOgorCiAyMDIxLTA2LTI1ICBBbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4K
IAogICAgICAgICBbTEZDXVtURkNdIFJlbW92ZSByZWR1bmRhbnQgc3RydWN0IFJlc29sdmVkSXRl
bQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uY3BwIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uY3BwCmluZGV4IDA4ZDU5NmQ0ZWI3Mjk1ZDJk
YmM2NzQ3MmJlZjYwMjQ5NWI1MmEzYmQuLmY1YThmY2FiNzdjMTMzNjkwMWM0Njk2NzQ2NThmYzRm
ZTg0MThlZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NU2VsZWN0aW9uLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVNlbGVjdGlvbi5jcHAKQEAgLTM1Myw2ICsz
NTMsOCBAQCBFeGNlcHRpb25Pcjx2b2lkPiBET01TZWxlY3Rpb246OmV4dGVuZChOb2RlJiBub2Rl
LCB1bnNpZ25lZCBvZmZzZXQpCiAgICAgICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW5kZXhT
aXplRXJyb3IgfTsKICAgICAgICAgaWYgKCFpc1ZhbGlkRm9yUG9zaXRpb24oJm5vZGUpKQogICAg
ICAgICAgICAgcmV0dXJuIHsgfTsKKyAgICAgICAgaWYgKCFyYW5nZUNvdW50KCkpCisgICAgICAg
ICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IgfTsKICAgICAgICAgZnJh
bWUtPnNlbGVjdGlvbigpLnNldEV4dGVudChtYWtlQ29udGFpbmVyT2Zmc2V0UG9zaXRpb24oJm5v
ZGUsIG9mZnNldCksIEFmZmluaXR5OjpEb3duc3RyZWFtKTsKICAgICB9CiAgICAgcmV0dXJuIHsg
fTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432328</attachid>
            <date>2021-06-26 07:38:40 -0700</date>
            <delta_ts>2021-06-27 01:36:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227390-20210626153838.patch</filename>
            <type>text/plain</type>
            <size>3669</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5MzA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTVhOGViYTA5NGRlM2E4
OTg1OWMzZTdhMTI0MzU4MTFkZjdmYTY3Yy4uOWQ5MDcwMWU4NDFjM2EwYWE2NmY0ZDRjMDlhZDIy
YzNiMTIyZTc0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIxLTA2LTI2ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgU2VsZWN0aW9uLmV4dGVuZCgpIHNo
b3VsZCB0aHJvdyBpZiByYW5nZUNvdW50IGlzIDAKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzM5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFNlbGVjdGlvbi5leHRlbmQoKSBzaG91bGQgdGhyb3cgaWYg
cmFuZ2VDb3VudCBpcyAwIFsxXS4KKworICAgICAgICBCZWhhdmlvciBtYXRjaGVzIEZpcmVmb3gg
YW5kIENocm9tZS4KKworICAgICAgICBbMV0gaHR0cHM6Ly93d3cudzMub3JnL1RSL3NlbGVjdGlv
bi1hcGkvI2RvbS1zZWxlY3Rpb24tZXh0ZW5kLgorCisgICAgICAgICogcGFnZS9ET01TZWxlY3Rp
b24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6RE9NU2VsZWN0aW9uOjpleHRlbmQpOgorCiAyMDIx
LTA2LTI1ICBBbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbTEZDXVtU
RkNdIFJlbW92ZSByZWR1bmRhbnQgc3RydWN0IFJlc29sdmVkSXRlbQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9E
T01TZWxlY3Rpb24uY3BwCmluZGV4IDA4ZDU5NmQ0ZWI3Mjk1ZDJkYmM2NzQ3MmJlZjYwMjQ5NWI1
MmEzYmQuLmY1YThmY2FiNzdjMTMzNjkwMWM0Njk2NzQ2NThmYzRmZTg0MThlZTUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NU2VsZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0RPTVNlbGVjdGlvbi5jcHAKQEAgLTM1Myw2ICszNTMsOCBAQCBFeGNlcHRpb25P
cjx2b2lkPiBET01TZWxlY3Rpb246OmV4dGVuZChOb2RlJiBub2RlLCB1bnNpZ25lZCBvZmZzZXQp
CiAgICAgICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW5kZXhTaXplRXJyb3IgfTsKICAgICAg
ICAgaWYgKCFpc1ZhbGlkRm9yUG9zaXRpb24oJm5vZGUpKQogICAgICAgICAgICAgcmV0dXJuIHsg
fTsKKyAgICAgICAgaWYgKCFyYW5nZUNvdW50KCkpCisgICAgICAgICAgICByZXR1cm4gRXhjZXB0
aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IgfTsKICAgICAgICAgZnJhbWUtPnNlbGVjdGlvbigpLnNl
dEV4dGVudChtYWtlQ29udGFpbmVyT2Zmc2V0UG9zaXRpb24oJm5vZGUsIG9mZnNldCksIEFmZmlu
aXR5OjpEb3duc3RyZWFtKTsKICAgICB9CiAgICAgcmV0dXJuIHsgfTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBkYzI3ZTI2
ZjEwOWM0ZmZjOWJhZWQ0NzQxY2RiMWMyOTViYjNiMGI1Li42ZDg2MGUzMzVlODYwODUzMjE0M2U4
ODQyNTVjNzkzNzBhOGI0YWNjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysr
IGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjEtMDYtMjYgIFJv
YiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KKworICAgICAgICBTZWxlY3Rpb24uZXh0ZW5kKCkg
c2hvdWxkIHRocm93IGlmIHJhbmdlQ291bnQgaXMgMAorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3MzkwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgQWRqdXN0IHRlc3RzIGJlY2F1c2Ugb2YgYmVoYXZpb3Ig
Y2hhbmdlLgorCisgICAgICAgICogZWRpdGluZy9leGVjQ29tbWFuZC9udWxsX2NhbGNfcHJpbWl0
aXZlX3ZhbHVlX2Zvcl9jc3NfcHJvcGVydHkuaHRtbDoKKyAgICAgICAgKiBlZGl0aW5nL2V4ZWND
b21tYW5kL3RyYW5zcG9zZS1iYWNrc2xhc2gtd2l0aC1ldWMuaHRtbDoKKwogMjAyMS0wNi0yNSAg
QXJjYWR5IEdvbGRtaW50cy1PcmxvdiAgPGFnb2xkbWludHNAaWdhbGlhLmNvbT4KIAogICAgICAg
ICBbR0xJQl0gVXBkYXRlIHRlc3QgZXhwZWN0YXRpb25zIGFmdGVyIHIyNzkyMTcKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2VkaXRpbmcvZXhlY0NvbW1hbmQvbnVsbF9jYWxjX3ByaW1pdGl2ZV92
YWx1ZV9mb3JfY3NzX3Byb3BlcnR5Lmh0bWwgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL2V4ZWNDb21t
YW5kL251bGxfY2FsY19wcmltaXRpdmVfdmFsdWVfZm9yX2Nzc19wcm9wZXJ0eS5odG1sCmluZGV4
IGI5ODg2OWI2OGJlMTZmN2EzZTI2YTM3YzRkNTBmNWVmM2MyZDk2YzUuLmNlYTdkNWNkZTM1YWVm
ZjYwMGQ5ZTVjNTU3N2NmMTIyNWYwNjdiZGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRp
bmcvZXhlY0NvbW1hbmQvbnVsbF9jYWxjX3ByaW1pdGl2ZV92YWx1ZV9mb3JfY3NzX3Byb3BlcnR5
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9leGVjQ29tbWFuZC9udWxsX2NhbGNfcHJp
bWl0aXZlX3ZhbHVlX2Zvcl9jc3NfcHJvcGVydHkuaHRtbApAQCAtMTAsNiArMTAsNyBAQCBmdW5j
dGlvbiBjc3NQcmltaXRpdmVWYWxUZXN0KCkgewogICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikK
ICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CiAKKyAgICBkb2N1bWVudC5nZXRTZWxl
Y3Rpb24oKS5jb2xsYXBzZSh4KTsKICAgICBkb2N1bWVudC5nZXRTZWxlY3Rpb24oKS5leHRlbmQo
eCk7IAogICAgIGRvY3VtZW50LmV4ZWNDb21tYW5kKCJpbnNlcnRIVE1MIiwgZmFsc2UsICJUaGUg
dGVzdCBwYXNzZXMgaWYgdGhlcmUgaXMgbm8gY3Jhc2guIik7CiB9CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9lZGl0aW5nL2V4ZWNDb21tYW5kL3RyYW5zcG9zZS1iYWNrc2xhc2gtd2l0aC1ldWMu
aHRtbCBiL0xheW91dFRlc3RzL2VkaXRpbmcvZXhlY0NvbW1hbmQvdHJhbnNwb3NlLWJhY2tzbGFz
aC13aXRoLWV1Yy5odG1sCmluZGV4IGEzOGIxZTkxNWYyODQ4MzkyYTFlNTM0OGYzYmM1M2E5M2Y4
NTdhZGIuLjA5YmNiOGE0MzcxYjlkNmUyNzMwNzJhNTk4MDllMWQwNjE1NzgwMTUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2VkaXRpbmcvZXhlY0NvbW1hbmQvdHJhbnNwb3NlLWJhY2tzbGFzaC13
aXRoLWV1Yy5odG1sCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvZXhlY0NvbW1hbmQvdHJhbnNw
b3NlLWJhY2tzbGFzaC13aXRoLWV1Yy5odG1sCkBAIC0xMSw2ICsxMSw3IEBAIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikKIGZ1bmN0aW9uIHRlc3QoKQogewogICAgIHZhciBiYWNrc2xhc2hEaXZFbGVt
ZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJhY2tzbGFzaCIpOworICAgIGdldFNlbGVj
dGlvbigpLmNvbGxhcHNlKGJhY2tzbGFzaERpdkVsZW1lbnQsIDApOwogICAgIGdldFNlbGVjdGlv
bigpLmV4dGVuZChiYWNrc2xhc2hEaXZFbGVtZW50LCAxKTsKICAgICBkb2N1bWVudC5leGVjQ29t
bWFuZCgiVHJhbnNwb3NlIik7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432349</attachid>
            <date>2021-06-27 01:36:56 -0700</date>
            <delta_ts>2021-06-28 06:31:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227390-20210627093654.patch</filename>
            <type>text/plain</type>
            <size>5218</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5MzExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDA4Y2RhYWZiMTZjYmU5
NmY4YjYwMmY1ZGQwOTljZjI4M2IzYWVjZS4uYTcxYjcyYzI2MDgyOGM1MmMwZDA3ODVkNzE3NTE0
ZjIzZTg5MTFmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIxLTA2LTI3ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgU2VsZWN0aW9uLmV4dGVuZCgpIHNo
b3VsZCBkbyBub3RoaW5nIGlmIHJhbmdlQ291bnQgaXMgMAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3MzkwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU2VsZWN0aW9uLmV4dGVuZCgpIHNob3VsZCB0aHJv
dyBpZiByYW5nZUNvdW50IGlzIDAgWzFdLgorICAgICAgICBIb3dldmVyIGFzIGEgZmlyc3Qgc3Rl
cCBqdXN0IG1ha2UgaXQgZG8gbm90aGluZy4KKworICAgICAgICBCZWhhdmlvciBtYXRjaGVzIEZp
cmVmb3ggYW5kIENocm9tZS4KKworICAgICAgICBbMV0gaHR0cHM6Ly93d3cudzMub3JnL1RSL3Nl
bGVjdGlvbi1hcGkvI2RvbS1zZWxlY3Rpb24tZXh0ZW5kLgorCisgICAgICAgICogcGFnZS9ET01T
ZWxlY3Rpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6RE9NU2VsZWN0aW9uOjpleHRlbmQpOgor
CiAyMDIxLTA2LTI2ICBKb29uZ2h1biBQYXJrICA8amg3MTgucGFya0BzYW1zdW5nLmNvbT4KIAog
ICAgICAgICBVbnJldmlld2VkLiBSZW1vdmUgdGhlIGJ1aWxkIHdhcm5pbmdzIGJlbG93IHNpbmNl
IHIyNzkwNTAuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVNlbGVjdGlvbi5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVNlbGVjdGlvbi5jcHAKaW5kZXggMDhkNTk2ZDRl
YjcyOTVkMmRiYzY3NDcyYmVmNjAyNDk1YjUyYTNiZC4uZTJhNWNkZDE1MDk4MWNhODZiNjY3ODdk
MDJiMTA5MzZjNjUyMDI5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01TZWxl
Y3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NU2VsZWN0aW9uLmNwcApAQCAt
MzUzLDYgKzM1Myw5IEBAIEV4Y2VwdGlvbk9yPHZvaWQ+IERPTVNlbGVjdGlvbjo6ZXh0ZW5kKE5v
ZGUmIG5vZGUsIHVuc2lnbmVkIG9mZnNldCkKICAgICAgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBJbmRleFNpemVFcnJvciB9OwogICAgICAgICBpZiAoIWlzVmFsaWRGb3JQb3NpdGlvbigmbm9k
ZSkpCiAgICAgICAgICAgICByZXR1cm4geyB9OworICAgICAgICAvLyBGSVhNRTogb3RoZXIgYnJv
d3NlcnMgdGhyb3cgYW4gZXhjZXB0aW9uIGhlcmUuCisgICAgICAgIGlmICghcmFuZ2VDb3VudCgp
KQorICAgICAgICAgICAgcmV0dXJuIHsgfTsKICAgICAgICAgZnJhbWUtPnNlbGVjdGlvbigpLnNl
dEV4dGVudChtYWtlQ29udGFpbmVyT2Zmc2V0UG9zaXRpb24oJm5vZGUsIG9mZnNldCksIEFmZmlu
aXR5OjpEb3duc3RyZWFtKTsKICAgICB9CiAgICAgcmV0dXJuIHsgfTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA2MWIzZTBi
ZmEyMDFjMTViNGQzNjhjMzdiZGZiMWUzYjk2NDQzMWU5Li5hMjE1Y2IzOWY2MTA5YzQyOWIwY2M0
YzIxZWU4YjE3MTYyMjY4ZDVlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysr
IGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMjEtMDYtMjcgIFJv
YiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KKworICAgICAgICBTZWxlY3Rpb24uZXh0ZW5kKCkg
c2hvdWxkIGRvIG5vdGhpbmcgaWYgcmFuZ2VDb3VudCBpcyAwCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjczOTAKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGp1c3QgdGVzdHMgYmVjYXVzZSBvZiBiZWhh
dmlvciBjaGFuZ2UuIE1ha2UgZXh0ZW5kLmh0bWwKKyAgICAgICAgdGVzdCBTZWxlY3Rpb24uZXh0
ZW5kKCkgd2hlbiByYW5nZUNvdW50IGlzIDAuCisKKyAgICAgICAgKiBlZGl0aW5nL2V4ZWNDb21t
YW5kL251bGxfY2FsY19wcmltaXRpdmVfdmFsdWVfZm9yX2Nzc19wcm9wZXJ0eS5odG1sOgorICAg
ICAgICAqIGVkaXRpbmcvZXhlY0NvbW1hbmQvdHJhbnNwb3NlLWJhY2tzbGFzaC13aXRoLWV1Yy5o
dG1sOgorICAgICAgICAqIGVkaXRpbmcvc2VsZWN0aW9uL2V4dGVuZC1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vZXh0ZW5kLmh0bWw6CisKIDIwMjEtMDYtMjYgIFNh
bSBXZWluaWcgIDx3ZWluaWdAYXBwbGUuY29tPgogCiAgICAgICAgIFtNb2Rlcm4gTWVkaWEgQ29u
dHJvbHNdIE1vZGVybiBtZWRpYSBjb250cm9scyBzaG91bGQgbm90IG5lZWQgdG8ga25vdyBhYm91
dCBzcGVjaWZpYyBwbGF0Zm9ybXMgaW4gc2hhcmVkIGNvZGUKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2VkaXRpbmcvZXhlY0NvbW1hbmQvbnVsbF9jYWxjX3ByaW1pdGl2ZV92YWx1ZV9mb3JfY3Nz
X3Byb3BlcnR5Lmh0bWwgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL2V4ZWNDb21tYW5kL251bGxfY2Fs
Y19wcmltaXRpdmVfdmFsdWVfZm9yX2Nzc19wcm9wZXJ0eS5odG1sCmluZGV4IGI5ODg2OWI2OGJl
MTZmN2EzZTI2YTM3YzRkNTBmNWVmM2MyZDk2YzUuLmNlYTdkNWNkZTM1YWVmZjYwMGQ5ZTVjNTU3
N2NmMTIyNWYwNjdiZGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRpbmcvZXhlY0NvbW1h
bmQvbnVsbF9jYWxjX3ByaW1pdGl2ZV92YWx1ZV9mb3JfY3NzX3Byb3BlcnR5Lmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvZWRpdGluZy9leGVjQ29tbWFuZC9udWxsX2NhbGNfcHJpbWl0aXZlX3ZhbHVl
X2Zvcl9jc3NfcHJvcGVydHkuaHRtbApAQCAtMTAsNiArMTAsNyBAQCBmdW5jdGlvbiBjc3NQcmlt
aXRpdmVWYWxUZXN0KCkgewogICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKICAgICAgICAgdGVz
dFJ1bm5lci5kdW1wQXNUZXh0KCk7CiAKKyAgICBkb2N1bWVudC5nZXRTZWxlY3Rpb24oKS5jb2xs
YXBzZSh4KTsKICAgICBkb2N1bWVudC5nZXRTZWxlY3Rpb24oKS5leHRlbmQoeCk7IAogICAgIGRv
Y3VtZW50LmV4ZWNDb21tYW5kKCJpbnNlcnRIVE1MIiwgZmFsc2UsICJUaGUgdGVzdCBwYXNzZXMg
aWYgdGhlcmUgaXMgbm8gY3Jhc2guIik7CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0
aW5nL2V4ZWNDb21tYW5kL3RyYW5zcG9zZS1iYWNrc2xhc2gtd2l0aC1ldWMuaHRtbCBiL0xheW91
dFRlc3RzL2VkaXRpbmcvZXhlY0NvbW1hbmQvdHJhbnNwb3NlLWJhY2tzbGFzaC13aXRoLWV1Yy5o
dG1sCmluZGV4IGEzOGIxZTkxNWYyODQ4MzkyYTFlNTM0OGYzYmM1M2E5M2Y4NTdhZGIuLjA5YmNi
OGE0MzcxYjlkNmUyNzMwNzJhNTk4MDllMWQwNjE1NzgwMTUgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2VkaXRpbmcvZXhlY0NvbW1hbmQvdHJhbnNwb3NlLWJhY2tzbGFzaC13aXRoLWV1Yy5odG1s
CisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvZXhlY0NvbW1hbmQvdHJhbnNwb3NlLWJhY2tzbGFz
aC13aXRoLWV1Yy5odG1sCkBAIC0xMSw2ICsxMSw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikK
IGZ1bmN0aW9uIHRlc3QoKQogewogICAgIHZhciBiYWNrc2xhc2hEaXZFbGVtZW50ID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImJhY2tzbGFzaCIpOworICAgIGdldFNlbGVjdGlvbigpLmNvbGxh
cHNlKGJhY2tzbGFzaERpdkVsZW1lbnQsIDApOwogICAgIGdldFNlbGVjdGlvbigpLmV4dGVuZChi
YWNrc2xhc2hEaXZFbGVtZW50LCAxKTsKICAgICBkb2N1bWVudC5leGVjQ29tbWFuZCgiVHJhbnNw
b3NlIik7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2V4dGVu
ZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9leHRlbmQtZXhw
ZWN0ZWQudHh0CmluZGV4IGZhYTg5ZmQ3MzdlODQyM2FhNjNiNWYxNTVhZDFjODkzZjZlMjEzZmEu
LjI0Y2I1Nzk3ZGUxZTljMzdiZTU3N2EzMWQ5YTRiZDkzZmQ0ODQ4ODggMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2V4dGVuZC1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vZXh0ZW5kLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsx
LDYgQEAKIGZvb2JhcmJhegorU3VjY2Vzczogd2luZG93LmdldFNlbGVjdGlvbigpIGlzIC4KK1N1
Y2Nlc3M6IHdpbmRvdy5nZXRTZWxlY3Rpb24oKSBpcyAuCiBTdWNjZXNzOiB3aW5kb3cuZ2V0U2Vs
ZWN0aW9uKCkgaXMgYXIuCiBTdWNjZXNzOiBzLmV4dGVuZChzcGFuMi5maXJzdENoaWxkLCA0KSBy
YWlzZWQgSW5kZXhTaXplRXJyb3I6IFRoZSBpbmRleCBpcyBub3QgaW4gdGhlIGFsbG93ZWQgcmFu
Z2UuLgogU3VjY2Vzczogcy5leHRlbmQoc3BhbjIuZmlyc3RDaGlsZCwgLTEpIHJhaXNlZCBJbmRl
eFNpemVFcnJvcjogVGhlIGluZGV4IGlzIG5vdCBpbiB0aGUgYWxsb3dlZCByYW5nZS4uCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9leHRlbmQuaHRtbCBiL0xheW91
dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2V4dGVuZC5odG1sCmluZGV4IGZkNWNjYzQyZjgwNTlh
MTVjNTVhZjhiNjk5YTkyYjAxN2JlYWZhMjguLjJjMGE0OTQ1NjY3YmFhNWYzNzc2MjRhMWYyNzA4
ZTdiNGE0MTFmZjUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2V4
dGVuZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2V4dGVuZC5odG1s
CkBAIC0zNyw2ICszNyw5IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKIAogdmFyIHIgPSBkb2N1
bWVudC5jcmVhdGVSYW5nZSgpOwogCitzaG91bGRCZSgnd2luZG93LmdldFNlbGVjdGlvbigpJywg
JycpOworcy5leHRlbmQoc3BhbjIuZmlyc3RDaGlsZCwgMyk7CitzaG91bGRCZSgnd2luZG93Lmdl
dFNlbGVjdGlvbigpJywgJycpOwogCiByLnNldFN0YXJ0KHNwYW4yLmZpcnN0Q2hpbGQsIDEpOwog
ci5zZXRFbmQoc3BhbjIuZmlyc3RDaGlsZCwgMSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432390</attachid>
            <date>2021-06-28 06:31:07 -0700</date>
            <delta_ts>2021-06-28 09:23:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227390-20210628143106.patch</filename>
            <type>text/plain</type>
            <size>1889</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5MzIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWJkMjIxNGVjMDdhYTkz
ZmI2ZjYwNTAwMTJmMDMxZTU5NjM0Nzc4My4uZTkzZTY0ZjAxNzk5MGQxNDNkNWRlMWQ1MDA5YTYz
ODllMzBlODcwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIxLTA2LTI4ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgVXNlIGZha2UgYm9keSBmb3IgcGFy
c2VIVE1MIGNhbGwKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIyNzM5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFVzZSBmYWtlIGJvZHkgZm9yIHBhcnNlSFRNTCBjYWxsLgorCisgICAgICAgICogZWRpdGlu
Zy9jb2NvYS9XZWJDb250ZW50UmVhZGVyQ29jb2EubW06CisgICAgICAgIChXZWJDb3JlOjpjcmVh
dGVGcmFnbWVudCk6CisKIDIwMjEtMDYtMjcgIEplYW4tWXZlcyBBdmVuYXJkICA8anlhQGFwcGxl
LmNvbT4KIAogICAgICAgICBOb3QgYWxsIHVzZXMgb2YgQXVkaW9Ub29sYm94IGZyYW1ld29yayB1
c2Ugc29mdCBsaW5raW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29h
L1dlYkNvbnRlbnRSZWFkZXJDb2NvYS5tbSBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvY29jb2Ev
V2ViQ29udGVudFJlYWRlckNvY29hLm1tCmluZGV4IDk5MmY4NDgxZTEyZGU1OWVmMGRkYzczMDBh
OWQ3NWEwNmIxNTBjNGUuLjQzNDk0N2E2ZDI3YzUxZjk2MWM4Y2Y5NmQ3NTdiMGNjZGI0YTY5MTQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvY29jb2EvV2ViQ29udGVudFJlYWRl
ckNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvY29jb2EvV2ViQ29udGVudFJl
YWRlckNvY29hLm1tCkBAIC0xNDUsNyArMTQ1LDkgQEAgc3RhdGljIEZyYWdtZW50QW5kUmVzb3Vy
Y2VzIGNyZWF0ZUZyYWdtZW50KEZyYW1lJiBmcmFtZSwgTlNBdHRyaWJ1dGVkU3RyaW5nICpzdHIK
ICAgICBOU0FycmF5ICpzdWJyZXNvdXJjZXMgPSBuaWw7CiAgICAgTlNTdHJpbmcgKmZyYWdtZW50
U3RyaW5nID0gW3N0cmluZyBfaHRtbERvY3VtZW50RnJhZ21lbnRTdHJpbmc6TlNNYWtlUmFuZ2Uo
MCwgW3N0cmluZyBsZW5ndGhdKSBkb2N1bWVudEF0dHJpYnV0ZXM6YXR0cmlidXRlc0ZvckF0dHJp
YnV0ZWRTdHJpbmdDb252ZXJzaW9uKCkgc3VicmVzb3VyY2VzOiZzdWJyZXNvdXJjZXNdOwogICAg
IGF1dG8gZnJhZ21lbnQgPSBEb2N1bWVudEZyYWdtZW50OjpjcmVhdGUoZG9jdW1lbnQpOwotICAg
IGZyYWdtZW50LT5wYXJzZUhUTUwoZnJhZ21lbnRTdHJpbmcsIGRvY3VtZW50LmJvZHkoKSwgRGlz
YWxsb3dTY3JpcHRpbmdBbmRQbHVnaW5Db250ZW50KTsKKyAgICAvLyBXZSB1c2UgYSBmYWtlIGJv
ZHkgZWxlbWVudCBoZXJlIHRvIHRyaWNrIHRoZSBIVE1MIHBhcnNlciBpbnRvIHVzaW5nIHRoZSBJ
bkJvZHkgaW5zZXJ0aW9uIG1vZGUuCisgICAgYXV0byBmYWtlQm9keSA9IEhUTUxCb2R5RWxlbWVu
dDo6Y3JlYXRlKGRvY3VtZW50KTsKKyAgICBmcmFnbWVudC0+cGFyc2VIVE1MKGZyYWdtZW50U3Ry
aW5nLCBmYWtlQm9keS5wdHIoKSwgRGlzYWxsb3dTY3JpcHRpbmdBbmRQbHVnaW5Db250ZW50KTsK
IAogICAgIHJlc3VsdC5mcmFnbWVudCA9IFdURk1vdmUoZnJhZ21lbnQpOwogICAgIGZvciAoV2Vi
QXJjaGl2ZVJlc291cmNlRnJvbU5TQXR0cmlidXRlZFN0cmluZyAqcmVzb3VyY2UgaW4gc3VicmVz
b3VyY2VzKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432399</attachid>
            <date>2021-06-28 09:23:11 -0700</date>
            <delta_ts>2021-06-29 02:07:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227390-20210628172310.patch</filename>
            <type>text/plain</type>
            <size>4104</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5MzM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWIxYWU0ZTg4Yjg0ZWZh
NTQ2NGFiOGMxZTZhZDhkYzI4MTM2ZjM2Zi4uYmI5ZWRmZDRkYTMwYjkyM2Y4YjViMjVhMmRlZWE1
NGYxYjAyZjY3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDIxLTA2LTI4ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgVXNlIGZha2UgYm9keSBmb3IgcGFy
c2VIVE1MIGNhbGwKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIyNzM5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFVzZSBmYWtlIGJvZHkgZm9yIHBhcnNlSFRNTCBjYWxsLgorCisgICAgICAgIFRlc3Q6IGVk
aXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1jcmVhdGUtZnJhZ21lbnQtY3Jhc2guaHRtbAorCisgICAg
ICAgICogZWRpdGluZy9jb2NvYS9XZWJDb250ZW50UmVhZGVyQ29jb2EubW06CisgICAgICAgIChX
ZWJDb3JlOjpjcmVhdGVGcmFnbWVudCk6CisKIDIwMjEtMDYtMjggIEplYW4tWXZlcyBBdmVuYXJk
ICA8anlhQGFwcGxlLmNvbT4KIAogICAgICAgICBOb3QgYWxsIHVzZXMgb2YgQXVkaW9Ub29sYm94
IGZyYW1ld29yayB1c2Ugc29mdCBsaW5raW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9l
ZGl0aW5nL2NvY29hL1dlYkNvbnRlbnRSZWFkZXJDb2NvYS5tbSBiL1NvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvY29jb2EvV2ViQ29udGVudFJlYWRlckNvY29hLm1tCmluZGV4IDk5MmY4NDgxZTEyZGU1
OWVmMGRkYzczMDBhOWQ3NWEwNmIxNTBjNGUuLjQzNDk0N2E2ZDI3YzUxZjk2MWM4Y2Y5NmQ3NTdi
MGNjZGI0YTY5MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvY29jb2EvV2Vi
Q29udGVudFJlYWRlckNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvY29jb2Ev
V2ViQ29udGVudFJlYWRlckNvY29hLm1tCkBAIC0xNDUsNyArMTQ1LDkgQEAgc3RhdGljIEZyYWdt
ZW50QW5kUmVzb3VyY2VzIGNyZWF0ZUZyYWdtZW50KEZyYW1lJiBmcmFtZSwgTlNBdHRyaWJ1dGVk
U3RyaW5nICpzdHIKICAgICBOU0FycmF5ICpzdWJyZXNvdXJjZXMgPSBuaWw7CiAgICAgTlNTdHJp
bmcgKmZyYWdtZW50U3RyaW5nID0gW3N0cmluZyBfaHRtbERvY3VtZW50RnJhZ21lbnRTdHJpbmc6
TlNNYWtlUmFuZ2UoMCwgW3N0cmluZyBsZW5ndGhdKSBkb2N1bWVudEF0dHJpYnV0ZXM6YXR0cmli
dXRlc0ZvckF0dHJpYnV0ZWRTdHJpbmdDb252ZXJzaW9uKCkgc3VicmVzb3VyY2VzOiZzdWJyZXNv
dXJjZXNdOwogICAgIGF1dG8gZnJhZ21lbnQgPSBEb2N1bWVudEZyYWdtZW50OjpjcmVhdGUoZG9j
dW1lbnQpOwotICAgIGZyYWdtZW50LT5wYXJzZUhUTUwoZnJhZ21lbnRTdHJpbmcsIGRvY3VtZW50
LmJvZHkoKSwgRGlzYWxsb3dTY3JpcHRpbmdBbmRQbHVnaW5Db250ZW50KTsKKyAgICAvLyBXZSB1
c2UgYSBmYWtlIGJvZHkgZWxlbWVudCBoZXJlIHRvIHRyaWNrIHRoZSBIVE1MIHBhcnNlciBpbnRv
IHVzaW5nIHRoZSBJbkJvZHkgaW5zZXJ0aW9uIG1vZGUuCisgICAgYXV0byBmYWtlQm9keSA9IEhU
TUxCb2R5RWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50KTsKKyAgICBmcmFnbWVudC0+cGFyc2VIVE1M
KGZyYWdtZW50U3RyaW5nLCBmYWtlQm9keS5wdHIoKSwgRGlzYWxsb3dTY3JpcHRpbmdBbmRQbHVn
aW5Db250ZW50KTsKIAogICAgIHJlc3VsdC5mcmFnbWVudCA9IFdURk1vdmUoZnJhZ21lbnQpOwog
ICAgIGZvciAoV2ViQXJjaGl2ZVJlc291cmNlRnJvbU5TQXR0cmlidXRlZFN0cmluZyAqcmVzb3Vy
Y2UgaW4gc3VicmVzb3VyY2VzKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGY5NjJlYzBiOWI5ZjU4NmY0MGZhYjY5NjMxZjlm
Y2ZjYzJmNGExZGEuLjRlNzk2ZDAxNzJkZWRlMDc4NzhiNDE3Y2EwYmVmOTkwYzhlZWVjN2IgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMS0wNi0yOCAgUm9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEu
Y29tPgorCisgICAgICAgIFVzZSBmYWtlIGJvZHkgZm9yIHBhcnNlSFRNTCBjYWxsCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjczOTAKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgdGVzdCBmb3IgdGhp
cy4KKworICAgICAgICAqIGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1jcmVhdGUtZnJhZ21lbnQt
Y3Jhc2gtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL3Bhc3RlYm9hcmQv
cGFzdGUtY3JlYXRlLWZyYWdtZW50LWNyYXNoLmh0bWw6IEFkZGVkLgorCiAyMDIxLTA2LTI3ICBB
bGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbTEZDXVtURkNdIEFkZCBz
dXBwb3J0IGZvciBzaHJpbmtpbmcgb3Zlci1jb25zdHJhaW5lZCBjb2x1bW5zIGJhc2VkIG9uIHRo
ZSB3aWR0aCB0eXBlIHByaW9yaXR5IGxpc3QKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2VkaXRp
bmcvcGFzdGVib2FyZC9wYXN0ZS1jcmVhdGUtZnJhZ21lbnQtY3Jhc2gtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLWNyZWF0ZS1mcmFnbWVudC1jcmFz
aC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGQ4ODYzNGIzYmVkMThhZmI5ZGYyNzc0YzRmZmQ3
OTk1NmNjNjRiNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVi
b2FyZC9wYXN0ZS1jcmVhdGUtZnJhZ21lbnQtY3Jhc2gtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEg
QEAKK1Rlc3QgcGFzc2VzIGlmIGl0IGRvZXMgbm90IGNyYXNoCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtY3JlYXRlLWZyYWdtZW50LWNyYXNoLmh0bWwg
Yi9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtY3JlYXRlLWZyYWdtZW50LWNy
YXNoLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uZGE0YmI1ZjQ0ZjgyMjE4MmNhNWEyN2E0NjUxYWYxMDAzMTdh
Zjc2NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9w
YXN0ZS1jcmVhdGUtZnJhZ21lbnQtY3Jhc2guaHRtbApAQCAtMCwwICsxLDIxIEBACis8c2NyaXB0
PgorICBvbmxvYWQgPSAoKSA9PiB7CisgICAgaWYgKCF3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAg
IHJldHVybjsKKyAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICB0ZXN0UnVubmVy
LmR1bXBBc1RleHQoKTsKKyAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQucHJlcGVuZCgnXHVk
ODAwJyk7CisgICAgZ2V0U2VsZWN0aW9uKCkuY29sbGFwc2UoZG9jdW1lbnQuaGVhZCwgMSk7Cisg
ICAgZ2V0U2VsZWN0aW9uKCkuZXh0ZW5kKGRvY3VtZW50LmhlYWQpOworICAgIGRvY3VtZW50LmRl
c2lnbk1vZGUgPSAnb24nOworICAgIGRvY3VtZW50LmV4ZWNDb21tYW5kKCdJbnNlcnRQYXJhZ3Jh
cGgnKTsKKyAgICBkb2N1bWVudC5leGVjQ29tbWFuZCgnU2VsZWN0QWxsJyk7CisgICAgZG9jdW1l
bnQuZXhlY0NvbW1hbmQoJ0NvcHknKTsKKyAgICBkb2N1bWVudC5leGVjQ29tbWFuZCgnUGFzdGUn
KTsKKyAgICBzZXRUaW1lb3V0KCgpID0+IHsKKyAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVt
ZW50LmlubmVySFRNTCA9ICJUZXN0IHBhc3NlcyBpZiBpdCBkb2VzIG5vdCBjcmFzaCI7CisgICAg
ICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0pOworICB9OworPC9zY3JpcHQ+CisK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432462</attachid>
            <date>2021-06-29 02:07:38 -0700</date>
            <delta_ts>2021-06-29 05:06:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227390-20210629100737.patch</filename>
            <type>text/plain</type>
            <size>4347</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5MzY4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzI4NTQ4MGMxOWZjY2Ri
OGY0YzY4YmIyOGZhOTY2OWFkOWVjOThmZS4uNTgyODc5ZTViNjE5MDg2NDE2ZDU1NjdiOWNkMzg3
ZWRlODdlOTkwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIxLTA2LTI5ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgTnVsbHB0ciBjcmFzaCBpbiBIVE1M
U3RhY2tJdGVtOjpjcmVhdGUgdmlhIERvY3VtZW50RnJhZ21lbnQ6OnBhcnNlSFRNTAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3MzkwCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgUnlvc3VrZSBOaXdhLgorCisgICAgICAgIERPTSBtYW5pcHVsYXRpb24g
Y2FuIG1lYW4gZG9jdW1lbnQuYm9keSgpIGNhbiByZXR1cm4gbnVsbCwgY2F1c2luZyB0aGUKKyAg
ICAgICAgY3Jhc2gvQVNTRVJUIGluIERvY3VtZW50RnJhZ21lbnQ6OnBhcnNlSFRNTCBpbiB0aGUg
dGVzdCBjYXNlLiBTaW5jZSB0aGUKKyAgICAgICAgb25seSB1c2Ugb2YgaXQgd2FzIHRvIGZvcmNl
IEluQm9keSBpbnNlcnRpb24gbW9kZSwgaW5zdGVhZCB1c2UgYSBmYWtlIGJvZHkgZWxlbWVudC4K
KworICAgICAgICBUZXN0OiBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtY3JlYXRlLWZyYWdtZW50
LWNyYXNoLmh0bWwKKworICAgICAgICAqIGVkaXRpbmcvY29jb2EvV2ViQ29udGVudFJlYWRlckNv
Y29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlRnJhZ21lbnQpOgorCiAyMDIxLTA2LTI5
ICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5jb20+CiAKICAgICAgICAgT0VTX3Rl
eHR1cmVfZmxvYXQgc2hvdWxkIGltcGxpY2l0bHkgZW5hYmxlIEVYVF9mbG9hdF9ibGVuZApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9XZWJDb250ZW50UmVhZGVyQ29j
b2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL1dlYkNvbnRlbnRSZWFkZXJDb2Nv
YS5tbQppbmRleCA5OTJmODQ4MWUxMmRlNTllZjBkZGM3MzAwYTlkNzVhMDZiMTUwYzRlLi4zNDU1
ZDYzNjUwN2Y0ZjBiOWFjNTE5ZGRlN2JmNjYxNmRkZDk5NWE4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9lZGl0aW5nL2NvY29hL1dlYkNvbnRlbnRSZWFkZXJDb2NvYS5tbQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL1dlYkNvbnRlbnRSZWFkZXJDb2NvYS5tbQpAQCAtMTQ1
LDcgKzE0NSw4IEBAIHN0YXRpYyBGcmFnbWVudEFuZFJlc291cmNlcyBjcmVhdGVGcmFnbWVudChG
cmFtZSYgZnJhbWUsIE5TQXR0cmlidXRlZFN0cmluZyAqc3RyCiAgICAgTlNBcnJheSAqc3VicmVz
b3VyY2VzID0gbmlsOwogICAgIE5TU3RyaW5nICpmcmFnbWVudFN0cmluZyA9IFtzdHJpbmcgX2h0
bWxEb2N1bWVudEZyYWdtZW50U3RyaW5nOk5TTWFrZVJhbmdlKDAsIFtzdHJpbmcgbGVuZ3RoXSkg
ZG9jdW1lbnRBdHRyaWJ1dGVzOmF0dHJpYnV0ZXNGb3JBdHRyaWJ1dGVkU3RyaW5nQ29udmVyc2lv
bigpIHN1YnJlc291cmNlczomc3VicmVzb3VyY2VzXTsKICAgICBhdXRvIGZyYWdtZW50ID0gRG9j
dW1lbnRGcmFnbWVudDo6Y3JlYXRlKGRvY3VtZW50KTsKLSAgICBmcmFnbWVudC0+cGFyc2VIVE1M
KGZyYWdtZW50U3RyaW5nLCBkb2N1bWVudC5ib2R5KCksIERpc2FsbG93U2NyaXB0aW5nQW5kUGx1
Z2luQ29udGVudCk7CisgICAgYXV0byBkdW1teUJvZHlUb0ZvcmNlSW5Cb2R5SW5zZXJ0aW9uTW9k
ZSA9IEhUTUxCb2R5RWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50KTsKKyAgICBmcmFnbWVudC0+cGFy
c2VIVE1MKGZyYWdtZW50U3RyaW5nLCBkdW1teUJvZHlUb0ZvcmNlSW5Cb2R5SW5zZXJ0aW9uTW9k
ZS5wdHIoKSwgRGlzYWxsb3dTY3JpcHRpbmdBbmRQbHVnaW5Db250ZW50KTsKIAogICAgIHJlc3Vs
dC5mcmFnbWVudCA9IFdURk1vdmUoZnJhZ21lbnQpOwogICAgIGZvciAoV2ViQXJjaGl2ZVJlc291
cmNlRnJvbU5TQXR0cmlidXRlZFN0cmluZyAqcmVzb3VyY2UgaW4gc3VicmVzb3VyY2VzKQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IDQ0M2YxYjY2ZDZhZTliNDJlOGY2ODg2ZGZmNzI4Zjg4ZDUyZTBjZmIuLmUxNDUyMzkxNjFl
MmNlY2RlNzdkM2FiYjNlYTkyMjc0ZTc0YWY3OGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0No
YW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAy
MS0wNi0yOSAgUm9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgorCisgICAgICAgIE51bGxwdHIg
Y3Jhc2ggaW4gSFRNTFN0YWNrSXRlbTo6Y3JlYXRlIHZpYSBEb2N1bWVudEZyYWdtZW50OjpwYXJz
ZUhUTUwKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIy
NzM5MAorCisgICAgICAgIFJldmlld2VkIGJ5IFJ5b3N1a2UgTml3YS4KKworICAgICAgICBBZGQg
dGVzdCBmb3IgdGhpcy4KKworICAgICAgICAqIGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1jcmVh
dGUtZnJhZ21lbnQtY3Jhc2gtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5n
L3Bhc3RlYm9hcmQvcGFzdGUtY3JlYXRlLWZyYWdtZW50LWNyYXNoLmh0bWw6IEFkZGVkLgorCiAy
MDIxLTA2LTI5ICBNYXJ0aW4gUm9iaW5zb24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KIAogICAg
ICAgICBDU1Mgc2Nyb2xsIHNuYXAgc2hvdWxkIGFsbG93IHNjcm9sbGluZyB0byB0aGUgbWlkZGxl
IG9mIHNuYXAgYXJlYXMgdGhhdCBvdmVyZmxvdyB0aGUgc25hcHBvcnQKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1jcmVhdGUtZnJhZ21lbnQtY3Jhc2gt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLWNyZWF0
ZS1mcmFnbWVudC1jcmFzaC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGQ4ODYzNGIzYmVkMThh
ZmI5ZGYyNzc0YzRmZmQ3OTk1NmNjNjRiNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2VkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1jcmVhdGUtZnJhZ21lbnQtY3Jhc2gtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEgQEAKK1Rlc3QgcGFzc2VzIGlmIGl0IGRvZXMgbm90IGNyYXNoCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtY3JlYXRlLWZyYWdt
ZW50LWNyYXNoLmh0bWwgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtY3Jl
YXRlLWZyYWdtZW50LWNyYXNoLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZGE0YmI1ZjQ0ZjgyMjE4MmNhNWEy
N2E0NjUxYWYxMDAzMTdhZjc2NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2VkaXRp
bmcvcGFzdGVib2FyZC9wYXN0ZS1jcmVhdGUtZnJhZ21lbnQtY3Jhc2guaHRtbApAQCAtMCwwICsx
LDIxIEBACis8c2NyaXB0PgorICBvbmxvYWQgPSAoKSA9PiB7CisgICAgaWYgKCF3aW5kb3cudGVz
dFJ1bm5lcikKKyAgICAgIHJldHVybjsKKyAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsK
KyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1l
bnQucHJlcGVuZCgnXHVkODAwJyk7CisgICAgZ2V0U2VsZWN0aW9uKCkuY29sbGFwc2UoZG9jdW1l
bnQuaGVhZCwgMSk7CisgICAgZ2V0U2VsZWN0aW9uKCkuZXh0ZW5kKGRvY3VtZW50LmhlYWQpOwor
ICAgIGRvY3VtZW50LmRlc2lnbk1vZGUgPSAnb24nOworICAgIGRvY3VtZW50LmV4ZWNDb21tYW5k
KCdJbnNlcnRQYXJhZ3JhcGgnKTsKKyAgICBkb2N1bWVudC5leGVjQ29tbWFuZCgnU2VsZWN0QWxs
Jyk7CisgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ0NvcHknKTsKKyAgICBkb2N1bWVudC5leGVj
Q29tbWFuZCgnUGFzdGUnKTsKKyAgICBzZXRUaW1lb3V0KCgpID0+IHsKKyAgICAgICAgZG9jdW1l
bnQuZG9jdW1lbnRFbGVtZW50LmlubmVySFRNTCA9ICJUZXN0IHBhc3NlcyBpZiBpdCBkb2VzIG5v
dCBjcmFzaCI7CisgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0pOworICB9
OworPC9zY3JpcHQ+CisK
</data>

          </attachment>
      

    </bug>

</bugzilla>