<?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>210036</bug_id>
          
          <creation_ts>2020-04-05 13:35:30 -0700</creation_ts>
          <short_desc>Use GlobalFrameIdentifier in NavigationAction</short_desc>
          <delta_ts>2020-04-07 00:57:14 -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>New Bugs</component>
          <version>Safari Technology Preview</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="Rob Buis">rbuis</reporter>
          <assigned_to name="Rob Buis">rbuis</assigned_to>
          <cc>cdumez</cc>
    
    <cc>darin</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>japhet</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1637941</commentid>
    <comment_count>0</comment_count>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-04-05 13:35:30 -0700</bug_when>
    <thetext>Use GlobalFrameIdentifier in NavigationAction rather adding yet another custom data type.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1637942</commentid>
    <comment_count>1</comment_count>
      <attachid>395523</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-04-05 13:37:55 -0700</bug_when>
    <thetext>Created attachment 395523
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1637949</commentid>
    <comment_count>2</comment_count>
      <attachid>395527</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-04-05 14:17:16 -0700</bug_when>
    <thetext>Created attachment 395527
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1637965</commentid>
    <comment_count>3</comment_count>
      <attachid>395527</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-04-05 15:06:57 -0700</bug_when>
    <thetext>Comment on attachment 395527
Patch

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

Some comments, not things you really must do, but all a good idea.

&gt; Source/WebCore/loader/NavigationAction.cpp:48
&gt; -    , m_pageIDAndFrameIDPair { document.frame() ? std::make_pair(document.frame()-&gt;loader().client().pageID().valueOr(PageIdentifier { }), document.frame()-&gt;loader().client().frameID().valueOr(FrameIdentifier { })) : std::make_pair&lt;PageIdentifier, FrameIdentifier&gt;({ }, { }) }
&gt;  {
&gt; +    if (document.frame()) {
&gt; +        m_globalFrameIdentifier.pageID = document.frame()-&gt;loader().client().pageID().valueOr(PageIdentifier { });
&gt; +        m_globalFrameIdentifier.frameID = document.frame()-&gt;loader().client().frameID().valueOr(FrameIdentifier { });
&gt; +    }

Would be nice to do this with construction, not assignment. Could make a helper function or use a lambda.

Would also be nice to refactor not to repeat document.frame() and document.frame()-&gt;loader().client(). Should also investigate if we can just pass { } to valueOr without repeating the type.

&gt; Source/WebCore/loader/NavigationAction.h:67
&gt;      class Requester {

For future refinement: This seems much more like a struct than a class to me. As long as we pass a const Requester around, that protects us against things being changed. And then there’s no need to have both function and data members for each thing.

&gt; Source/WebCore/loader/NavigationAction.h:74
&gt; +        PageIdentifier pageID() const { return m_globalFrameIdentifier.pageID; }
&gt; +        FrameIdentifier frameID() const { return m_globalFrameIdentifier.frameID; }

Consider eliminating these getters and having a GlobalFrameIdentifier getter instead. Unless it makes the code significantly uglier at the call sites.

&gt; Source/WebCore/loader/NavigationAction.h:77
&gt;          RefPtr&lt;SecurityOrigin&gt; m_origin;

This should probably be Ref&lt;&gt; instead of RefPtr&lt;&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638185</commentid>
    <comment_count>4</comment_count>
      <attachid>395589</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-04-06 11:09:34 -0700</bug_when>
    <thetext>Created attachment 395589
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638190</commentid>
    <comment_count>5</comment_count>
      <attachid>395589</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-04-06 11:15:45 -0700</bug_when>
    <thetext>Comment on attachment 395589
Patch

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

&gt; Source/WebCore/loader/NavigationAction.h:71
&gt; +        WEBCORE_EXPORT Requester(const Requester&amp;);
&gt; +        Requester&amp; operator=(const Requester&amp;);

Would also be nice to add the move constructor and assignment operator for efficiency, otherwise we will copy even when in move contexts.

    Requester(Requester&amp;&amp;) = default;
    Requester&amp; operator=(Requester&amp;&amp;) = default;

&gt; Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:948
&gt; +    if (const auto&amp; pageID = requester.globalFrameIdentifier().pageID) {

I wouldn’t have bothered with the const here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638191</commentid>
    <comment_count>6</comment_count>
      <attachid>395589</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-04-06 11:16:25 -0700</bug_when>
    <thetext>Comment on attachment 395589
Patch

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

&gt; Source/WebCore/loader/NavigationAction.cpp:68
&gt; +NavigationAction::Requester::Requester(const Requester&amp; other)
&gt; +    : m_url(other.m_url)
&gt; +    , m_origin(other.m_origin.copyRef())
&gt; +    , m_globalFrameIdentifier(other.m_globalFrameIdentifier)
&gt; +{
&gt; +}
&gt; +
&gt; +NavigationAction::Requester&amp; NavigationAction::Requester::operator=(const Requester&amp; other)
&gt;  {
&gt; +    m_url = other.m_url;
&gt; +    m_origin = other.m_origin.copyRef();
&gt; +    m_globalFrameIdentifier = other.m_globalFrameIdentifier;
&gt; +    return *this;
&gt;  }

Looks like making this use Ref ruined everything! The fact that you can’t copy a Ref is starting to be more annoying than helpful.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638194</commentid>
    <comment_count>7</comment_count>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-04-06 11:18:04 -0700</bug_when>
    <thetext>Should I go back to RefPtr? It does seem to add a lot of complexity when adding Ref here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638204</commentid>
    <comment_count>8</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-04-06 11:28:37 -0700</bug_when>
    <thetext>(In reply to Rob Buis from comment #7)
&gt; Should I go back to RefPtr? It does seem to add a lot of complexity when
&gt; adding Ref here.

I think so.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638269</commentid>
    <comment_count>9</comment_count>
      <attachid>395608</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-04-06 13:15:14 -0700</bug_when>
    <thetext>Created attachment 395608
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638468</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-04-06 23:59:09 -0700</bug_when>
    <thetext>ChangeLog entry in Source/WebKit/ChangeLog contains OOPS!.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638471</commentid>
    <comment_count>11</comment_count>
      <attachid>395656</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-04-07 00:20:53 -0700</bug_when>
    <thetext>Created attachment 395656
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638474</commentid>
    <comment_count>12</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-04-07 00:56:02 -0700</bug_when>
    <thetext>Committed r259629: &lt;https://trac.webkit.org/changeset/259629&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 395656.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638475</commentid>
    <comment_count>13</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-04-07 00:57:14 -0700</bug_when>
    <thetext>&lt;rdar://problem/61381656&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395523</attachid>
            <date>2020-04-05 13:37:55 -0700</date>
            <delta_ts>2020-04-05 14:17:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210036-20200405223754.patch</filename>
            <type>text/plain</type>
            <size>4179</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NTQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTg4MjkyYTkyZTgyNWZm
NzQwNTIxODMwMzkzODJiMWMzZmQ2ZTkzNS4uODYyMmU5MzQ3ZjhiMWFiZjcwY2E2Y2UxYjU0M2Jj
MTIyMGU4NjZhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIwLTA0LTA1ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgVXNlIEdsb2JhbEZyYW1lSWRlbnRp
ZmllciBpbiBOYXZpZ2F0aW9uQWN0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTAwMzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBVc2UgR2xvYmFsRnJhbWVJZGVudGlmaWVyIGluIE5hdmlnYXRpb25B
Y3Rpb24gcmF0aGVyIHRoYW4gYWRkaW5nCisgICAgICAgIHlldCBhbm90aGVyIGN1c3RvbSBkYXRh
IHR5cGUuCisKKyAgICAgICAgKiBsb2FkZXIvTmF2aWdhdGlvbkFjdGlvbi5jcHA6CisgICAgICAg
ICogbG9hZGVyL05hdmlnYXRpb25BY3Rpb24uaDoKKyAgICAgICAgKFdlYkNvcmU6Ok5hdmlnYXRp
b25BY3Rpb246OlJlcXVlc3Rlcjo6cGFnZUlEIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6Ok5h
dmlnYXRpb25BY3Rpb246OlJlcXVlc3Rlcjo6ZnJhbWVJRCBjb25zdCk6CisKKzIwMjAtMDQtMDUg
IFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KKworICAgICAgICBNb3ZlIFVSTCBzY2hlbWUg
Y2hlY2sgdG8gTmV0d29ya0xvYWRDaGVja2VyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xOTE5MjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBXSVAuCisKKyAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIu
Y3BwOgorICAgICAgICAqIGxvYWRlci9OYXZpZ2F0aW9uQWN0aW9uLmNwcDoKKyAgICAgICAgKiBs
b2FkZXIvTmF2aWdhdGlvbkFjdGlvbi5oOgorICAgICAgICAoV2ViQ29yZTo6TmF2aWdhdGlvbkFj
dGlvbjo6UmVxdWVzdGVyOjpwYWdlSUQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TmF2aWdh
dGlvbkFjdGlvbjo6UmVxdWVzdGVyOjpmcmFtZUlEIGNvbnN0KToKKwogMjAyMC0wNC0wNCAgUm9i
IEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFJlbW92ZSBMb2NrSGlzdG9yeSBw
YXJhbWV0ZXIgZnJvbSBsb2FkV2l0aE5hdmlnYXRpb25BY3Rpb24KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uQWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9OYXZpZ2F0aW9uQWN0aW9uLmNwcAppbmRleCBiZDczOGUwODk1N2UyZmQ4NGRhMDU1YWI0
NTNlMWE0M2UwYjI4OGRjLi44MzJhYjA1YzI2MTdkODVhZmIxNDRkNmVlNDM4MmZiNGJhODE4MTg5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvbkFjdGlvbi5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25BY3Rpb24uY3BwCkBAIC00MSw4
ICs0MSwxMSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBOYXZpZ2F0aW9uQWN0aW9uOjpSZXF1ZXN0
ZXI6OlJlcXVlc3Rlcihjb25zdCBEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAgOiBtX3VybCB7IFVS
TCB7IGRvY3VtZW50LnVybCgpIH0gfQogICAgICwgbV9vcmlnaW4geyBtYWtlUmVmUHRyKGRvY3Vt
ZW50LnNlY3VyaXR5T3JpZ2luKCkpIH0KLSAgICAsIG1fcGFnZUlEQW5kRnJhbWVJRFBhaXIgeyBk
b2N1bWVudC5mcmFtZSgpID8gc3RkOjptYWtlX3BhaXIoZG9jdW1lbnQuZnJhbWUoKS0+bG9hZGVy
KCkuY2xpZW50KCkucGFnZUlEKCkudmFsdWVPcihQYWdlSWRlbnRpZmllciB7IH0pLCBkb2N1bWVu
dC5mcmFtZSgpLT5sb2FkZXIoKS5jbGllbnQoKS5mcmFtZUlEKCkudmFsdWVPcihGcmFtZUlkZW50
aWZpZXIgeyB9KSkgOiBzdGQ6Om1ha2VfcGFpcjxQYWdlSWRlbnRpZmllciwgRnJhbWVJZGVudGlm
aWVyPih7IH0sIHsgfSkgfQogeworICAgIGlmIChkb2N1bWVudC5mcmFtZSgpKSB7CisgICAgICAg
IG1fZ2xvYmFsRnJhbWVJZGVudGlmaWVyLnBhZ2VJRCA9IGRvY3VtZW50LmZyYW1lKCktPmxvYWRl
cigpLmNsaWVudCgpLnBhZ2VJRCgpLnZhbHVlT3IoUGFnZUlkZW50aWZpZXIgeyB9KTsKKyAgICAg
ICAgbV9nbG9iYWxGcmFtZUlkZW50aWZpZXIuZnJhbWVJRCA9IGRvY3VtZW50LmZyYW1lKCktPmxv
YWRlcigpLmNsaWVudCgpLmZyYW1lSUQoKS52YWx1ZU9yKEZyYW1lSWRlbnRpZmllciB7IH0pOwor
ICAgIH0KIH0KIAogTmF2aWdhdGlvbkFjdGlvbjo6VUlFdmVudFdpdGhLZXlTdGF0ZURhdGE6OlVJ
RXZlbnRXaXRoS2V5U3RhdGVEYXRhKGNvbnN0IFVJRXZlbnRXaXRoS2V5U3RhdGUmIHVpRXZlbnQp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvbkFjdGlvbi5oIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25BY3Rpb24uaAppbmRleCAwYTAyMWQ0ZmM3
OWQ5NmIzZjJhODhiYWU0MDQ1NjE5MTA0Y2U5MGIyLi5kMjdmMDFjY2ZmNjdkYWRkMzY3NzA3NDYz
MjYxYzZiMDI1MGU2MjA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdh
dGlvbkFjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uQWN0aW9u
LmgKQEAgLTMwLDEwICszMCw5IEBACiAKICNpbmNsdWRlICJBZENsaWNrQXR0cmlidXRpb24uaCIK
ICNpbmNsdWRlICJCYWNrRm9yd2FyZEl0ZW1JZGVudGlmaWVyLmgiCi0jaW5jbHVkZSAiRnJhbWVJ
ZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiRnJhbWVMb2FkZXJUeXBlcy5oIgorI2luY2x1ZGUgIkds
b2JhbEZyYW1lSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIkxheW91dFBvaW50LmgiCi0jaW5jbHVk
ZSAiUGFnZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJSZXNvdXJjZVJlcXVlc3QuaCIKICNpbmNs
dWRlICJTZWN1cml0eU9yaWdpbi5oIgogI2luY2x1ZGUgIlVzZXJHZXN0dXJlSW5kaWNhdG9yLmgi
CkBAIC02NSwxOSArNjQsMTggQEAgcHVibGljOgogICAgIE5hdmlnYXRpb25BY3Rpb24oTmF2aWdh
dGlvbkFjdGlvbiYmKTsKICAgICBOYXZpZ2F0aW9uQWN0aW9uJiBvcGVyYXRvcj0oTmF2aWdhdGlv
bkFjdGlvbiYmKTsKIAotICAgIHVzaW5nIFBhZ2VJREFuZEZyYW1lSURQYWlyID0gc3RkOjpwYWly
PFBhZ2VJZGVudGlmaWVyLCBGcmFtZUlkZW50aWZpZXI+OyAvLyBGSVhNRTogVXNlIEdsb2JhbEZy
YW1lSWRlbnRpZmllci4KICAgICBjbGFzcyBSZXF1ZXN0ZXIgewogICAgIHB1YmxpYzoKICAgICAg
ICAgUmVxdWVzdGVyKGNvbnN0IERvY3VtZW50Jik7CiAKICAgICAgICAgY29uc3QgVVJMJiB1cmwo
KSBjb25zdCB7IHJldHVybiBtX3VybDsgfQogICAgICAgICBjb25zdCBTZWN1cml0eU9yaWdpbiYg
c2VjdXJpdHlPcmlnaW4oKSBjb25zdCB7IHJldHVybiAqbV9vcmlnaW47IH0KLSAgICAgICAgUGFn
ZUlkZW50aWZpZXIgcGFnZUlEKCkgY29uc3QgeyByZXR1cm4gbV9wYWdlSURBbmRGcmFtZUlEUGFp
ci5maXJzdDsgfQotICAgICAgICBGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCgpIGNvbnN0IHsgcmV0
dXJuIG1fcGFnZUlEQW5kRnJhbWVJRFBhaXIuc2Vjb25kOyB9CisgICAgICAgIFBhZ2VJZGVudGlm
aWVyIHBhZ2VJRCgpIGNvbnN0IHsgcmV0dXJuIG1fZ2xvYmFsRnJhbWVJZGVudGlmaWVyLnBhZ2VJ
RDsgfQorICAgICAgICBGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCgpIGNvbnN0IHsgcmV0dXJuIG1f
Z2xvYmFsRnJhbWVJZGVudGlmaWVyLmZyYW1lSUQ7IH0KICAgICBwcml2YXRlOgogICAgICAgICBV
UkwgbV91cmw7CiAgICAgICAgIFJlZlB0cjxTZWN1cml0eU9yaWdpbj4gbV9vcmlnaW47Ci0gICAg
ICAgIFBhZ2VJREFuZEZyYW1lSURQYWlyIG1fcGFnZUlEQW5kRnJhbWVJRFBhaXI7CisgICAgICAg
IEdsb2JhbEZyYW1lSWRlbnRpZmllciBtX2dsb2JhbEZyYW1lSWRlbnRpZmllcjsKICAgICB9Owog
ICAgIGNvbnN0IE9wdGlvbmFsPFJlcXVlc3Rlcj4mIHJlcXVlc3RlcigpIGNvbnN0IHsgcmV0dXJu
IG1fcmVxdWVzdGVyOyB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395527</attachid>
            <date>2020-04-05 14:17:16 -0700</date>
            <delta_ts>2020-04-06 11:09:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210036-20200405231714.patch</filename>
            <type>text/plain</type>
            <size>3727</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NTQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTg4MjkyYTkyZTgyNWZm
NzQwNTIxODMwMzkzODJiMWMzZmQ2ZTkzNS4uZjAwNmQ3ZWJhNzc5MDUxNGY0YzYyNTNmYTlmMzVi
YmY3MzFlZDIxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDIwLTA0LTA1ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgVXNlIEdsb2JhbEZyYW1lSWRlbnRp
ZmllciBpbiBOYXZpZ2F0aW9uQWN0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTAwMzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBVc2UgR2xvYmFsRnJhbWVJZGVudGlmaWVyIGluIE5hdmlnYXRpb25B
Y3Rpb24gcmF0aGVyIHRoYW4gYWRkaW5nCisgICAgICAgIHlldCBhbm90aGVyIGN1c3RvbSBkYXRh
IHR5cGUuCisKKyAgICAgICAgKiBsb2FkZXIvTmF2aWdhdGlvbkFjdGlvbi5jcHA6CisgICAgICAg
ICogbG9hZGVyL05hdmlnYXRpb25BY3Rpb24uaDoKKyAgICAgICAgKFdlYkNvcmU6Ok5hdmlnYXRp
b25BY3Rpb246OlJlcXVlc3Rlcjo6cGFnZUlEIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6Ok5h
dmlnYXRpb25BY3Rpb246OlJlcXVlc3Rlcjo6ZnJhbWVJRCBjb25zdCk6CisKIDIwMjAtMDQtMDQg
IFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KIAogICAgICAgICBSZW1vdmUgTG9ja0hpc3Rv
cnkgcGFyYW1ldGVyIGZyb20gbG9hZFdpdGhOYXZpZ2F0aW9uQWN0aW9uCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvbkFjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvTmF2aWdhdGlvbkFjdGlvbi5jcHAKaW5kZXggYmQ3MzhlMDg5NTdlMmZkODRkYTA1
NWFiNDUzZTFhNDNlMGIyODhkYy4uODMyYWIwNWMyNjE3ZDg1YWZiMTQ0ZDZlZTQzODJmYjRiYTgx
ODE4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25BY3Rpb24u
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uQWN0aW9uLmNwcApAQCAt
NDEsOCArNDEsMTEgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogTmF2aWdhdGlvbkFjdGlvbjo6UmVx
dWVzdGVyOjpSZXF1ZXN0ZXIoY29uc3QgRG9jdW1lbnQmIGRvY3VtZW50KQogICAgIDogbV91cmwg
eyBVUkwgeyBkb2N1bWVudC51cmwoKSB9IH0KICAgICAsIG1fb3JpZ2luIHsgbWFrZVJlZlB0cihk
b2N1bWVudC5zZWN1cml0eU9yaWdpbigpKSB9Ci0gICAgLCBtX3BhZ2VJREFuZEZyYW1lSURQYWly
IHsgZG9jdW1lbnQuZnJhbWUoKSA/IHN0ZDo6bWFrZV9wYWlyKGRvY3VtZW50LmZyYW1lKCktPmxv
YWRlcigpLmNsaWVudCgpLnBhZ2VJRCgpLnZhbHVlT3IoUGFnZUlkZW50aWZpZXIgeyB9KSwgZG9j
dW1lbnQuZnJhbWUoKS0+bG9hZGVyKCkuY2xpZW50KCkuZnJhbWVJRCgpLnZhbHVlT3IoRnJhbWVJ
ZGVudGlmaWVyIHsgfSkpIDogc3RkOjptYWtlX3BhaXI8UGFnZUlkZW50aWZpZXIsIEZyYW1lSWRl
bnRpZmllcj4oeyB9LCB7IH0pIH0KIHsKKyAgICBpZiAoZG9jdW1lbnQuZnJhbWUoKSkgeworICAg
ICAgICBtX2dsb2JhbEZyYW1lSWRlbnRpZmllci5wYWdlSUQgPSBkb2N1bWVudC5mcmFtZSgpLT5s
b2FkZXIoKS5jbGllbnQoKS5wYWdlSUQoKS52YWx1ZU9yKFBhZ2VJZGVudGlmaWVyIHsgfSk7Cisg
ICAgICAgIG1fZ2xvYmFsRnJhbWVJZGVudGlmaWVyLmZyYW1lSUQgPSBkb2N1bWVudC5mcmFtZSgp
LT5sb2FkZXIoKS5jbGllbnQoKS5mcmFtZUlEKCkudmFsdWVPcihGcmFtZUlkZW50aWZpZXIgeyB9
KTsKKyAgICB9CiB9CiAKIE5hdmlnYXRpb25BY3Rpb246OlVJRXZlbnRXaXRoS2V5U3RhdGVEYXRh
OjpVSUV2ZW50V2l0aEtleVN0YXRlRGF0YShjb25zdCBVSUV2ZW50V2l0aEtleVN0YXRlJiB1aUV2
ZW50KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25BY3Rpb24u
aCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uQWN0aW9uLmgKaW5kZXggMGEwMjFk
NGZjNzlkOTZiM2YyYTg4YmFlNDA0NTYxOTEwNGNlOTBiMi4uZDI3ZjAxY2NmZjY3ZGFkZDM2Nzcw
NzQ2MzI2MWM2YjAyNTBlNjIwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL05h
dmlnYXRpb25BY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvbkFj
dGlvbi5oCkBAIC0zMCwxMCArMzAsOSBAQAogCiAjaW5jbHVkZSAiQWRDbGlja0F0dHJpYnV0aW9u
LmgiCiAjaW5jbHVkZSAiQmFja0ZvcndhcmRJdGVtSWRlbnRpZmllci5oIgotI2luY2x1ZGUgIkZy
YW1lSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIkZyYW1lTG9hZGVyVHlwZXMuaCIKKyNpbmNsdWRl
ICJHbG9iYWxGcmFtZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJMYXlvdXRQb2ludC5oIgotI2lu
Y2x1ZGUgIlBhZ2VJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXF1ZXN0LmgiCiAj
aW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJVc2VyR2VzdHVyZUluZGljYXRv
ci5oIgpAQCAtNjUsMTkgKzY0LDE4IEBAIHB1YmxpYzoKICAgICBOYXZpZ2F0aW9uQWN0aW9uKE5h
dmlnYXRpb25BY3Rpb24mJik7CiAgICAgTmF2aWdhdGlvbkFjdGlvbiYgb3BlcmF0b3I9KE5hdmln
YXRpb25BY3Rpb24mJik7CiAKLSAgICB1c2luZyBQYWdlSURBbmRGcmFtZUlEUGFpciA9IHN0ZDo6
cGFpcjxQYWdlSWRlbnRpZmllciwgRnJhbWVJZGVudGlmaWVyPjsgLy8gRklYTUU6IFVzZSBHbG9i
YWxGcmFtZUlkZW50aWZpZXIuCiAgICAgY2xhc3MgUmVxdWVzdGVyIHsKICAgICBwdWJsaWM6CiAg
ICAgICAgIFJlcXVlc3Rlcihjb25zdCBEb2N1bWVudCYpOwogCiAgICAgICAgIGNvbnN0IFVSTCYg
dXJsKCkgY29uc3QgeyByZXR1cm4gbV91cmw7IH0KICAgICAgICAgY29uc3QgU2VjdXJpdHlPcmln
aW4mIHNlY3VyaXR5T3JpZ2luKCkgY29uc3QgeyByZXR1cm4gKm1fb3JpZ2luOyB9Ci0gICAgICAg
IFBhZ2VJZGVudGlmaWVyIHBhZ2VJRCgpIGNvbnN0IHsgcmV0dXJuIG1fcGFnZUlEQW5kRnJhbWVJ
RFBhaXIuZmlyc3Q7IH0KLSAgICAgICAgRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQoKSBjb25zdCB7
IHJldHVybiBtX3BhZ2VJREFuZEZyYW1lSURQYWlyLnNlY29uZDsgfQorICAgICAgICBQYWdlSWRl
bnRpZmllciBwYWdlSUQoKSBjb25zdCB7IHJldHVybiBtX2dsb2JhbEZyYW1lSWRlbnRpZmllci5w
YWdlSUQ7IH0KKyAgICAgICAgRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQoKSBjb25zdCB7IHJldHVy
biBtX2dsb2JhbEZyYW1lSWRlbnRpZmllci5mcmFtZUlEOyB9CiAgICAgcHJpdmF0ZToKICAgICAg
ICAgVVJMIG1fdXJsOwogICAgICAgICBSZWZQdHI8U2VjdXJpdHlPcmlnaW4+IG1fb3JpZ2luOwot
ICAgICAgICBQYWdlSURBbmRGcmFtZUlEUGFpciBtX3BhZ2VJREFuZEZyYW1lSURQYWlyOworICAg
ICAgICBHbG9iYWxGcmFtZUlkZW50aWZpZXIgbV9nbG9iYWxGcmFtZUlkZW50aWZpZXI7CiAgICAg
fTsKICAgICBjb25zdCBPcHRpb25hbDxSZXF1ZXN0ZXI+JiByZXF1ZXN0ZXIoKSBjb25zdCB7IHJl
dHVybiBtX3JlcXVlc3RlcjsgfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395589</attachid>
            <date>2020-04-06 11:09:34 -0700</date>
            <delta_ts>2020-04-06 13:15:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210036-20200406200932.patch</filename>
            <type>text/plain</type>
            <size>7180</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NTY4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjY2MjFlZjIwMzkxZjUw
OWNkZjZlZTVkNmJjYmQ5ZTdiM2E3OTBjYi4uMDNjZDQ3NzIwMzJmMTFlMmQ1N2EzM2FmOTE1YTgw
NDE0MDBhMDA1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIwLTA0LTA2ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgVXNlIEdsb2JhbEZyYW1lSWRlbnRp
ZmllciBpbiBOYXZpZ2F0aW9uQWN0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTAwMzYKKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxl
ci4KKworICAgICAgICBVc2UgR2xvYmFsRnJhbWVJZGVudGlmaWVyIGluIE5hdmlnYXRpb25BY3Rp
b24gcmF0aGVyIHRoYW4gYWRkaW5nCisgICAgICAgIHlldCBhbm90aGVyIGN1c3RvbSBkYXRhIHR5
cGUuCisKKyAgICAgICAgKiBsb2FkZXIvTmF2aWdhdGlvbkFjdGlvbi5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpjcmVhdGVHbG9iYWxGcmFtZUlkZW50aWZpZXIpOgorICAgICAgICAoV2ViQ29yZTo6
bV9nbG9iYWxGcmFtZUlkZW50aWZpZXIpOgorICAgICAgICAoV2ViQ29yZTo6TmF2aWdhdGlvbkFj
dGlvbjo6UmVxdWVzdGVyOjpSZXF1ZXN0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6TmF2aWdhdGlv
bkFjdGlvbjo6UmVxdWVzdGVyOjpvcGVyYXRvcj0pOgorICAgICAgICAqIGxvYWRlci9OYXZpZ2F0
aW9uQWN0aW9uLmg6CisgICAgICAgIChXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uOjpSZXF1ZXN0
ZXI6OnNlY3VyaXR5T3JpZ2luIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6Ok5hdmlnYXRpb25B
Y3Rpb246OlJlcXVlc3Rlcjo6Z2xvYmFsRnJhbWVJZGVudGlmaWVyIGNvbnN0KToKKyAgICAgICAg
KFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb246OlJlcXVlc3Rlcjo6cGFnZUlEIGNvbnN0KTogRGVs
ZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6Ok5hdmlnYXRpb25BY3Rpb246OlJlcXVlc3Rlcjo6ZnJh
bWVJRCBjb25zdCk6IERlbGV0ZWQuCisKIDIwMjAtMDQtMDYgIFNhaWQgQWJvdS1IYWxsYXdhICA8
c2Fib3VoYWxsYXdhQGFwcGxlLmNvbT4KIAogICAgICAgICBDYW52YXNSZW5kZXJpbmdDb250ZXh0
MkQuZHJhd0ltYWdlIHNob3VsZCBpZ25vcmUgdGhlIEVYSUYgb3JpZW50YXRpb24gaWYgdGhlIGlt
YWdlLW9yaWVudGF0aW9uIGlzIG5vbmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggMzgzNDZjMjlkOTkwZDQ5ZTI0OWNj
ZTM2MjFiYjIzNzVjZDFhMmE3MC4uOWEwNTU5MDE3YWI3NWE5YmY2OGM3NzQ2MzdjODkwY2IwYzRl
NDQ4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMC0wNC0wNiAgUm9iIEJ1aXMgIDxy
YnVpc0BpZ2FsaWEuY29tPgorCisgICAgICAgIFVzZSBHbG9iYWxGcmFtZUlkZW50aWZpZXIgaW4g
TmF2aWdhdGlvbkFjdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjEwMDM2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAg
ICAgICAgQWRhcHQgdG8gQVBJIGNoYW5nZS4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29y
ZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9u
KToKKwogMjAyMC0wNC0wNiAgeW91ZW5uIGZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAg
ICAgICAgQWRkIEhFVkMgc3VwcG9ydCBpbiBHUFUgUHJvY2VzcyBmb3IgV2ViUlRDCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvbkFjdGlvbi5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvbkFjdGlvbi5jcHAKaW5kZXggYmQ3MzhlMDg5NTdlMmZk
ODRkYTA1NWFiNDUzZTFhNDNlMGIyODhkYy4uYjhjNTkxZThjYTZlZDVjNzdkY2Y3NzRiMmViODJk
N2RiYjU4MGVkOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25B
Y3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uQWN0aW9uLmNw
cApAQCAtMzgsMTEgKzM4LDMzIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorc3RhdGljIEds
b2JhbEZyYW1lSWRlbnRpZmllciBjcmVhdGVHbG9iYWxGcmFtZUlkZW50aWZpZXIoY29uc3QgRG9j
dW1lbnQmIGRvY3VtZW50KQoreworICAgIGlmIChkb2N1bWVudC5mcmFtZSgpKQorICAgICAgICBy
ZXR1cm4geyBkb2N1bWVudC5mcmFtZSgpLT5sb2FkZXIoKS5jbGllbnQoKS5wYWdlSUQoKS52YWx1
ZU9yKFBhZ2VJZGVudGlmaWVyIHsgfSksIGRvY3VtZW50LmZyYW1lKCktPmxvYWRlcigpLmNsaWVu
dCgpLmZyYW1lSUQoKS52YWx1ZU9yKEZyYW1lSWRlbnRpZmllciB7IH0pIH07CisgICAgcmV0dXJu
IEdsb2JhbEZyYW1lSWRlbnRpZmllcigpOworfQorCiBOYXZpZ2F0aW9uQWN0aW9uOjpSZXF1ZXN0
ZXI6OlJlcXVlc3Rlcihjb25zdCBEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAgOiBtX3VybCB7IFVS
TCB7IGRvY3VtZW50LnVybCgpIH0gfQotICAgICwgbV9vcmlnaW4geyBtYWtlUmVmUHRyKGRvY3Vt
ZW50LnNlY3VyaXR5T3JpZ2luKCkpIH0KLSAgICAsIG1fcGFnZUlEQW5kRnJhbWVJRFBhaXIgeyBk
b2N1bWVudC5mcmFtZSgpID8gc3RkOjptYWtlX3BhaXIoZG9jdW1lbnQuZnJhbWUoKS0+bG9hZGVy
KCkuY2xpZW50KCkucGFnZUlEKCkudmFsdWVPcihQYWdlSWRlbnRpZmllciB7IH0pLCBkb2N1bWVu
dC5mcmFtZSgpLT5sb2FkZXIoKS5jbGllbnQoKS5mcmFtZUlEKCkudmFsdWVPcihGcmFtZUlkZW50
aWZpZXIgeyB9KSkgOiBzdGQ6Om1ha2VfcGFpcjxQYWdlSWRlbnRpZmllciwgRnJhbWVJZGVudGlm
aWVyPih7IH0sIHsgfSkgfQorICAgICwgbV9vcmlnaW4geyBtYWtlUmVmKGRvY3VtZW50LnNlY3Vy
aXR5T3JpZ2luKCkpIH0KKyAgICAsIG1fZ2xvYmFsRnJhbWVJZGVudGlmaWVyKGNyZWF0ZUdsb2Jh
bEZyYW1lSWRlbnRpZmllcihkb2N1bWVudCkpCit7Cit9CisKK05hdmlnYXRpb25BY3Rpb246OlJl
cXVlc3Rlcjo6UmVxdWVzdGVyKGNvbnN0IFJlcXVlc3RlciYgb3RoZXIpCisgICAgOiBtX3VybChv
dGhlci5tX3VybCkKKyAgICAsIG1fb3JpZ2luKG90aGVyLm1fb3JpZ2luLmNvcHlSZWYoKSkKKyAg
ICAsIG1fZ2xvYmFsRnJhbWVJZGVudGlmaWVyKG90aGVyLm1fZ2xvYmFsRnJhbWVJZGVudGlmaWVy
KQoreworfQorCitOYXZpZ2F0aW9uQWN0aW9uOjpSZXF1ZXN0ZXImIE5hdmlnYXRpb25BY3Rpb246
OlJlcXVlc3Rlcjo6b3BlcmF0b3I9KGNvbnN0IFJlcXVlc3RlciYgb3RoZXIpCiB7CisgICAgbV91
cmwgPSBvdGhlci5tX3VybDsKKyAgICBtX29yaWdpbiA9IG90aGVyLm1fb3JpZ2luLmNvcHlSZWYo
KTsKKyAgICBtX2dsb2JhbEZyYW1lSWRlbnRpZmllciA9IG90aGVyLm1fZ2xvYmFsRnJhbWVJZGVu
dGlmaWVyOworICAgIHJldHVybiAqdGhpczsKIH0KIAogTmF2aWdhdGlvbkFjdGlvbjo6VUlFdmVu
dFdpdGhLZXlTdGF0ZURhdGE6OlVJRXZlbnRXaXRoS2V5U3RhdGVEYXRhKGNvbnN0IFVJRXZlbnRX
aXRoS2V5U3RhdGUmIHVpRXZlbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
TmF2aWdhdGlvbkFjdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25BY3Rp
b24uaAppbmRleCAwYTAyMWQ0ZmM3OWQ5NmIzZjJhODhiYWU0MDQ1NjE5MTA0Y2U5MGIyLi5lMjU2
OTc3N2Q3OWE0YzQ5ZmFiOTAxZWE5NjlkN2MzNWIxMjdjMjU0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvbkFjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9OYXZpZ2F0aW9uQWN0aW9uLmgKQEAgLTMwLDEwICszMCw5IEBACiAKICNpbmNsdWRlICJB
ZENsaWNrQXR0cmlidXRpb24uaCIKICNpbmNsdWRlICJCYWNrRm9yd2FyZEl0ZW1JZGVudGlmaWVy
LmgiCi0jaW5jbHVkZSAiRnJhbWVJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiRnJhbWVMb2FkZXJU
eXBlcy5oIgorI2luY2x1ZGUgIkdsb2JhbEZyYW1lSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIkxh
eW91dFBvaW50LmgiCi0jaW5jbHVkZSAiUGFnZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJSZXNv
dXJjZVJlcXVlc3QuaCIKICNpbmNsdWRlICJTZWN1cml0eU9yaWdpbi5oIgogI2luY2x1ZGUgIlVz
ZXJHZXN0dXJlSW5kaWNhdG9yLmgiCkBAIC02NSwxOSArNjQsMTkgQEAgcHVibGljOgogICAgIE5h
dmlnYXRpb25BY3Rpb24oTmF2aWdhdGlvbkFjdGlvbiYmKTsKICAgICBOYXZpZ2F0aW9uQWN0aW9u
JiBvcGVyYXRvcj0oTmF2aWdhdGlvbkFjdGlvbiYmKTsKIAotICAgIHVzaW5nIFBhZ2VJREFuZEZy
YW1lSURQYWlyID0gc3RkOjpwYWlyPFBhZ2VJZGVudGlmaWVyLCBGcmFtZUlkZW50aWZpZXI+OyAv
LyBGSVhNRTogVXNlIEdsb2JhbEZyYW1lSWRlbnRpZmllci4KICAgICBjbGFzcyBSZXF1ZXN0ZXIg
ewogICAgIHB1YmxpYzoKICAgICAgICAgUmVxdWVzdGVyKGNvbnN0IERvY3VtZW50Jik7CisgICAg
ICAgIFdFQkNPUkVfRVhQT1JUIFJlcXVlc3Rlcihjb25zdCBSZXF1ZXN0ZXImKTsKKyAgICAgICAg
UmVxdWVzdGVyJiBvcGVyYXRvcj0oY29uc3QgUmVxdWVzdGVyJik7CiAKICAgICAgICAgY29uc3Qg
VVJMJiB1cmwoKSBjb25zdCB7IHJldHVybiBtX3VybDsgfQotICAgICAgICBjb25zdCBTZWN1cml0
eU9yaWdpbiYgc2VjdXJpdHlPcmlnaW4oKSBjb25zdCB7IHJldHVybiAqbV9vcmlnaW47IH0KLSAg
ICAgICAgUGFnZUlkZW50aWZpZXIgcGFnZUlEKCkgY29uc3QgeyByZXR1cm4gbV9wYWdlSURBbmRG
cmFtZUlEUGFpci5maXJzdDsgfQotICAgICAgICBGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCgpIGNv
bnN0IHsgcmV0dXJuIG1fcGFnZUlEQW5kRnJhbWVJRFBhaXIuc2Vjb25kOyB9CisgICAgICAgIGNv
bnN0IFNlY3VyaXR5T3JpZ2luJiBzZWN1cml0eU9yaWdpbigpIGNvbnN0IHsgcmV0dXJuIG1fb3Jp
Z2luLmdldCgpOyB9CisgICAgICAgIGNvbnN0IEdsb2JhbEZyYW1lSWRlbnRpZmllciYgZ2xvYmFs
RnJhbWVJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9nbG9iYWxGcmFtZUlkZW50aWZpZXI7
IH0KICAgICBwcml2YXRlOgogICAgICAgICBVUkwgbV91cmw7Ci0gICAgICAgIFJlZlB0cjxTZWN1
cml0eU9yaWdpbj4gbV9vcmlnaW47Ci0gICAgICAgIFBhZ2VJREFuZEZyYW1lSURQYWlyIG1fcGFn
ZUlEQW5kRnJhbWVJRFBhaXI7CisgICAgICAgIFJlZjxTZWN1cml0eU9yaWdpbj4gbV9vcmlnaW47
CisgICAgICAgIEdsb2JhbEZyYW1lSWRlbnRpZmllciBtX2dsb2JhbEZyYW1lSWRlbnRpZmllcjsK
ICAgICB9OwogICAgIGNvbnN0IE9wdGlvbmFsPFJlcXVlc3Rlcj4mIHJlcXVlc3RlcigpIGNvbnN0
IHsgcmV0dXJuIG1fcmVxdWVzdGVyOyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3Bw
CmluZGV4IGRlMjE2NjQ3NmI2ZTczYjFiYjg2MjkyMGI3OWFiODM0Y2Y5ZjBjZGIuLjAwMWMzYjlk
NWViNTAwNDZkMmQ1ZTFhYTkyM2ZiMThmOTlkODVhNWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVy
Q2xpZW50LmNwcApAQCAtOTI3LDcgKzkyNyw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0CiAg
ICAgQVNTRVJUKG5hdmlnYXRpb25BY3Rpb24ucmVxdWVzdGVyKCkpOwogICAgIGF1dG8gcmVxdWVz
dGVyID0gbmF2aWdhdGlvbkFjdGlvbi5yZXF1ZXN0ZXIoKS52YWx1ZSgpOwogCi0gICAgYXV0byog
cmVxdWVzdGluZ0ZyYW1lID0gcmVxdWVzdGVyLmZyYW1lSUQoKSA/IFdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpLndlYkZyYW1lKHJlcXVlc3Rlci5mcmFtZUlEKCkpIDogbnVsbHB0cjsKKyAgICBhdXRv
KiByZXF1ZXN0aW5nRnJhbWUgPSByZXF1ZXN0ZXIuZ2xvYmFsRnJhbWVJZGVudGlmaWVyKCkuZnJh
bWVJRCA/IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLndlYkZyYW1lKHJlcXVlc3Rlci5nbG9iYWxG
cmFtZUlkZW50aWZpZXIoKS5mcmFtZUlEKSA6IG51bGxwdHI7CiAgICAgT3B0aW9uYWw8V2ViQ29y
ZTo6RnJhbWVJZGVudGlmaWVyPiBvcmlnaW5hdGluZ0ZyYW1lSUQ7CiAgICAgT3B0aW9uYWw8V2Vi
Q29yZTo6RnJhbWVJZGVudGlmaWVyPiBwYXJlbnRGcmFtZUlEOwogICAgIGlmIChyZXF1ZXN0aW5n
RnJhbWUpIHsKQEAgLTk0NSw4ICs5NDUsOCBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24oY29uc3QgTmF2aWdhdAogICAg
IH07CiAKICAgICBPcHRpb25hbDxXZWJQYWdlUHJveHlJZGVudGlmaWVyPiBvcmlnaW5hdGluZ1Bh
Z2VJRDsKLSAgICBpZiAocmVxdWVzdGVyLnBhZ2VJRCgpKSB7Ci0gICAgICAgIGlmIChhdXRvKiB3
ZWJQYWdlID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkud2ViUGFnZShyZXF1ZXN0ZXIucGFnZUlE
KCkpKQorICAgIGlmIChjb25zdCBhdXRvJiBwYWdlSUQgPSByZXF1ZXN0ZXIuZ2xvYmFsRnJhbWVJ
ZGVudGlmaWVyKCkucGFnZUlEKSB7CisgICAgICAgIGlmIChhdXRvKiB3ZWJQYWdlID0gV2ViUHJv
Y2Vzczo6c2luZ2xldG9uKCkud2ViUGFnZShwYWdlSUQpKQogICAgICAgICAgICAgb3JpZ2luYXRp
bmdQYWdlSUQgPSB3ZWJQYWdlLT53ZWJQYWdlUHJveHlJZGVudGlmaWVyKCk7CiAgICAgfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395608</attachid>
            <date>2020-04-06 13:15:14 -0700</date>
            <delta_ts>2020-04-07 00:20:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210036-20200406221513.patch</filename>
            <type>text/plain</type>
            <size>6135</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NTg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDMxMDc1NWJiN2JlOGNi
YjRmMjUzNDI1MzUyMGFjMjIyODBkZmExZi4uZDI5NGFkNWRjZjM5MDNlYjUyMDNjYTExY2FjNzhl
OWFkNGI1OGVhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTA0LTA2ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgVXNlIEdsb2JhbEZyYW1lSWRlbnRp
ZmllciBpbiBOYXZpZ2F0aW9uQWN0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTAwMzYKKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxl
ci4KKworICAgICAgICBVc2UgR2xvYmFsRnJhbWVJZGVudGlmaWVyIGluIE5hdmlnYXRpb25BY3Rp
b24gcmF0aGVyIHRoYW4gYWRkaW5nCisgICAgICAgIHlldCBhbm90aGVyIGN1c3RvbSBkYXRhIHR5
cGUuCisKKyAgICAgICAgKiBsb2FkZXIvTmF2aWdhdGlvbkFjdGlvbi5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpjcmVhdGVHbG9iYWxGcmFtZUlkZW50aWZpZXIpOgorICAgICAgICAoV2ViQ29yZTo6
bV9nbG9iYWxGcmFtZUlkZW50aWZpZXIpOgorICAgICAgICAqIGxvYWRlci9OYXZpZ2F0aW9uQWN0
aW9uLmg6CisgICAgICAgIChXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uOjpSZXF1ZXN0ZXI6Omds
b2JhbEZyYW1lSWRlbnRpZmllciBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpOYXZpZ2F0aW9u
QWN0aW9uOjpSZXF1ZXN0ZXI6OnBhZ2VJRCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJD
b3JlOjpOYXZpZ2F0aW9uQWN0aW9uOjpSZXF1ZXN0ZXI6OmZyYW1lSUQgY29uc3QpOiBEZWxldGVk
LgorCiAyMDIwLTA0LTA2ICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAg
ICAgICAnY3VycmVudGNvbG9yJyBkb2Vzbid0IG5lZWQgc2V0SGFzRXhwbGljaXRseUluaGVyaXRl
ZFByb3BlcnRpZXMgbWFya2luZyBhbnltb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDc0ZjVlMGZmYjVjNjM5M2Q0
YjIyYmQ1OWExMGU5YTMzZjYyOGE5N2QuLjQwMjliMWM0OGQ3YjM0M2Y0NjE5ZTFlZTU2YWI1OGM2
M2Q4YjIyMWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjAtMDQtMDYgIFJvYiBCdWlz
ICA8cmJ1aXNAaWdhbGlhLmNvbT4KKworICAgICAgICBVc2UgR2xvYmFsRnJhbWVJZGVudGlmaWVy
IGluIE5hdmlnYXRpb25BY3Rpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIxMDAzNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEFkYXB0IHRvIEFQSSBjaGFuZ2UuCisKKyAgICAgICAgKiBXZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlv
bkFjdGlvbik6CisKIDIwMjAtMDQtMDYgIFbDrWN0b3IgTWFudWVsIErDoXF1ZXogTGVhbCAgPHZq
YXF1ZXpAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBSZW1vdmUgdW51c2VkIGhlYWRlciBp
biB3ZWIgcHJvY2VzcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRp
b25BY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25BY3Rpb24uY3Bw
CmluZGV4IGJkNzM4ZTA4OTU3ZTJmZDg0ZGEwNTVhYjQ1M2UxYTQzZTBiMjg4ZGMuLjdjNWQ1MzFj
ODZiNDU5Mzc1YjBhYjZhMDFmMzZkOTYxNmM3ZWM1YzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9OYXZpZ2F0aW9uQWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvTmF2aWdhdGlvbkFjdGlvbi5jcHAKQEAgLTM4LDEwICszOCwxNyBAQAogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKK3N0YXRpYyBHbG9iYWxGcmFtZUlkZW50aWZpZXIgY3JlYXRlR2xvYmFsRnJh
bWVJZGVudGlmaWVyKGNvbnN0IERvY3VtZW50JiBkb2N1bWVudCkKK3sKKyAgICBpZiAoZG9jdW1l
bnQuZnJhbWUoKSkKKyAgICAgICAgcmV0dXJuIHsgZG9jdW1lbnQuZnJhbWUoKS0+bG9hZGVyKCku
Y2xpZW50KCkucGFnZUlEKCkudmFsdWVPcihQYWdlSWRlbnRpZmllciB7IH0pLCBkb2N1bWVudC5m
cmFtZSgpLT5sb2FkZXIoKS5jbGllbnQoKS5mcmFtZUlEKCkudmFsdWVPcihGcmFtZUlkZW50aWZp
ZXIgeyB9KSB9OworICAgIHJldHVybiBHbG9iYWxGcmFtZUlkZW50aWZpZXIoKTsKK30KKwogTmF2
aWdhdGlvbkFjdGlvbjo6UmVxdWVzdGVyOjpSZXF1ZXN0ZXIoY29uc3QgRG9jdW1lbnQmIGRvY3Vt
ZW50KQogICAgIDogbV91cmwgeyBVUkwgeyBkb2N1bWVudC51cmwoKSB9IH0KICAgICAsIG1fb3Jp
Z2luIHsgbWFrZVJlZlB0cihkb2N1bWVudC5zZWN1cml0eU9yaWdpbigpKSB9Ci0gICAgLCBtX3Bh
Z2VJREFuZEZyYW1lSURQYWlyIHsgZG9jdW1lbnQuZnJhbWUoKSA/IHN0ZDo6bWFrZV9wYWlyKGRv
Y3VtZW50LmZyYW1lKCktPmxvYWRlcigpLmNsaWVudCgpLnBhZ2VJRCgpLnZhbHVlT3IoUGFnZUlk
ZW50aWZpZXIgeyB9KSwgZG9jdW1lbnQuZnJhbWUoKS0+bG9hZGVyKCkuY2xpZW50KCkuZnJhbWVJ
RCgpLnZhbHVlT3IoRnJhbWVJZGVudGlmaWVyIHsgfSkpIDogc3RkOjptYWtlX3BhaXI8UGFnZUlk
ZW50aWZpZXIsIEZyYW1lSWRlbnRpZmllcj4oeyB9LCB7IH0pIH0KKyAgICAsIG1fZ2xvYmFsRnJh
bWVJZGVudGlmaWVyKGNyZWF0ZUdsb2JhbEZyYW1lSWRlbnRpZmllcihkb2N1bWVudCkpCiB7CiB9
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uQWN0aW9uLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvbkFjdGlvbi5oCmluZGV4IDBhMDIxZDRm
Yzc5ZDk2YjNmMmE4OGJhZTQwNDU2MTkxMDRjZTkwYjIuLjY5OTRkZjM4MDcwYjcyZjZlNjJjZGRk
NjYzN2Y0MDNhNWZiNTQ0NjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZp
Z2F0aW9uQWN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25BY3Rp
b24uaApAQCAtMzAsMTAgKzMwLDkgQEAKIAogI2luY2x1ZGUgIkFkQ2xpY2tBdHRyaWJ1dGlvbi5o
IgogI2luY2x1ZGUgIkJhY2tGb3J3YXJkSXRlbUlkZW50aWZpZXIuaCIKLSNpbmNsdWRlICJGcmFt
ZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJGcmFtZUxvYWRlclR5cGVzLmgiCisjaW5jbHVkZSAi
R2xvYmFsRnJhbWVJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiTGF5b3V0UG9pbnQuaCIKLSNpbmNs
dWRlICJQYWdlSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVxdWVzdC5oIgogI2lu
Y2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAiVXNlckdlc3R1cmVJbmRpY2F0b3Iu
aCIKQEAgLTY1LDE5ICs2NCwxNyBAQCBwdWJsaWM6CiAgICAgTmF2aWdhdGlvbkFjdGlvbihOYXZp
Z2F0aW9uQWN0aW9uJiYpOwogICAgIE5hdmlnYXRpb25BY3Rpb24mIG9wZXJhdG9yPShOYXZpZ2F0
aW9uQWN0aW9uJiYpOwogCi0gICAgdXNpbmcgUGFnZUlEQW5kRnJhbWVJRFBhaXIgPSBzdGQ6OnBh
aXI8UGFnZUlkZW50aWZpZXIsIEZyYW1lSWRlbnRpZmllcj47IC8vIEZJWE1FOiBVc2UgR2xvYmFs
RnJhbWVJZGVudGlmaWVyLgogICAgIGNsYXNzIFJlcXVlc3RlciB7CiAgICAgcHVibGljOgogICAg
ICAgICBSZXF1ZXN0ZXIoY29uc3QgRG9jdW1lbnQmKTsKIAogICAgICAgICBjb25zdCBVUkwmIHVy
bCgpIGNvbnN0IHsgcmV0dXJuIG1fdXJsOyB9CiAgICAgICAgIGNvbnN0IFNlY3VyaXR5T3JpZ2lu
JiBzZWN1cml0eU9yaWdpbigpIGNvbnN0IHsgcmV0dXJuICptX29yaWdpbjsgfQotICAgICAgICBQ
YWdlSWRlbnRpZmllciBwYWdlSUQoKSBjb25zdCB7IHJldHVybiBtX3BhZ2VJREFuZEZyYW1lSURQ
YWlyLmZpcnN0OyB9Ci0gICAgICAgIEZyYW1lSWRlbnRpZmllciBmcmFtZUlEKCkgY29uc3QgeyBy
ZXR1cm4gbV9wYWdlSURBbmRGcmFtZUlEUGFpci5zZWNvbmQ7IH0KKyAgICAgICAgY29uc3QgR2xv
YmFsRnJhbWVJZGVudGlmaWVyJiBnbG9iYWxGcmFtZUlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVy
biBtX2dsb2JhbEZyYW1lSWRlbnRpZmllcjsgfQogICAgIHByaXZhdGU6CiAgICAgICAgIFVSTCBt
X3VybDsKICAgICAgICAgUmVmUHRyPFNlY3VyaXR5T3JpZ2luPiBtX29yaWdpbjsKLSAgICAgICAg
UGFnZUlEQW5kRnJhbWVJRFBhaXIgbV9wYWdlSURBbmRGcmFtZUlEUGFpcjsKKyAgICAgICAgR2xv
YmFsRnJhbWVJZGVudGlmaWVyIG1fZ2xvYmFsRnJhbWVJZGVudGlmaWVyOwogICAgIH07CiAgICAg
Y29uc3QgT3B0aW9uYWw8UmVxdWVzdGVyPiYgcmVxdWVzdGVyKCkgY29uc3QgeyByZXR1cm4gbV9y
ZXF1ZXN0ZXI7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKaW5kZXggZGUyMTY2
NDc2YjZlNzNiMWJiODYyOTIwYjc5YWI4MzRjZjlmMGNkYi4uNDQxODVkNWE3Mjg2NmJmZjY0MDBj
ZjczOGI1ZTE5ZTNiMGE1MWY3YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCkBA
IC05MjcsNyArOTI3LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNp
ZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXQKICAgICBBU1NFUlQobmF2
aWdhdGlvbkFjdGlvbi5yZXF1ZXN0ZXIoKSk7CiAgICAgYXV0byByZXF1ZXN0ZXIgPSBuYXZpZ2F0
aW9uQWN0aW9uLnJlcXVlc3RlcigpLnZhbHVlKCk7CiAKLSAgICBhdXRvKiByZXF1ZXN0aW5nRnJh
bWUgPSByZXF1ZXN0ZXIuZnJhbWVJRCgpID8gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkud2ViRnJh
bWUocmVxdWVzdGVyLmZyYW1lSUQoKSkgOiBudWxscHRyOworICAgIGF1dG8qIHJlcXVlc3RpbmdG
cmFtZSA9IHJlcXVlc3Rlci5nbG9iYWxGcmFtZUlkZW50aWZpZXIoKS5mcmFtZUlEID8gV2ViUHJv
Y2Vzczo6c2luZ2xldG9uKCkud2ViRnJhbWUocmVxdWVzdGVyLmdsb2JhbEZyYW1lSWRlbnRpZmll
cigpLmZyYW1lSUQpIDogbnVsbHB0cjsKICAgICBPcHRpb25hbDxXZWJDb3JlOjpGcmFtZUlkZW50
aWZpZXI+IG9yaWdpbmF0aW5nRnJhbWVJRDsKICAgICBPcHRpb25hbDxXZWJDb3JlOjpGcmFtZUlk
ZW50aWZpZXI+IHBhcmVudEZyYW1lSUQ7CiAgICAgaWYgKHJlcXVlc3RpbmdGcmFtZSkgewpAQCAt
OTQ1LDggKzk0NSw4IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRl
UG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0CiAgICAgfTsKIAogICAgIE9w
dGlvbmFsPFdlYlBhZ2VQcm94eUlkZW50aWZpZXI+IG9yaWdpbmF0aW5nUGFnZUlEOwotICAgIGlm
IChyZXF1ZXN0ZXIucGFnZUlEKCkpIHsKLSAgICAgICAgaWYgKGF1dG8qIHdlYlBhZ2UgPSBXZWJQ
cm9jZXNzOjpzaW5nbGV0b24oKS53ZWJQYWdlKHJlcXVlc3Rlci5wYWdlSUQoKSkpCisgICAgaWYg
KGF1dG8mIHBhZ2VJRCA9IHJlcXVlc3Rlci5nbG9iYWxGcmFtZUlkZW50aWZpZXIoKS5wYWdlSUQp
IHsKKyAgICAgICAgaWYgKGF1dG8qIHdlYlBhZ2UgPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS53
ZWJQYWdlKHBhZ2VJRCkpCiAgICAgICAgICAgICBvcmlnaW5hdGluZ1BhZ2VJRCA9IHdlYlBhZ2Ut
PndlYlBhZ2VQcm94eUlkZW50aWZpZXIoKTsKICAgICB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395656</attachid>
            <date>2020-04-07 00:20:53 -0700</date>
            <delta_ts>2020-04-07 00:56:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210036-20200407092051.patch</filename>
            <type>text/plain</type>
            <size>6132</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NTg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDMxMDc1NWJiN2JlOGNi
YjRmMjUzNDI1MzUyMGFjMjIyODBkZmExZi4uZDI5NGFkNWRjZjM5MDNlYjUyMDNjYTExY2FjNzhl
OWFkNGI1OGVhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTA0LTA2ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgVXNlIEdsb2JhbEZyYW1lSWRlbnRp
ZmllciBpbiBOYXZpZ2F0aW9uQWN0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTAwMzYKKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxl
ci4KKworICAgICAgICBVc2UgR2xvYmFsRnJhbWVJZGVudGlmaWVyIGluIE5hdmlnYXRpb25BY3Rp
b24gcmF0aGVyIHRoYW4gYWRkaW5nCisgICAgICAgIHlldCBhbm90aGVyIGN1c3RvbSBkYXRhIHR5
cGUuCisKKyAgICAgICAgKiBsb2FkZXIvTmF2aWdhdGlvbkFjdGlvbi5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpjcmVhdGVHbG9iYWxGcmFtZUlkZW50aWZpZXIpOgorICAgICAgICAoV2ViQ29yZTo6
bV9nbG9iYWxGcmFtZUlkZW50aWZpZXIpOgorICAgICAgICAqIGxvYWRlci9OYXZpZ2F0aW9uQWN0
aW9uLmg6CisgICAgICAgIChXZWJDb3JlOjpOYXZpZ2F0aW9uQWN0aW9uOjpSZXF1ZXN0ZXI6Omds
b2JhbEZyYW1lSWRlbnRpZmllciBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpOYXZpZ2F0aW9u
QWN0aW9uOjpSZXF1ZXN0ZXI6OnBhZ2VJRCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJD
b3JlOjpOYXZpZ2F0aW9uQWN0aW9uOjpSZXF1ZXN0ZXI6OmZyYW1lSUQgY29uc3QpOiBEZWxldGVk
LgorCiAyMDIwLTA0LTA2ICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAg
ICAgICAnY3VycmVudGNvbG9yJyBkb2Vzbid0IG5lZWQgc2V0SGFzRXhwbGljaXRseUluaGVyaXRl
ZFByb3BlcnRpZXMgbWFya2luZyBhbnltb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDc0ZjVlMGZmYjVjNjM5M2Q0
YjIyYmQ1OWExMGU5YTMzZjYyOGE5N2QuLmI2Njg3NDg1ZjMyYWQzZmQ4ODQ1NzI3MmEyMDI3OWVh
MTBhMzA1NGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjAtMDQtMDYgIFJvYiBCdWlz
ICA8cmJ1aXNAaWdhbGlhLmNvbT4KKworICAgICAgICBVc2UgR2xvYmFsRnJhbWVJZGVudGlmaWVy
IGluIE5hdmlnYXRpb25BY3Rpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIxMDAzNgorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgor
CisgICAgICAgIEFkYXB0IHRvIEFQSSBjaGFuZ2UuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFj
dGlvbik6CisKIDIwMjAtMDQtMDYgIFbDrWN0b3IgTWFudWVsIErDoXF1ZXogTGVhbCAgPHZqYXF1
ZXpAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBSZW1vdmUgdW51c2VkIGhlYWRlciBpbiB3
ZWIgcHJvY2VzcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25B
Y3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25BY3Rpb24uY3BwCmlu
ZGV4IGJkNzM4ZTA4OTU3ZTJmZDg0ZGEwNTVhYjQ1M2UxYTQzZTBiMjg4ZGMuLjdjNWQ1MzFjODZi
NDU5Mzc1YjBhYjZhMDFmMzZkOTYxNmM3ZWM1YzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9OYXZpZ2F0aW9uQWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
TmF2aWdhdGlvbkFjdGlvbi5jcHAKQEAgLTM4LDEwICszOCwxNyBAQAogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKK3N0YXRpYyBHbG9iYWxGcmFtZUlkZW50aWZpZXIgY3JlYXRlR2xvYmFsRnJhbWVJ
ZGVudGlmaWVyKGNvbnN0IERvY3VtZW50JiBkb2N1bWVudCkKK3sKKyAgICBpZiAoZG9jdW1lbnQu
ZnJhbWUoKSkKKyAgICAgICAgcmV0dXJuIHsgZG9jdW1lbnQuZnJhbWUoKS0+bG9hZGVyKCkuY2xp
ZW50KCkucGFnZUlEKCkudmFsdWVPcihQYWdlSWRlbnRpZmllciB7IH0pLCBkb2N1bWVudC5mcmFt
ZSgpLT5sb2FkZXIoKS5jbGllbnQoKS5mcmFtZUlEKCkudmFsdWVPcihGcmFtZUlkZW50aWZpZXIg
eyB9KSB9OworICAgIHJldHVybiBHbG9iYWxGcmFtZUlkZW50aWZpZXIoKTsKK30KKwogTmF2aWdh
dGlvbkFjdGlvbjo6UmVxdWVzdGVyOjpSZXF1ZXN0ZXIoY29uc3QgRG9jdW1lbnQmIGRvY3VtZW50
KQogICAgIDogbV91cmwgeyBVUkwgeyBkb2N1bWVudC51cmwoKSB9IH0KICAgICAsIG1fb3JpZ2lu
IHsgbWFrZVJlZlB0cihkb2N1bWVudC5zZWN1cml0eU9yaWdpbigpKSB9Ci0gICAgLCBtX3BhZ2VJ
REFuZEZyYW1lSURQYWlyIHsgZG9jdW1lbnQuZnJhbWUoKSA/IHN0ZDo6bWFrZV9wYWlyKGRvY3Vt
ZW50LmZyYW1lKCktPmxvYWRlcigpLmNsaWVudCgpLnBhZ2VJRCgpLnZhbHVlT3IoUGFnZUlkZW50
aWZpZXIgeyB9KSwgZG9jdW1lbnQuZnJhbWUoKS0+bG9hZGVyKCkuY2xpZW50KCkuZnJhbWVJRCgp
LnZhbHVlT3IoRnJhbWVJZGVudGlmaWVyIHsgfSkpIDogc3RkOjptYWtlX3BhaXI8UGFnZUlkZW50
aWZpZXIsIEZyYW1lSWRlbnRpZmllcj4oeyB9LCB7IH0pIH0KKyAgICAsIG1fZ2xvYmFsRnJhbWVJ
ZGVudGlmaWVyKGNyZWF0ZUdsb2JhbEZyYW1lSWRlbnRpZmllcihkb2N1bWVudCkpCiB7CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uQWN0aW9uLmggYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvbkFjdGlvbi5oCmluZGV4IDBhMDIxZDRmYzc5
ZDk2YjNmMmE4OGJhZTQwNDU2MTkxMDRjZTkwYjIuLjY5OTRkZjM4MDcwYjcyZjZlNjJjZGRkNjYz
N2Y0MDNhNWZiNTQ0NjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0
aW9uQWN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25BY3Rpb24u
aApAQCAtMzAsMTAgKzMwLDkgQEAKIAogI2luY2x1ZGUgIkFkQ2xpY2tBdHRyaWJ1dGlvbi5oIgog
I2luY2x1ZGUgIkJhY2tGb3J3YXJkSXRlbUlkZW50aWZpZXIuaCIKLSNpbmNsdWRlICJGcmFtZUlk
ZW50aWZpZXIuaCIKICNpbmNsdWRlICJGcmFtZUxvYWRlclR5cGVzLmgiCisjaW5jbHVkZSAiR2xv
YmFsRnJhbWVJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiTGF5b3V0UG9pbnQuaCIKLSNpbmNsdWRl
ICJQYWdlSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVxdWVzdC5oIgogI2luY2x1
ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAiVXNlckdlc3R1cmVJbmRpY2F0b3IuaCIK
QEAgLTY1LDE5ICs2NCwxNyBAQCBwdWJsaWM6CiAgICAgTmF2aWdhdGlvbkFjdGlvbihOYXZpZ2F0
aW9uQWN0aW9uJiYpOwogICAgIE5hdmlnYXRpb25BY3Rpb24mIG9wZXJhdG9yPShOYXZpZ2F0aW9u
QWN0aW9uJiYpOwogCi0gICAgdXNpbmcgUGFnZUlEQW5kRnJhbWVJRFBhaXIgPSBzdGQ6OnBhaXI8
UGFnZUlkZW50aWZpZXIsIEZyYW1lSWRlbnRpZmllcj47IC8vIEZJWE1FOiBVc2UgR2xvYmFsRnJh
bWVJZGVudGlmaWVyLgogICAgIGNsYXNzIFJlcXVlc3RlciB7CiAgICAgcHVibGljOgogICAgICAg
ICBSZXF1ZXN0ZXIoY29uc3QgRG9jdW1lbnQmKTsKIAogICAgICAgICBjb25zdCBVUkwmIHVybCgp
IGNvbnN0IHsgcmV0dXJuIG1fdXJsOyB9CiAgICAgICAgIGNvbnN0IFNlY3VyaXR5T3JpZ2luJiBz
ZWN1cml0eU9yaWdpbigpIGNvbnN0IHsgcmV0dXJuICptX29yaWdpbjsgfQotICAgICAgICBQYWdl
SWRlbnRpZmllciBwYWdlSUQoKSBjb25zdCB7IHJldHVybiBtX3BhZ2VJREFuZEZyYW1lSURQYWly
LmZpcnN0OyB9Ci0gICAgICAgIEZyYW1lSWRlbnRpZmllciBmcmFtZUlEKCkgY29uc3QgeyByZXR1
cm4gbV9wYWdlSURBbmRGcmFtZUlEUGFpci5zZWNvbmQ7IH0KKyAgICAgICAgY29uc3QgR2xvYmFs
RnJhbWVJZGVudGlmaWVyJiBnbG9iYWxGcmFtZUlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBt
X2dsb2JhbEZyYW1lSWRlbnRpZmllcjsgfQogICAgIHByaXZhdGU6CiAgICAgICAgIFVSTCBtX3Vy
bDsKICAgICAgICAgUmVmUHRyPFNlY3VyaXR5T3JpZ2luPiBtX29yaWdpbjsKLSAgICAgICAgUGFn
ZUlEQW5kRnJhbWVJRFBhaXIgbV9wYWdlSURBbmRGcmFtZUlEUGFpcjsKKyAgICAgICAgR2xvYmFs
RnJhbWVJZGVudGlmaWVyIG1fZ2xvYmFsRnJhbWVJZGVudGlmaWVyOwogICAgIH07CiAgICAgY29u
c3QgT3B0aW9uYWw8UmVxdWVzdGVyPiYgcmVxdWVzdGVyKCkgY29uc3QgeyByZXR1cm4gbV9yZXF1
ZXN0ZXI7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKaW5kZXggZGUyMTY2NDc2
YjZlNzNiMWJiODYyOTIwYjc5YWI4MzRjZjlmMGNkYi4uNDQxODVkNWE3Mjg2NmJmZjY0MDBjZjcz
OGI1ZTE5ZTNiMGE1MWY3YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCkBAIC05
MjcsNyArOTI3LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQ
b2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKGNvbnN0IE5hdmlnYXQKICAgICBBU1NFUlQobmF2aWdh
dGlvbkFjdGlvbi5yZXF1ZXN0ZXIoKSk7CiAgICAgYXV0byByZXF1ZXN0ZXIgPSBuYXZpZ2F0aW9u
QWN0aW9uLnJlcXVlc3RlcigpLnZhbHVlKCk7CiAKLSAgICBhdXRvKiByZXF1ZXN0aW5nRnJhbWUg
PSByZXF1ZXN0ZXIuZnJhbWVJRCgpID8gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkud2ViRnJhbWUo
cmVxdWVzdGVyLmZyYW1lSUQoKSkgOiBudWxscHRyOworICAgIGF1dG8qIHJlcXVlc3RpbmdGcmFt
ZSA9IHJlcXVlc3Rlci5nbG9iYWxGcmFtZUlkZW50aWZpZXIoKS5mcmFtZUlEID8gV2ViUHJvY2Vz
czo6c2luZ2xldG9uKCkud2ViRnJhbWUocmVxdWVzdGVyLmdsb2JhbEZyYW1lSWRlbnRpZmllcigp
LmZyYW1lSUQpIDogbnVsbHB0cjsKICAgICBPcHRpb25hbDxXZWJDb3JlOjpGcmFtZUlkZW50aWZp
ZXI+IG9yaWdpbmF0aW5nRnJhbWVJRDsKICAgICBPcHRpb25hbDxXZWJDb3JlOjpGcmFtZUlkZW50
aWZpZXI+IHBhcmVudEZyYW1lSUQ7CiAgICAgaWYgKHJlcXVlc3RpbmdGcmFtZSkgewpAQCAtOTQ1
LDggKzk0NSw4IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9s
aWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihjb25zdCBOYXZpZ2F0CiAgICAgfTsKIAogICAgIE9wdGlv
bmFsPFdlYlBhZ2VQcm94eUlkZW50aWZpZXI+IG9yaWdpbmF0aW5nUGFnZUlEOwotICAgIGlmIChy
ZXF1ZXN0ZXIucGFnZUlEKCkpIHsKLSAgICAgICAgaWYgKGF1dG8qIHdlYlBhZ2UgPSBXZWJQcm9j
ZXNzOjpzaW5nbGV0b24oKS53ZWJQYWdlKHJlcXVlc3Rlci5wYWdlSUQoKSkpCisgICAgaWYgKGF1
dG8mIHBhZ2VJRCA9IHJlcXVlc3Rlci5nbG9iYWxGcmFtZUlkZW50aWZpZXIoKS5wYWdlSUQpIHsK
KyAgICAgICAgaWYgKGF1dG8qIHdlYlBhZ2UgPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS53ZWJQ
YWdlKHBhZ2VJRCkpCiAgICAgICAgICAgICBvcmlnaW5hdGluZ1BhZ2VJRCA9IHdlYlBhZ2UtPndl
YlBhZ2VQcm94eUlkZW50aWZpZXIoKTsKICAgICB9CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>