<?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>206798</bug_id>
          
          <creation_ts>2020-01-25 07:52:26 -0800</creation_ts>
          <short_desc>Tighten up some of the drag state machine logic</short_desc>
          <delta_ts>2020-01-26 03:50:30 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>UI Events</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="Darin Adler">darin</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          <cc>ddkilzer</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1611035</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-01-25 07:52:26 -0800</bug_when>
    <thetext>Tighten up some of the drag state machine logic</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611036</commentid>
    <comment_count>1</comment_count>
      <attachid>388774</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-01-25 07:57:08 -0800</bug_when>
    <thetext>Created attachment 388774
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611039</commentid>
    <comment_count>2</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-01-25 07:58:44 -0800</bug_when>
    <thetext>There’s a chance this fixes a drag-related crash we’ve been seeing, but I haven’t been able to reproduce the crash, fully understand it, or make a test case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611098</commentid>
    <comment_count>3</comment_count>
      <attachid>388774</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-01-25 12:36:38 -0800</bug_when>
    <thetext>Comment on attachment 388774
Patch

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

Thanks for the patch! r=me with the build fix.

&gt; Source/WebCore/page/EventHandler.cpp:3651
&gt; +    if (dragState().source &amp;&amp; dragState().dataTransfer() &amp;&amp; dragState().shouldDispatchEvents) {

`dragState().dataTransfer()` =&gt; `dragState().dataTransfer`

I wonder if it might be nice to pull the (source &amp;&amp; dataTransfer &amp;&amp; shouldDispatchEvents) check into either a helper function or method on DragState, since we have it in two places here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611118</commentid>
    <comment_count>4</comment_count>
      <attachid>388792</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-01-25 16:57:24 -0800</bug_when>
    <thetext>Created attachment 388792
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611119</commentid>
    <comment_count>5</comment_count>
      <attachid>388774</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-01-25 16:58:06 -0800</bug_when>
    <thetext>Comment on attachment 388774
Patch

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

&gt;&gt; Source/WebCore/page/EventHandler.cpp:3651
&gt;&gt; +    if (dragState().source &amp;&amp; dragState().dataTransfer() &amp;&amp; dragState().shouldDispatchEvents) {
&gt; 
&gt; `dragState().dataTransfer()` =&gt; `dragState().dataTransfer`
&gt; 
&gt; I wonder if it might be nice to pull the (source &amp;&amp; dataTransfer &amp;&amp; shouldDispatchEvents) check into either a helper function or method on DragState, since we have it in two places here.

Sure, did that. Uploaded a new patch with the changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611120</commentid>
    <comment_count>6</comment_count>
      <attachid>388793</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-01-25 17:04:07 -0800</bug_when>
    <thetext>Created attachment 388793
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611123</commentid>
    <comment_count>7</comment_count>
      <attachid>388793</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-01-25 18:43:40 -0800</bug_when>
    <thetext>Comment on attachment 388793
Patch

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

&gt; Source/WebCore/page/EventHandler.h:429
&gt; +    static bool shouldDispatchEventsToDragSourceElement();

Just realized this can just be a free function; doesn’t have to be a class member.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611124</commentid>
    <comment_count>8</comment_count>
      <attachid>388793</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-01-25 18:50:23 -0800</bug_when>
    <thetext>Comment on attachment 388793
Patch

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

&gt;&gt; Source/WebCore/page/EventHandler.h:429
&gt;&gt; +    static bool shouldDispatchEventsToDragSourceElement();
&gt; 
&gt; Just realized this can just be a free function; doesn’t have to be a class member.

No that&apos;s wrong. It does need to be a member function so it can have access to dragState().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611139</commentid>
    <comment_count>9</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-01-25 22:33:48 -0800</bug_when>
    <thetext>Committed r255128: &lt;https://trac.webkit.org/changeset/255128&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1611154</commentid>
    <comment_count>10</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2020-01-26 03:50:30 -0800</bug_when>
    <thetext>&lt;rdar://problem/58837212&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>388774</attachid>
            <date>2020-01-25 07:57:08 -0800</date>
            <delta_ts>2020-01-25 16:57:23 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-206798-20200125075703.patch</filename>
            <type>text/plain</type>
            <size>5947</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU1MTE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWQ3NmQwMTk4ZmI5MDM2
OTczOTc2OTc2OTkxYjkzM2Q3ZmYwNjIzOS4uNTY0YjFhZGZkNDU0MzcyMTMyOTE1NWVlNWQ1NDQz
MWY1MTg3MTAwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTAxLTI1ICBEYXJp
biBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBUaWdodGVuIHVwIHNvbWUgb2Yg
dGhlIGRyYWcgc3RhdGUgbWFjaGluZSBsb2dpYworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA2Nzk4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpFdmVudEhhbmRsZXI6OnVwZGF0ZURyYWdBbmREcm9wKTogQ2FsbCBkaXNwYXRjaERy
YWdTcmNFdmVudCB1bmNvbmRpdGlvbmFsbHksCisgICAgICAgIHNpbmNlIGl0IG5vdyBoYXMgdGhl
IHNtYXJ0cyB0byBvbmx5IGRpc3BhdGNoIGFuIGV2ZW50IHdoZW4gd2UgYXJlIHN1cHBvc2VkIHRv
LgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpjYW5jZWxEcmFnQW5kRHJvcCk6IERp
dHRvLgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpkcmFnU291cmNlRW5kZWRBdCk6
IEFkZCBhIG51bGwgY2hlY2sgZm9yIGRhdGFUcmFuc2ZlciBiZWZvcmUKKyAgICAgICAgY2FsbGlu
ZyBzZXREZXN0aW5hdGlvbk9wZXJhdGlvbiBvbiBpdCwgc2luY2UgdGhlcmUgaXNuJ3QgYW4gb2J2
aW91cyBpcm9uY2xhZCBndWFyYW50ZWUKKyAgICAgICAgd2UgbWlnaHQgYmUgaGVyZSB3aXRob3V0
IGEgYW4gYWN0dWFsIGRyYWcgaW4gcHJvY2VzcyBhbmQgYSBkYXRhVHJhbnNmZXIgb2JqZWN0IGFs
bG9jYXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6ZGlzcGF0Y2hEcmFnU3Jj
RXZlbnQpOiBEaXR0by4gTW92ZWQgdGhlIG51bGwgY2hlY2sgb2Ygc291cmNlCisgICAgICAgIGFu
ZCBjaGVjayBvZiBzaG91bGREaXNwYXRjaEV2ZW50cyB0aGF0IGFsbCBjYWxsZXJzIGFyZSBkb2lu
ZyBoZXJlLiBBZGRlZCBhIG51bGwgY2hlY2sKKyAgICAgICAgb2YgZGF0YVRyYW5zZmVyLCBmb3Ig
dGhlIHNhbWUgcmVhc29uIGFzIGFib3ZlIChubyBvYnZpb3VzIGlyb25jbGFkIGd1YXJhbnRlZSku
CisKIDIwMjAtMDEtMjUgIHlvdWVubiBmYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAg
ICAgIEhUTUxNZWRpYUVsZW1lbnQgc2hvdWxkIG5vdCByZW1vdmUgdGhlIG1lZGlhIHNlc3Npb24g
YXQgRE9NIHN1c3BlbnNpb24gdGltZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9F
dmVudEhhbmRsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCmlu
ZGV4IDUyOWVjYjA3Y2RjODgwZDM3Yjk2NmVhNWNmYTdjNmIyYjhkZDRlZjAuLmVmN2Y3NTM4ZGRl
NjdmZjMzZGU0Y2NhNmY0MzRjMmI5MmNiYTY3ZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFu
ZGxlci5jcHAKQEAgLTIzODIsOCArMjM4Miw3IEBAIEV2ZW50SGFuZGxlcjo6RHJhZ1RhcmdldFJl
c3BvbnNlIEV2ZW50SGFuZGxlcjo6dXBkYXRlRHJhZ0FuZERyb3AoY29uc3QgUGxhdGZvcm1NCiAg
ICAgICAgICAgICAgICAgcmVzcG9uc2UgPSB0YXJnZXRGcmFtZS0+ZXZlbnRIYW5kbGVyKCkudXBk
YXRlRHJhZ0FuZERyb3AoZXZlbnQsIG1ha2VQYXN0ZWJvYXJkLCBzb3VyY2VPcGVyYXRpb24sIGRy
YWdnaW5nRmlsZXMpOwogICAgICAgICB9IGVsc2UgaWYgKG5ld1RhcmdldCkgewogICAgICAgICAg
ICAgLy8gQXMgcGVyIHNlY3Rpb24gNy45LjQgb2YgdGhlIEhUTUwgNSBzcGVjLiwgd2UgbXVzdCBh
bHdheXMgZmlyZSBhIGRyYWcgZXZlbnQgYmVmb3JlIGZpcmluZyBhIGRyYWdlbnRlciwgZHJhZ2xl
YXZlLCBvciBkcmFnb3ZlciBldmVudC4KLSAgICAgICAgICAgIGlmIChkcmFnU3RhdGUoKS5zb3Vy
Y2UgJiYgZHJhZ1N0YXRlKCkuc2hvdWxkRGlzcGF0Y2hFdmVudHMpCi0gICAgICAgICAgICAgICAg
ZGlzcGF0Y2hEcmFnU3JjRXZlbnQoZXZlbnROYW1lcygpLmRyYWdFdmVudCwgZXZlbnQpOworICAg
ICAgICAgICAgZGlzcGF0Y2hEcmFnU3JjRXZlbnQoZXZlbnROYW1lcygpLmRyYWdFdmVudCwgZXZl
bnQpOwogICAgICAgICAgICAgcmVzcG9uc2UgPSBkaXNwYXRjaERyYWdFbnRlck9yRHJhZ092ZXJF
dmVudChldmVudE5hbWVzKCkuZHJhZ2VudGVyRXZlbnQsICpuZXdUYXJnZXQsIGV2ZW50LCBtYWtl
UGFzdGVib2FyZCgpLCBzb3VyY2VPcGVyYXRpb24sIGRyYWdnaW5nRmlsZXMpOwogICAgICAgICB9
CiAKQEAgLTI0MDksNyArMjQwOCw3IEBAIEV2ZW50SGFuZGxlcjo6RHJhZ1RhcmdldFJlc3BvbnNl
IEV2ZW50SGFuZGxlcjo6dXBkYXRlRHJhZ0FuZERyb3AoY29uc3QgUGxhdGZvcm1NCiAgICAgICAg
ICAgICAgICAgcmVzcG9uc2UgPSB0YXJnZXRGcmFtZS0+ZXZlbnRIYW5kbGVyKCkudXBkYXRlRHJh
Z0FuZERyb3AoZXZlbnQsIG1ha2VQYXN0ZWJvYXJkLCBzb3VyY2VPcGVyYXRpb24sIGRyYWdnaW5n
RmlsZXMpOwogICAgICAgICB9IGVsc2UgaWYgKG5ld1RhcmdldCkgewogICAgICAgICAgICAgLy8g
Tm90ZSwgd2hlbiBkZWFsaW5nIHdpdGggc3ViLWZyYW1lcywgd2UgbWF5IG5lZWQgdG8gZmlyZSBv
bmx5IGEgZHJhZ292ZXIgZXZlbnQgYXMgYSBkcmFnIGV2ZW50IG1heSBoYXZlIGJlZW4gZmlyZWQg
ZWFybGllci4KLSAgICAgICAgICAgIGlmICghbV9zaG91bGRPbmx5RmlyZURyYWdPdmVyRXZlbnQg
JiYgZHJhZ1N0YXRlKCkuc291cmNlICYmIGRyYWdTdGF0ZSgpLnNob3VsZERpc3BhdGNoRXZlbnRz
KQorICAgICAgICAgICAgaWYgKCFtX3Nob3VsZE9ubHlGaXJlRHJhZ092ZXJFdmVudCkKICAgICAg
ICAgICAgICAgICBkaXNwYXRjaERyYWdTcmNFdmVudChldmVudE5hbWVzKCkuZHJhZ0V2ZW50LCBl
dmVudCk7CiAgICAgICAgICAgICByZXNwb25zZSA9IGRpc3BhdGNoRHJhZ0VudGVyT3JEcmFnT3Zl
ckV2ZW50KGV2ZW50TmFtZXMoKS5kcmFnb3ZlckV2ZW50LCAqbmV3VGFyZ2V0LCBldmVudCwgbWFr
ZVBhc3RlYm9hcmQoKSwgc291cmNlT3BlcmF0aW9uLCBkcmFnZ2luZ0ZpbGVzKTsKICAgICAgICAg
ICAgIG1fc2hvdWxkT25seUZpcmVEcmFnT3ZlckV2ZW50ID0gZmFsc2U7CkBAIC0yNDI4LDggKzI0
MjcsNyBAQCB2b2lkIEV2ZW50SGFuZGxlcjo6Y2FuY2VsRHJhZ0FuZERyb3AoY29uc3QgUGxhdGZv
cm1Nb3VzZUV2ZW50JiBldmVudCwgc3RkOjp1bmlxdQogICAgICAgICBpZiAodGFyZ2V0RnJhbWUp
CiAgICAgICAgICAgICB0YXJnZXRGcmFtZS0+ZXZlbnRIYW5kbGVyKCkuY2FuY2VsRHJhZ0FuZERy
b3AoZXZlbnQsIFdURk1vdmUocGFzdGVib2FyZCksIHNvdXJjZU9wZXJhdGlvbiwgZHJhZ2dpbmdG
aWxlcyk7CiAgICAgfSBlbHNlIGlmIChtX2RyYWdUYXJnZXQpIHsKLSAgICAgICAgaWYgKGRyYWdT
dGF0ZSgpLnNvdXJjZSAmJiBkcmFnU3RhdGUoKS5zaG91bGREaXNwYXRjaEV2ZW50cykKLSAgICAg
ICAgICAgIGRpc3BhdGNoRHJhZ1NyY0V2ZW50KGV2ZW50TmFtZXMoKS5kcmFnRXZlbnQsIGV2ZW50
KTsKKyAgICAgICAgZGlzcGF0Y2hEcmFnU3JjRXZlbnQoZXZlbnROYW1lcygpLmRyYWdFdmVudCwg
ZXZlbnQpOwogCiAgICAgICAgIGF1dG8gZGF0YVRyYW5zZmVyID0gRGF0YVRyYW5zZmVyOjpjcmVh
dGVGb3JVcGRhdGluZ0Ryb3BUYXJnZXQobV9kcmFnVGFyZ2V0LT5kb2N1bWVudCgpLCBXVEZNb3Zl
KHBhc3RlYm9hcmQpLCBzb3VyY2VPcGVyYXRpb24sIGRyYWdnaW5nRmlsZXMpOwogICAgICAgICBk
aXNwYXRjaERyYWdFdmVudChldmVudE5hbWVzKCkuZHJhZ2xlYXZlRXZlbnQsICptX2RyYWdUYXJn
ZXQsIGV2ZW50LCBkYXRhVHJhbnNmZXIuZ2V0KCkpOwpAQCAtMzY1MCw3ICszNjQ4LDcgQEAgdm9p
ZCBFdmVudEhhbmRsZXI6OmRyYWdTb3VyY2VFbmRlZEF0KGNvbnN0IFBsYXRmb3JtTW91c2VFdmVu
dCYgZXZlbnQsIERyYWdPcGVyYXQKICAgICBIaXRUZXN0UmVxdWVzdCByZXF1ZXN0KEhpdFRlc3RS
ZXF1ZXN0OjpSZWxlYXNlIHwgSGl0VGVzdFJlcXVlc3Q6OkRpc2FsbG93VXNlckFnZW50U2hhZG93
Q29udGVudCk7CiAgICAgcHJlcGFyZU1vdXNlRXZlbnQocmVxdWVzdCwgZXZlbnQpOwogCi0gICAg
aWYgKGRyYWdTdGF0ZSgpLnNvdXJjZSAmJiBkcmFnU3RhdGUoKS5zaG91bGREaXNwYXRjaEV2ZW50
cykgeworICAgIGlmIChkcmFnU3RhdGUoKS5zb3VyY2UgJiYgZHJhZ1N0YXRlKCkuZGF0YVRyYW5z
ZmVyKCkgJiYgZHJhZ1N0YXRlKCkuc2hvdWxkRGlzcGF0Y2hFdmVudHMpIHsKICAgICAgICAgZHJh
Z1N0YXRlKCkuZGF0YVRyYW5zZmVyLT5zZXREZXN0aW5hdGlvbk9wZXJhdGlvbihvcGVyYXRpb24p
OwogICAgICAgICBkaXNwYXRjaERyYWdTcmNFdmVudChldmVudE5hbWVzKCkuZHJhZ2VuZEV2ZW50
LCBldmVudCk7CiAgICAgfQpAQCAtMzY3Niw3ICszNjc0LDggQEAgdm9pZCBFdmVudEhhbmRsZXI6
OnVwZGF0ZURyYWdTdGF0ZUFmdGVyRWRpdERyYWdJZk5lZWRlZChFbGVtZW50JiByb290RWRpdGFi
bGVFbGUKIAogdm9pZCBFdmVudEhhbmRsZXI6OmRpc3BhdGNoRHJhZ1NyY0V2ZW50KGNvbnN0IEF0
b21TdHJpbmcmIGV2ZW50VHlwZSwgY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiBldmVudCkKIHsK
LSAgICBBU1NFUlQoZHJhZ1N0YXRlKCkuZGF0YVRyYW5zZmVyKTsKKyAgICBpZiAoIWRyYWdTdGF0
ZSgpLnNvdXJjZSB8fCAhZHJhZ1N0YXRlKCkuZGF0YVRyYW5zZmVyIHx8ICFkcmFnU3RhdGUoKS5z
aG91bGREaXNwYXRjaEV2ZW50cykKKyAgICAgICAgcmV0dXJuOwogICAgIGRpc3BhdGNoRHJhZ0V2
ZW50KGV2ZW50VHlwZSwgKmRyYWdTdGF0ZSgpLnNvdXJjZSwgZXZlbnQsICpkcmFnU3RhdGUoKS5k
YXRhVHJhbnNmZXIpOwogfQogCkBAIC0zNzc5LDYgKzM3NzgsNyBAQCBib29sIEV2ZW50SGFuZGxl
cjo6aGFuZGxlRHJhZyhjb25zdCBNb3VzZUV2ZW50V2l0aEhpdFRlc3RSZXN1bHRzJiBldmVudCwg
Q2hlY2tEcgogICAgIERyYWdPcGVyYXRpb24gc3JjT3AgPSBEcmFnT3BlcmF0aW9uTm9uZTsgICAg
ICAKICAgICAKICAgICAvLyBUaGlzIGRvZXMgd29yayBvbmx5IGlmIHdlIG1pc3NlZCBhIGRyYWdF
bmQuIERvIGl0IGFueXdheSwganVzdCB0byBtYWtlIHN1cmUgdGhlIG9sZCBkYXRhVHJhbnNmZXIg
Z2V0cyBudW1iZWQuCisgICAgLy8gRklYTUU6IENvbnNpZGVyIGRvaW5nIHRoaXMgZWFybGllciBp
biB0aGlzIGZ1bmN0aW9uIGFzIHRoZSBlYXJsaWVzdCBwb2ludCB3ZSdyZSBzdXJlIGl0IHdvdWxk
IGJlIHNhZmUgdG8gZHJvcCBhbiBvbGQgZHJhZy4KICAgICBpbnZhbGlkYXRlRGF0YVRyYW5zZmVy
KCk7CiAKICAgICBkcmFnU3RhdGUoKS5kYXRhVHJhbnNmZXIgPSBEYXRhVHJhbnNmZXI6OmNyZWF0
ZUZvckRyYWcoKTsKQEAgLTM4MzMsNyArMzgzMyw3IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpoYW5k
bGVEcmFnKGNvbnN0IE1vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMmIGV2ZW50LCBDaGVja0Ry
CiAgICAgICAgICAgICBkaXNwYXRjaERyYWdTcmNFdmVudChldmVudE5hbWVzKCkuZHJhZ2VuZEV2
ZW50LCBldmVudC5ldmVudCgpKTsKICAgICAgICAgICAgIG1fbW91c2VEb3duTWF5U3RhcnREcmFn
ID0gZmFsc2U7CiAgICAgICAgIH0KLSAgICB9IAorICAgIH0KIAogICAgIGlmICghbV9tb3VzZURv
d25NYXlTdGFydERyYWcpIHsKICAgICAgICAgLy8gU29tZXRoaW5nIGZhaWxlZCB0byBzdGFydCB0
aGUgZHJhZywgY2xlYW4gdXAuCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>388792</attachid>
            <date>2020-01-25 16:57:24 -0800</date>
            <delta_ts>2020-01-25 17:04:05 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-206798-20200125165719.patch</filename>
            <type>text/plain</type>
            <size>9692</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU1MTI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGVkOWY2MmJjMjMyMjRm
ZWVlM2FiMjhlNTMzMTczYTQzMTJiODg2MC4uZmE0ZDk3NDUxYjMyMzM1ZDg3M2U1MzhmZjk1NTE4
ZDQ3NDNlNjJiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDIwLTAxLTI1ICBEYXJp
biBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBUaWdodGVuIHVwIHNvbWUgb2Yg
dGhlIGRyYWcgc3RhdGUgbWFjaGluZSBsb2dpYworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA2Nzk4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgV2Vuc29u
IEhzaWVoLgorCisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIuaDogQWRkZWQgc2hvdWxkRGlz
cGF0Y2hFdmVudHNUb0RyYWdTb3VyY2VFbGVtZW50IGZ1bmN0aW9uIGFuZCByZW5hbWVkCisgICAg
ICAgIHRoZSBleGlzdGluZyBkaXNwYXRjaERyYWdTcmNFdmVudCBmdW5jdGlvbiB0byBkaXNwYXRj
aEV2ZW50VG9EcmFnU291cmNlRWxlbWVudC4KKworICAgICAgICAqIHBhZ2UvRXZlbnRIYW5kbGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6dXBkYXRlRHJhZ0FuZERyb3Ap
OiBDYWxsIHRoZSByZW5hbWVkIGRpc3BhdGNoRXZlbnRUb0RyYWdTb3VyY2VFbGVtZW50CisgICAg
ICAgIHVuY29uZGl0aW9uYWxseSwgc2luY2UgaXQgbm93IGhhcyB0aGUgc21hcnRzIHRvIG9ubHkg
ZGlzcGF0Y2ggYW4gZXZlbnQgd2hlbiB3ZSBhcmUgc3VwcG9zZWQgdG8uCisgICAgICAgIChXZWJD
b3JlOjpFdmVudEhhbmRsZXI6OmNhbmNlbERyYWdBbmREcm9wKTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpFdmVudEhhbmRsZXI6OmRyYWdTb3VyY2VFbmRlZEF0KTogQ2FsbCB0aGUgbmV3IHNo
b3VsZERpc3BhdGNoRXZlbnRzVG9EcmFnU291cmNlRWxlbWVudAorICAgICAgICBmdW5jdGlvbiBi
ZWNhdXNlIG9mIHRoZSBudWxsIGNoZWNrIGl0IGRvZXMgZm9yIGRhdGFUcmFuc2ZlciwgYmVmb3Jl
IGNhbGxpbmcgc2V0RGVzdGluYXRpb25PcGVyYXRpb24KKyAgICAgICAgb24gdGhlIGRhdGFUcmFu
c2Zlciwgc2luY2UgdGhlcmUgaXNuJ3QgYW4gb2J2aW91cyBpcm9uY2xhZCBndWFyYW50ZWUgd2Ug
bWlnaHQgYmUgaGVyZSB3aXRob3V0IGFuCisgICAgICAgIGFjdHVhbCBkcmFnIGZ1bGx5IGluIHBy
b2Nlc3MgYW5kIGEgZGF0YVRyYW5zZmVyIG9iamVjdCBhbGxvY2F0ZWQuIEFsc28gY2FsbCB0aGUg
cmVuYW1lZAorICAgICAgICBkaXNwYXRjaEV2ZW50VG9EcmFnU291cmNlRWxlbWVudCBieSBpdHMg
bmV3IG5hbWUuCisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OnNob3VsZERpc3BhdGNo
RHJhZ1NvdXJjZUV2ZW50cyk6IEFkZGVkLiBDaGVja3MgdGhyZSB0aHJlZSBjb25kaXRpb25zIHRo
YXQKKyAgICAgICAgYWZmZWN0IHdoZXRoZXIgd2Ugc2hvdWxkIGRpc3BhdGNoIGV2ZW50cyB0byB0
aGUgZHJhZyBzb3VyY2UuIEZpcnN0IHRoYXQgdGhlcmUgaXMgYSBkcmFnIHNvdXJjZS4KKyAgICAg
ICAgU2Vjb25kIHRoYXQgdGhlcmUgaXMgYSBkYXRhVHJhbnNmZXIgb2JqZWN0LCBpbmRpY2F0aW5n
IHRoYXQgd2UgZ290IGZhciBlbm91Z2ggaW4gdGhlIGxvZ2ljIHRvCisgICAgICAgIGFjdHVhbGx5
IHN0YXJ0IGEgZHJhZy4gVGhpcmQgdGhhdCBzaG91bGREaXNwYXRjaEV2ZW50cyBpcyB0cnVlLCBp
bmRpY2F0aW5nIHRoaXMgaXMgdGhlIHR5cGUgb2YKKyAgICAgICAgZHJhZyB0aGF0IHNob3VsZCBi
ZSB2aXNpYmxlIHRvIHRoZSB3ZWJzaXRlIGNvbnRlbnQgYW5kIHNvIGV2ZW50cyBzaG91bGQgYmUg
ZGlzcGF0Y2hlZC4KKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6ZGlzcGF0Y2hFdmVu
dFRvRHJhZ1NvdXJjZUVsZW1lbnQpOiBDYWxsIHNob3VsZERpc3BhdGNoRHJhZ1NvdXJjZUV2ZW50
cworICAgICAgICBiZWZvcmUgZGlzcGF0Y2hpbmcgdGhlIGV2ZW50LCBzbyB0aGF0IGNhbGxlcnMg
ZG9uJ3QgYWxsIGhhdmUgdG8gZG8gdGhhdCBjaGVjay4KKwogMjAyMC0wMS0yNSAgTWFyayBMYW0g
IDxtYXJrLmxhbUBhcHBsZS5jb20+CiAKICAgICAgICAgSW50cm9kdWNlIGEgZ2V0VlRhYmxlUG9p
bnRlcigpIHV0aWxpdHkgZnVuY3Rpb24uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0V2ZW50SGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAK
aW5kZXggNTI5ZWNiMDdjZGM4ODBkMzdiOTY2ZWE1Y2ZhN2M2YjJiOGRkNGVmMC4uNTdiZjcxOGVh
YWFhZjZjODcxOTAwMDg2YmVhNWQzNzVkZTAwOGUzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRI
YW5kbGVyLmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAx
NyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYt
MjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIw
MDYgQWxleGV5IFByb3NrdXJ5YWtvdiAoYXBAd2Via2l0Lm9yZykKICAqIENvcHlyaWdodCAoQykg
MjAxMiBEaWdpYSBQbGMuIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQogICoKQEAgLTIzODIs
OCArMjM4Miw3IEBAIEV2ZW50SGFuZGxlcjo6RHJhZ1RhcmdldFJlc3BvbnNlIEV2ZW50SGFuZGxl
cjo6dXBkYXRlRHJhZ0FuZERyb3AoY29uc3QgUGxhdGZvcm1NCiAgICAgICAgICAgICAgICAgcmVz
cG9uc2UgPSB0YXJnZXRGcmFtZS0+ZXZlbnRIYW5kbGVyKCkudXBkYXRlRHJhZ0FuZERyb3AoZXZl
bnQsIG1ha2VQYXN0ZWJvYXJkLCBzb3VyY2VPcGVyYXRpb24sIGRyYWdnaW5nRmlsZXMpOwogICAg
ICAgICB9IGVsc2UgaWYgKG5ld1RhcmdldCkgewogICAgICAgICAgICAgLy8gQXMgcGVyIHNlY3Rp
b24gNy45LjQgb2YgdGhlIEhUTUwgNSBzcGVjLiwgd2UgbXVzdCBhbHdheXMgZmlyZSBhIGRyYWcg
ZXZlbnQgYmVmb3JlIGZpcmluZyBhIGRyYWdlbnRlciwgZHJhZ2xlYXZlLCBvciBkcmFnb3ZlciBl
dmVudC4KLSAgICAgICAgICAgIGlmIChkcmFnU3RhdGUoKS5zb3VyY2UgJiYgZHJhZ1N0YXRlKCku
c2hvdWxkRGlzcGF0Y2hFdmVudHMpCi0gICAgICAgICAgICAgICAgZGlzcGF0Y2hEcmFnU3JjRXZl
bnQoZXZlbnROYW1lcygpLmRyYWdFdmVudCwgZXZlbnQpOworICAgICAgICAgICAgZGlzcGF0Y2hF
dmVudFRvRHJhZ1NvdXJjZUVsZW1lbnQoZXZlbnROYW1lcygpLmRyYWdFdmVudCwgZXZlbnQpOwog
ICAgICAgICAgICAgcmVzcG9uc2UgPSBkaXNwYXRjaERyYWdFbnRlck9yRHJhZ092ZXJFdmVudChl
dmVudE5hbWVzKCkuZHJhZ2VudGVyRXZlbnQsICpuZXdUYXJnZXQsIGV2ZW50LCBtYWtlUGFzdGVi
b2FyZCgpLCBzb3VyY2VPcGVyYXRpb24sIGRyYWdnaW5nRmlsZXMpOwogICAgICAgICB9CiAKQEAg
LTI0MDksOCArMjQwOCw4IEBAIEV2ZW50SGFuZGxlcjo6RHJhZ1RhcmdldFJlc3BvbnNlIEV2ZW50
SGFuZGxlcjo6dXBkYXRlRHJhZ0FuZERyb3AoY29uc3QgUGxhdGZvcm1NCiAgICAgICAgICAgICAg
ICAgcmVzcG9uc2UgPSB0YXJnZXRGcmFtZS0+ZXZlbnRIYW5kbGVyKCkudXBkYXRlRHJhZ0FuZERy
b3AoZXZlbnQsIG1ha2VQYXN0ZWJvYXJkLCBzb3VyY2VPcGVyYXRpb24sIGRyYWdnaW5nRmlsZXMp
OwogICAgICAgICB9IGVsc2UgaWYgKG5ld1RhcmdldCkgewogICAgICAgICAgICAgLy8gTm90ZSwg
d2hlbiBkZWFsaW5nIHdpdGggc3ViLWZyYW1lcywgd2UgbWF5IG5lZWQgdG8gZmlyZSBvbmx5IGEg
ZHJhZ292ZXIgZXZlbnQgYXMgYSBkcmFnIGV2ZW50IG1heSBoYXZlIGJlZW4gZmlyZWQgZWFybGll
ci4KLSAgICAgICAgICAgIGlmICghbV9zaG91bGRPbmx5RmlyZURyYWdPdmVyRXZlbnQgJiYgZHJh
Z1N0YXRlKCkuc291cmNlICYmIGRyYWdTdGF0ZSgpLnNob3VsZERpc3BhdGNoRXZlbnRzKQotICAg
ICAgICAgICAgICAgIGRpc3BhdGNoRHJhZ1NyY0V2ZW50KGV2ZW50TmFtZXMoKS5kcmFnRXZlbnQs
IGV2ZW50KTsKKyAgICAgICAgICAgIGlmICghbV9zaG91bGRPbmx5RmlyZURyYWdPdmVyRXZlbnQp
CisgICAgICAgICAgICAgICAgZGlzcGF0Y2hFdmVudFRvRHJhZ1NvdXJjZUVsZW1lbnQoZXZlbnRO
YW1lcygpLmRyYWdFdmVudCwgZXZlbnQpOwogICAgICAgICAgICAgcmVzcG9uc2UgPSBkaXNwYXRj
aERyYWdFbnRlck9yRHJhZ092ZXJFdmVudChldmVudE5hbWVzKCkuZHJhZ292ZXJFdmVudCwgKm5l
d1RhcmdldCwgZXZlbnQsIG1ha2VQYXN0ZWJvYXJkKCksIHNvdXJjZU9wZXJhdGlvbiwgZHJhZ2dp
bmdGaWxlcyk7CiAgICAgICAgICAgICBtX3Nob3VsZE9ubHlGaXJlRHJhZ092ZXJFdmVudCA9IGZh
bHNlOwogICAgICAgICB9CkBAIC0yNDI4LDggKzI0MjcsNyBAQCB2b2lkIEV2ZW50SGFuZGxlcjo6
Y2FuY2VsRHJhZ0FuZERyb3AoY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiBldmVudCwgc3RkOjp1
bmlxdQogICAgICAgICBpZiAodGFyZ2V0RnJhbWUpCiAgICAgICAgICAgICB0YXJnZXRGcmFtZS0+
ZXZlbnRIYW5kbGVyKCkuY2FuY2VsRHJhZ0FuZERyb3AoZXZlbnQsIFdURk1vdmUocGFzdGVib2Fy
ZCksIHNvdXJjZU9wZXJhdGlvbiwgZHJhZ2dpbmdGaWxlcyk7CiAgICAgfSBlbHNlIGlmIChtX2Ry
YWdUYXJnZXQpIHsKLSAgICAgICAgaWYgKGRyYWdTdGF0ZSgpLnNvdXJjZSAmJiBkcmFnU3RhdGUo
KS5zaG91bGREaXNwYXRjaEV2ZW50cykKLSAgICAgICAgICAgIGRpc3BhdGNoRHJhZ1NyY0V2ZW50
KGV2ZW50TmFtZXMoKS5kcmFnRXZlbnQsIGV2ZW50KTsKKyAgICAgICAgZGlzcGF0Y2hFdmVudFRv
RHJhZ1NvdXJjZUVsZW1lbnQoZXZlbnROYW1lcygpLmRyYWdFdmVudCwgZXZlbnQpOwogCiAgICAg
ICAgIGF1dG8gZGF0YVRyYW5zZmVyID0gRGF0YVRyYW5zZmVyOjpjcmVhdGVGb3JVcGRhdGluZ0Ry
b3BUYXJnZXQobV9kcmFnVGFyZ2V0LT5kb2N1bWVudCgpLCBXVEZNb3ZlKHBhc3RlYm9hcmQpLCBz
b3VyY2VPcGVyYXRpb24sIGRyYWdnaW5nRmlsZXMpOwogICAgICAgICBkaXNwYXRjaERyYWdFdmVu
dChldmVudE5hbWVzKCkuZHJhZ2xlYXZlRXZlbnQsICptX2RyYWdUYXJnZXQsIGV2ZW50LCBkYXRh
VHJhbnNmZXIuZ2V0KCkpOwpAQCAtMzY1MCw5ICszNjQ4LDkgQEAgdm9pZCBFdmVudEhhbmRsZXI6
OmRyYWdTb3VyY2VFbmRlZEF0KGNvbnN0IFBsYXRmb3JtTW91c2VFdmVudCYgZXZlbnQsIERyYWdP
cGVyYXQKICAgICBIaXRUZXN0UmVxdWVzdCByZXF1ZXN0KEhpdFRlc3RSZXF1ZXN0OjpSZWxlYXNl
IHwgSGl0VGVzdFJlcXVlc3Q6OkRpc2FsbG93VXNlckFnZW50U2hhZG93Q29udGVudCk7CiAgICAg
cHJlcGFyZU1vdXNlRXZlbnQocmVxdWVzdCwgZXZlbnQpOwogCi0gICAgaWYgKGRyYWdTdGF0ZSgp
LnNvdXJjZSAmJiBkcmFnU3RhdGUoKS5zaG91bGREaXNwYXRjaEV2ZW50cykgeworICAgIGlmIChz
aG91bGREaXNwYXRjaEV2ZW50c1RvRHJhZ1NvdXJjZUVsZW1lbnQoKSkgewogICAgICAgICBkcmFn
U3RhdGUoKS5kYXRhVHJhbnNmZXItPnNldERlc3RpbmF0aW9uT3BlcmF0aW9uKG9wZXJhdGlvbik7
Ci0gICAgICAgIGRpc3BhdGNoRHJhZ1NyY0V2ZW50KGV2ZW50TmFtZXMoKS5kcmFnZW5kRXZlbnQs
IGV2ZW50KTsKKyAgICAgICAgZGlzcGF0Y2hFdmVudFRvRHJhZ1NvdXJjZUVsZW1lbnQoZXZlbnRO
YW1lcygpLmRyYWdlbmRFdmVudCwgZXZlbnQpOwogICAgIH0KICAgICBpbnZhbGlkYXRlRGF0YVRy
YW5zZmVyKCk7CiAKQEAgLTM2NzQsMTAgKzM2NzIsMTUgQEAgdm9pZCBFdmVudEhhbmRsZXI6OnVw
ZGF0ZURyYWdTdGF0ZUFmdGVyRWRpdERyYWdJZk5lZWRlZChFbGVtZW50JiByb290RWRpdGFibGVF
bGUKICAgICAgICAgZHJhZ1N0YXRlKCkuc291cmNlID0gJnJvb3RFZGl0YWJsZUVsZW1lbnQ7CiB9
CiAKLXZvaWQgRXZlbnRIYW5kbGVyOjpkaXNwYXRjaERyYWdTcmNFdmVudChjb25zdCBBdG9tU3Ry
aW5nJiBldmVudFR5cGUsIGNvbnN0IFBsYXRmb3JtTW91c2VFdmVudCYgZXZlbnQpCitib29sIEV2
ZW50SGFuZGxlcjo6c2hvdWxkRGlzcGF0Y2hFdmVudHNUb0RyYWdTb3VyY2VFbGVtZW50KCkKIHsK
LSAgICBBU1NFUlQoZHJhZ1N0YXRlKCkuZGF0YVRyYW5zZmVyKTsKLSAgICBkaXNwYXRjaERyYWdF
dmVudChldmVudFR5cGUsICpkcmFnU3RhdGUoKS5zb3VyY2UsIGV2ZW50LCAqZHJhZ1N0YXRlKCku
ZGF0YVRyYW5zZmVyKTsKKyAgICByZXR1cm4gZHJhZ1N0YXRlKCkuc291cmNlICYmIGRyYWdTdGF0
ZSgpLmRhdGFUcmFuc2ZlciAmJiBkcmFnU3RhdGUoKS5zaG91bGREaXNwYXRjaEV2ZW50czsKK30K
Kwordm9pZCBFdmVudEhhbmRsZXI6OmRpc3BhdGNoRXZlbnRUb0RyYWdTb3VyY2VFbGVtZW50KGNv
bnN0IEF0b21TdHJpbmcmIGV2ZW50VHlwZSwgY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiBldmVu
dCkKK3sKKyAgICBpZiAoc2hvdWxkRGlzcGF0Y2hFdmVudHNUb0RyYWdTb3VyY2VFbGVtZW50KCkp
CisgICAgICAgIGRpc3BhdGNoRHJhZ0V2ZW50KGV2ZW50VHlwZSwgKmRyYWdTdGF0ZSgpLnNvdXJj
ZSwgZXZlbnQsICpkcmFnU3RhdGUoKS5kYXRhVHJhbnNmZXIpOwogfQogCiBib29sIEV2ZW50SGFu
ZGxlcjo6ZGlzcGF0Y2hEcmFnU3RhcnRFdmVudE9uU291cmNlRWxlbWVudChEYXRhVHJhbnNmZXIm
IGRhdGFUcmFuc2ZlcikKQEAgLTM3NzksNiArMzc4Miw3IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpo
YW5kbGVEcmFnKGNvbnN0IE1vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMmIGV2ZW50LCBDaGVj
a0RyCiAgICAgRHJhZ09wZXJhdGlvbiBzcmNPcCA9IERyYWdPcGVyYXRpb25Ob25lOyAgICAgIAog
ICAgIAogICAgIC8vIFRoaXMgZG9lcyB3b3JrIG9ubHkgaWYgd2UgbWlzc2VkIGEgZHJhZ0VuZC4g
RG8gaXQgYW55d2F5LCBqdXN0IHRvIG1ha2Ugc3VyZSB0aGUgb2xkIGRhdGFUcmFuc2ZlciBnZXRz
IG51bWJlZC4KKyAgICAvLyBGSVhNRTogQ29uc2lkZXIgZG9pbmcgdGhpcyBlYXJsaWVyIGluIHRo
aXMgZnVuY3Rpb24gYXMgdGhlIGVhcmxpZXN0IHBvaW50IHdlJ3JlIHN1cmUgaXQgd291bGQgYmUg
c2FmZSB0byBkcm9wIGFuIG9sZCBkcmFnLgogICAgIGludmFsaWRhdGVEYXRhVHJhbnNmZXIoKTsK
IAogICAgIGRyYWdTdGF0ZSgpLmRhdGFUcmFuc2ZlciA9IERhdGFUcmFuc2Zlcjo6Y3JlYXRlRm9y
RHJhZygpOwpAQCAtMzc5OCw3ICszODAyLDcgQEAgYm9vbCBFdmVudEhhbmRsZXI6OmhhbmRsZURy
YWcoY29uc3QgTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cyYgZXZlbnQsIENoZWNrRHIKICAg
ICAgICAgICAgICAgICBhdXRvIGRlbHRhID0gbV9tb3VzZURvd25Qb3MgLSByb3VuZGVkSW50UG9p
bnQoYWJzb2x1dGVQb3NpdGlvbik7CiAgICAgICAgICAgICAgICAgZHJhZ1N0YXRlKCkuZGF0YVRy
YW5zZmVyLT5zZXREcmFnSW1hZ2UoZHJhZ1N0YXRlKCkuc291cmNlLmdldCgpLCBkZWx0YS53aWR0
aCgpLCBkZWx0YS5oZWlnaHQoKSk7CiAgICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAg
ICAgIGRpc3BhdGNoRHJhZ1NyY0V2ZW50KGV2ZW50TmFtZXMoKS5kcmFnZW5kRXZlbnQsIGV2ZW50
LmV2ZW50KCkpOworICAgICAgICAgICAgICAgIGRpc3BhdGNoRXZlbnRUb0RyYWdTb3VyY2VFbGVt
ZW50KGV2ZW50TmFtZXMoKS5kcmFnZW5kRXZlbnQsIGV2ZW50LmV2ZW50KCkpOwogICAgICAgICAg
ICAgICAgIG1fbW91c2VEb3duTWF5U3RhcnREcmFnID0gZmFsc2U7CiAgICAgICAgICAgICAgICAg
aW52YWxpZGF0ZURhdGFUcmFuc2ZlcigpOwogICAgICAgICAgICAgICAgIGRyYWdTdGF0ZSgpLnNv
dXJjZSA9IG51bGxwdHI7CkBAIC0zODI4LDEyICszODMyLDEyIEBAIGJvb2wgRXZlbnRIYW5kbGVy
OjpoYW5kbGVEcmFnKGNvbnN0IE1vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMmIGV2ZW50LCBD
aGVja0RyCiAgICAgICAgICAgICBtX21vdXNlRG93bk1heVN0YXJ0RHJhZyA9IGZhbHNlOwogICAg
ICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKGRyYWdTdGF0ZSgp
LnNvdXJjZSAmJiBkcmFnU3RhdGUoKS5zaG91bGREaXNwYXRjaEV2ZW50cykgeworICAgICAgICBp
ZiAoc2hvdWxkRGlzcGF0Y2hFdmVudHNUb0RyYWdTb3VyY2VFbGVtZW50KCkpIHsKICAgICAgICAg
ICAgIC8vIERyYWcgd2FzIGNhbm5lZCBhdCB0aGUgbGFzdCBtaW51dGUuIFdlIG93ZSBkcmFnU291
cmNlIGEgZHJhZ2VuZCBldmVudC4KLSAgICAgICAgICAgIGRpc3BhdGNoRHJhZ1NyY0V2ZW50KGV2
ZW50TmFtZXMoKS5kcmFnZW5kRXZlbnQsIGV2ZW50LmV2ZW50KCkpOworICAgICAgICAgICAgZGlz
cGF0Y2hFdmVudFRvRHJhZ1NvdXJjZUVsZW1lbnQoZXZlbnROYW1lcygpLmRyYWdlbmRFdmVudCwg
ZXZlbnQuZXZlbnQoKSk7CiAgICAgICAgICAgICBtX21vdXNlRG93bk1heVN0YXJ0RHJhZyA9IGZh
bHNlOwogICAgICAgICB9Ci0gICAgfSAKKyAgICB9CiAKICAgICBpZiAoIW1fbW91c2VEb3duTWF5
U3RhcnREcmFnKSB7CiAgICAgICAgIC8vIFNvbWV0aGluZyBmYWlsZWQgdG8gc3RhcnQgdGhlIGRy
YWcsIGNsZWFuIHVwLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRs
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmgKaW5kZXggZDMzYWQ0N2Q0
YWEwYTc3NmIwYjI3YWI2ODJkNTc3ZmQ0NzE3NTU2ZC4uNjVhNTJjM2NhZGQ4NTEwMDYzMTkzNzRi
NTU0M2E3NzNlMGJhOTI1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhh
bmRsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5oCkBAIC0xLDUg
KzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNi0yMDE4IEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNi0yMDIwIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNDI2
LDcgKzQyNiw4IEBAIHByaXZhdGU6CiAjaWYgRU5BQkxFKERSQUdfU1VQUE9SVCkKICAgICB2b2lk
IGNsZWFyRHJhZ1N0YXRlKCk7CiAKLSAgICB2b2lkIGRpc3BhdGNoRHJhZ1NyY0V2ZW50KGNvbnN0
IEF0b21TdHJpbmcmIGV2ZW50VHlwZSwgY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50Jik7CisgICAg
c3RhdGljIGJvb2wgc2hvdWxkRGlzcGF0Y2hFdmVudHNUb0RyYWdTb3VyY2VFbGVtZW50KCk7Cisg
ICAgc3RhdGljIHZvaWQgZGlzcGF0Y2hFdmVudFRvRHJhZ1NvdXJjZUVsZW1lbnQoY29uc3QgQXRv
bVN0cmluZyYgZXZlbnRUeXBlLCBjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQmKTsKICAgICBib29s
IGRpc3BhdGNoRHJhZ1N0YXJ0RXZlbnRPblNvdXJjZUVsZW1lbnQoRGF0YVRyYW5zZmVyJik7CiAK
ICAgICBib29sIGRyYWdIeXN0ZXJlc2lzRXhjZWVkZWQoY29uc3QgRmxvYXRQb2ludCYpIGNvbnN0
Owo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>388793</attachid>
            <date>2020-01-25 17:04:07 -0800</date>
            <delta_ts>2020-01-25 17:04:07 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-206798-20200125170402.patch</filename>
            <type>text/plain</type>
            <size>9685</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU1MTI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGVkOWY2MmJjMjMyMjRm
ZWVlM2FiMjhlNTMzMTczYTQzMTJiODg2MC4uZmE0ZDk3NDUxYjMyMzM1ZDg3M2U1MzhmZjk1NTE4
ZDQ3NDNlNjJiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDIwLTAxLTI1ICBEYXJp
biBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBUaWdodGVuIHVwIHNvbWUgb2Yg
dGhlIGRyYWcgc3RhdGUgbWFjaGluZSBsb2dpYworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA2Nzk4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgV2Vuc29u
IEhzaWVoLgorCisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIuaDogQWRkZWQgc2hvdWxkRGlz
cGF0Y2hFdmVudHNUb0RyYWdTb3VyY2VFbGVtZW50IGZ1bmN0aW9uIGFuZCByZW5hbWVkCisgICAg
ICAgIHRoZSBleGlzdGluZyBkaXNwYXRjaERyYWdTcmNFdmVudCBmdW5jdGlvbiB0byBkaXNwYXRj
aEV2ZW50VG9EcmFnU291cmNlRWxlbWVudC4KKworICAgICAgICAqIHBhZ2UvRXZlbnRIYW5kbGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6dXBkYXRlRHJhZ0FuZERyb3Ap
OiBDYWxsIHRoZSByZW5hbWVkIGRpc3BhdGNoRXZlbnRUb0RyYWdTb3VyY2VFbGVtZW50CisgICAg
ICAgIHVuY29uZGl0aW9uYWxseSwgc2luY2UgaXQgbm93IGhhcyB0aGUgc21hcnRzIHRvIG9ubHkg
ZGlzcGF0Y2ggYW4gZXZlbnQgd2hlbiB3ZSBhcmUgc3VwcG9zZWQgdG8uCisgICAgICAgIChXZWJD
b3JlOjpFdmVudEhhbmRsZXI6OmNhbmNlbERyYWdBbmREcm9wKTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpFdmVudEhhbmRsZXI6OmRyYWdTb3VyY2VFbmRlZEF0KTogQ2FsbCB0aGUgbmV3IHNo
b3VsZERpc3BhdGNoRXZlbnRzVG9EcmFnU291cmNlRWxlbWVudAorICAgICAgICBmdW5jdGlvbiBi
ZWNhdXNlIG9mIHRoZSBudWxsIGNoZWNrIGl0IGRvZXMgZm9yIGRhdGFUcmFuc2ZlciwgYmVmb3Jl
IGNhbGxpbmcgc2V0RGVzdGluYXRpb25PcGVyYXRpb24KKyAgICAgICAgb24gdGhlIGRhdGFUcmFu
c2Zlciwgc2luY2UgdGhlcmUgaXNuJ3QgYW4gb2J2aW91cyBpcm9uY2xhZCBndWFyYW50ZWUgd2Ug
bWlnaHQgYmUgaGVyZSB3aXRob3V0IGFuCisgICAgICAgIGFjdHVhbCBkcmFnIGZ1bGx5IGluIHBy
b2Nlc3MgYW5kIGEgZGF0YVRyYW5zZmVyIG9iamVjdCBhbGxvY2F0ZWQuIEFsc28gY2FsbCB0aGUg
cmVuYW1lZAorICAgICAgICBkaXNwYXRjaEV2ZW50VG9EcmFnU291cmNlRWxlbWVudCBieSBpdHMg
bmV3IG5hbWUuCisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OnNob3VsZERpc3BhdGNo
RHJhZ1NvdXJjZUV2ZW50cyk6IEFkZGVkLiBDaGVja3MgdGhyZSB0aHJlZSBjb25kaXRpb25zIHRo
YXQKKyAgICAgICAgYWZmZWN0IHdoZXRoZXIgd2Ugc2hvdWxkIGRpc3BhdGNoIGV2ZW50cyB0byB0
aGUgZHJhZyBzb3VyY2UuIEZpcnN0IHRoYXQgdGhlcmUgaXMgYSBkcmFnIHNvdXJjZS4KKyAgICAg
ICAgU2Vjb25kIHRoYXQgdGhlcmUgaXMgYSBkYXRhVHJhbnNmZXIgb2JqZWN0LCBpbmRpY2F0aW5n
IHRoYXQgd2UgZ290IGZhciBlbm91Z2ggaW4gdGhlIGxvZ2ljIHRvCisgICAgICAgIGFjdHVhbGx5
IHN0YXJ0IGEgZHJhZy4gVGhpcmQgdGhhdCBzaG91bGREaXNwYXRjaEV2ZW50cyBpcyB0cnVlLCBp
bmRpY2F0aW5nIHRoaXMgaXMgdGhlIHR5cGUgb2YKKyAgICAgICAgZHJhZyB0aGF0IHNob3VsZCBi
ZSB2aXNpYmxlIHRvIHRoZSB3ZWJzaXRlIGNvbnRlbnQgYW5kIHNvIGV2ZW50cyBzaG91bGQgYmUg
ZGlzcGF0Y2hlZC4KKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6ZGlzcGF0Y2hFdmVu
dFRvRHJhZ1NvdXJjZUVsZW1lbnQpOiBDYWxsIHNob3VsZERpc3BhdGNoRHJhZ1NvdXJjZUV2ZW50
cworICAgICAgICBiZWZvcmUgZGlzcGF0Y2hpbmcgdGhlIGV2ZW50LCBzbyB0aGF0IGNhbGxlcnMg
ZG9uJ3QgYWxsIGhhdmUgdG8gZG8gdGhhdCBjaGVjay4KKwogMjAyMC0wMS0yNSAgTWFyayBMYW0g
IDxtYXJrLmxhbUBhcHBsZS5jb20+CiAKICAgICAgICAgSW50cm9kdWNlIGEgZ2V0VlRhYmxlUG9p
bnRlcigpIHV0aWxpdHkgZnVuY3Rpb24uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0V2ZW50SGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAK
aW5kZXggNTI5ZWNiMDdjZGM4ODBkMzdiOTY2ZWE1Y2ZhN2M2YjJiOGRkNGVmMC4uNTdiZjcxOGVh
YWFhZjZjODcxOTAwMDg2YmVhNWQzNzVkZTAwOGUzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRI
YW5kbGVyLmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYtMjAx
NyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYt
MjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIw
MDYgQWxleGV5IFByb3NrdXJ5YWtvdiAoYXBAd2Via2l0Lm9yZykKICAqIENvcHlyaWdodCAoQykg
MjAxMiBEaWdpYSBQbGMuIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQogICoKQEAgLTIzODIs
OCArMjM4Miw3IEBAIEV2ZW50SGFuZGxlcjo6RHJhZ1RhcmdldFJlc3BvbnNlIEV2ZW50SGFuZGxl
cjo6dXBkYXRlRHJhZ0FuZERyb3AoY29uc3QgUGxhdGZvcm1NCiAgICAgICAgICAgICAgICAgcmVz
cG9uc2UgPSB0YXJnZXRGcmFtZS0+ZXZlbnRIYW5kbGVyKCkudXBkYXRlRHJhZ0FuZERyb3AoZXZl
bnQsIG1ha2VQYXN0ZWJvYXJkLCBzb3VyY2VPcGVyYXRpb24sIGRyYWdnaW5nRmlsZXMpOwogICAg
ICAgICB9IGVsc2UgaWYgKG5ld1RhcmdldCkgewogICAgICAgICAgICAgLy8gQXMgcGVyIHNlY3Rp
b24gNy45LjQgb2YgdGhlIEhUTUwgNSBzcGVjLiwgd2UgbXVzdCBhbHdheXMgZmlyZSBhIGRyYWcg
ZXZlbnQgYmVmb3JlIGZpcmluZyBhIGRyYWdlbnRlciwgZHJhZ2xlYXZlLCBvciBkcmFnb3ZlciBl
dmVudC4KLSAgICAgICAgICAgIGlmIChkcmFnU3RhdGUoKS5zb3VyY2UgJiYgZHJhZ1N0YXRlKCku
c2hvdWxkRGlzcGF0Y2hFdmVudHMpCi0gICAgICAgICAgICAgICAgZGlzcGF0Y2hEcmFnU3JjRXZl
bnQoZXZlbnROYW1lcygpLmRyYWdFdmVudCwgZXZlbnQpOworICAgICAgICAgICAgZGlzcGF0Y2hF
dmVudFRvRHJhZ1NvdXJjZUVsZW1lbnQoZXZlbnROYW1lcygpLmRyYWdFdmVudCwgZXZlbnQpOwog
ICAgICAgICAgICAgcmVzcG9uc2UgPSBkaXNwYXRjaERyYWdFbnRlck9yRHJhZ092ZXJFdmVudChl
dmVudE5hbWVzKCkuZHJhZ2VudGVyRXZlbnQsICpuZXdUYXJnZXQsIGV2ZW50LCBtYWtlUGFzdGVi
b2FyZCgpLCBzb3VyY2VPcGVyYXRpb24sIGRyYWdnaW5nRmlsZXMpOwogICAgICAgICB9CiAKQEAg
LTI0MDksOCArMjQwOCw4IEBAIEV2ZW50SGFuZGxlcjo6RHJhZ1RhcmdldFJlc3BvbnNlIEV2ZW50
SGFuZGxlcjo6dXBkYXRlRHJhZ0FuZERyb3AoY29uc3QgUGxhdGZvcm1NCiAgICAgICAgICAgICAg
ICAgcmVzcG9uc2UgPSB0YXJnZXRGcmFtZS0+ZXZlbnRIYW5kbGVyKCkudXBkYXRlRHJhZ0FuZERy
b3AoZXZlbnQsIG1ha2VQYXN0ZWJvYXJkLCBzb3VyY2VPcGVyYXRpb24sIGRyYWdnaW5nRmlsZXMp
OwogICAgICAgICB9IGVsc2UgaWYgKG5ld1RhcmdldCkgewogICAgICAgICAgICAgLy8gTm90ZSwg
d2hlbiBkZWFsaW5nIHdpdGggc3ViLWZyYW1lcywgd2UgbWF5IG5lZWQgdG8gZmlyZSBvbmx5IGEg
ZHJhZ292ZXIgZXZlbnQgYXMgYSBkcmFnIGV2ZW50IG1heSBoYXZlIGJlZW4gZmlyZWQgZWFybGll
ci4KLSAgICAgICAgICAgIGlmICghbV9zaG91bGRPbmx5RmlyZURyYWdPdmVyRXZlbnQgJiYgZHJh
Z1N0YXRlKCkuc291cmNlICYmIGRyYWdTdGF0ZSgpLnNob3VsZERpc3BhdGNoRXZlbnRzKQotICAg
ICAgICAgICAgICAgIGRpc3BhdGNoRHJhZ1NyY0V2ZW50KGV2ZW50TmFtZXMoKS5kcmFnRXZlbnQs
IGV2ZW50KTsKKyAgICAgICAgICAgIGlmICghbV9zaG91bGRPbmx5RmlyZURyYWdPdmVyRXZlbnQp
CisgICAgICAgICAgICAgICAgZGlzcGF0Y2hFdmVudFRvRHJhZ1NvdXJjZUVsZW1lbnQoZXZlbnRO
YW1lcygpLmRyYWdFdmVudCwgZXZlbnQpOwogICAgICAgICAgICAgcmVzcG9uc2UgPSBkaXNwYXRj
aERyYWdFbnRlck9yRHJhZ092ZXJFdmVudChldmVudE5hbWVzKCkuZHJhZ292ZXJFdmVudCwgKm5l
d1RhcmdldCwgZXZlbnQsIG1ha2VQYXN0ZWJvYXJkKCksIHNvdXJjZU9wZXJhdGlvbiwgZHJhZ2dp
bmdGaWxlcyk7CiAgICAgICAgICAgICBtX3Nob3VsZE9ubHlGaXJlRHJhZ092ZXJFdmVudCA9IGZh
bHNlOwogICAgICAgICB9CkBAIC0yNDI4LDggKzI0MjcsNyBAQCB2b2lkIEV2ZW50SGFuZGxlcjo6
Y2FuY2VsRHJhZ0FuZERyb3AoY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiBldmVudCwgc3RkOjp1
bmlxdQogICAgICAgICBpZiAodGFyZ2V0RnJhbWUpCiAgICAgICAgICAgICB0YXJnZXRGcmFtZS0+
ZXZlbnRIYW5kbGVyKCkuY2FuY2VsRHJhZ0FuZERyb3AoZXZlbnQsIFdURk1vdmUocGFzdGVib2Fy
ZCksIHNvdXJjZU9wZXJhdGlvbiwgZHJhZ2dpbmdGaWxlcyk7CiAgICAgfSBlbHNlIGlmIChtX2Ry
YWdUYXJnZXQpIHsKLSAgICAgICAgaWYgKGRyYWdTdGF0ZSgpLnNvdXJjZSAmJiBkcmFnU3RhdGUo
KS5zaG91bGREaXNwYXRjaEV2ZW50cykKLSAgICAgICAgICAgIGRpc3BhdGNoRHJhZ1NyY0V2ZW50
KGV2ZW50TmFtZXMoKS5kcmFnRXZlbnQsIGV2ZW50KTsKKyAgICAgICAgZGlzcGF0Y2hFdmVudFRv
RHJhZ1NvdXJjZUVsZW1lbnQoZXZlbnROYW1lcygpLmRyYWdFdmVudCwgZXZlbnQpOwogCiAgICAg
ICAgIGF1dG8gZGF0YVRyYW5zZmVyID0gRGF0YVRyYW5zZmVyOjpjcmVhdGVGb3JVcGRhdGluZ0Ry
b3BUYXJnZXQobV9kcmFnVGFyZ2V0LT5kb2N1bWVudCgpLCBXVEZNb3ZlKHBhc3RlYm9hcmQpLCBz
b3VyY2VPcGVyYXRpb24sIGRyYWdnaW5nRmlsZXMpOwogICAgICAgICBkaXNwYXRjaERyYWdFdmVu
dChldmVudE5hbWVzKCkuZHJhZ2xlYXZlRXZlbnQsICptX2RyYWdUYXJnZXQsIGV2ZW50LCBkYXRh
VHJhbnNmZXIuZ2V0KCkpOwpAQCAtMzY1MCw5ICszNjQ4LDkgQEAgdm9pZCBFdmVudEhhbmRsZXI6
OmRyYWdTb3VyY2VFbmRlZEF0KGNvbnN0IFBsYXRmb3JtTW91c2VFdmVudCYgZXZlbnQsIERyYWdP
cGVyYXQKICAgICBIaXRUZXN0UmVxdWVzdCByZXF1ZXN0KEhpdFRlc3RSZXF1ZXN0OjpSZWxlYXNl
IHwgSGl0VGVzdFJlcXVlc3Q6OkRpc2FsbG93VXNlckFnZW50U2hhZG93Q29udGVudCk7CiAgICAg
cHJlcGFyZU1vdXNlRXZlbnQocmVxdWVzdCwgZXZlbnQpOwogCi0gICAgaWYgKGRyYWdTdGF0ZSgp
LnNvdXJjZSAmJiBkcmFnU3RhdGUoKS5zaG91bGREaXNwYXRjaEV2ZW50cykgeworICAgIGlmIChz
aG91bGREaXNwYXRjaEV2ZW50c1RvRHJhZ1NvdXJjZUVsZW1lbnQoKSkgewogICAgICAgICBkcmFn
U3RhdGUoKS5kYXRhVHJhbnNmZXItPnNldERlc3RpbmF0aW9uT3BlcmF0aW9uKG9wZXJhdGlvbik7
Ci0gICAgICAgIGRpc3BhdGNoRHJhZ1NyY0V2ZW50KGV2ZW50TmFtZXMoKS5kcmFnZW5kRXZlbnQs
IGV2ZW50KTsKKyAgICAgICAgZGlzcGF0Y2hFdmVudFRvRHJhZ1NvdXJjZUVsZW1lbnQoZXZlbnRO
YW1lcygpLmRyYWdlbmRFdmVudCwgZXZlbnQpOwogICAgIH0KICAgICBpbnZhbGlkYXRlRGF0YVRy
YW5zZmVyKCk7CiAKQEAgLTM2NzQsMTAgKzM2NzIsMTUgQEAgdm9pZCBFdmVudEhhbmRsZXI6OnVw
ZGF0ZURyYWdTdGF0ZUFmdGVyRWRpdERyYWdJZk5lZWRlZChFbGVtZW50JiByb290RWRpdGFibGVF
bGUKICAgICAgICAgZHJhZ1N0YXRlKCkuc291cmNlID0gJnJvb3RFZGl0YWJsZUVsZW1lbnQ7CiB9
CiAKLXZvaWQgRXZlbnRIYW5kbGVyOjpkaXNwYXRjaERyYWdTcmNFdmVudChjb25zdCBBdG9tU3Ry
aW5nJiBldmVudFR5cGUsIGNvbnN0IFBsYXRmb3JtTW91c2VFdmVudCYgZXZlbnQpCitib29sIEV2
ZW50SGFuZGxlcjo6c2hvdWxkRGlzcGF0Y2hFdmVudHNUb0RyYWdTb3VyY2VFbGVtZW50KCkKIHsK
LSAgICBBU1NFUlQoZHJhZ1N0YXRlKCkuZGF0YVRyYW5zZmVyKTsKLSAgICBkaXNwYXRjaERyYWdF
dmVudChldmVudFR5cGUsICpkcmFnU3RhdGUoKS5zb3VyY2UsIGV2ZW50LCAqZHJhZ1N0YXRlKCku
ZGF0YVRyYW5zZmVyKTsKKyAgICByZXR1cm4gZHJhZ1N0YXRlKCkuc291cmNlICYmIGRyYWdTdGF0
ZSgpLmRhdGFUcmFuc2ZlciAmJiBkcmFnU3RhdGUoKS5zaG91bGREaXNwYXRjaEV2ZW50czsKK30K
Kwordm9pZCBFdmVudEhhbmRsZXI6OmRpc3BhdGNoRXZlbnRUb0RyYWdTb3VyY2VFbGVtZW50KGNv
bnN0IEF0b21TdHJpbmcmIGV2ZW50VHlwZSwgY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiBldmVu
dCkKK3sKKyAgICBpZiAoc2hvdWxkRGlzcGF0Y2hFdmVudHNUb0RyYWdTb3VyY2VFbGVtZW50KCkp
CisgICAgICAgIGRpc3BhdGNoRHJhZ0V2ZW50KGV2ZW50VHlwZSwgKmRyYWdTdGF0ZSgpLnNvdXJj
ZSwgZXZlbnQsICpkcmFnU3RhdGUoKS5kYXRhVHJhbnNmZXIpOwogfQogCiBib29sIEV2ZW50SGFu
ZGxlcjo6ZGlzcGF0Y2hEcmFnU3RhcnRFdmVudE9uU291cmNlRWxlbWVudChEYXRhVHJhbnNmZXIm
IGRhdGFUcmFuc2ZlcikKQEAgLTM3NzksNiArMzc4Miw3IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpo
YW5kbGVEcmFnKGNvbnN0IE1vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMmIGV2ZW50LCBDaGVj
a0RyCiAgICAgRHJhZ09wZXJhdGlvbiBzcmNPcCA9IERyYWdPcGVyYXRpb25Ob25lOyAgICAgIAog
ICAgIAogICAgIC8vIFRoaXMgZG9lcyB3b3JrIG9ubHkgaWYgd2UgbWlzc2VkIGEgZHJhZ0VuZC4g
RG8gaXQgYW55d2F5LCBqdXN0IHRvIG1ha2Ugc3VyZSB0aGUgb2xkIGRhdGFUcmFuc2ZlciBnZXRz
IG51bWJlZC4KKyAgICAvLyBGSVhNRTogQ29uc2lkZXIgZG9pbmcgdGhpcyBlYXJsaWVyIGluIHRo
aXMgZnVuY3Rpb24gYXMgdGhlIGVhcmxpZXN0IHBvaW50IHdlJ3JlIHN1cmUgaXQgd291bGQgYmUg
c2FmZSB0byBkcm9wIGFuIG9sZCBkcmFnLgogICAgIGludmFsaWRhdGVEYXRhVHJhbnNmZXIoKTsK
IAogICAgIGRyYWdTdGF0ZSgpLmRhdGFUcmFuc2ZlciA9IERhdGFUcmFuc2Zlcjo6Y3JlYXRlRm9y
RHJhZygpOwpAQCAtMzc5OCw3ICszODAyLDcgQEAgYm9vbCBFdmVudEhhbmRsZXI6OmhhbmRsZURy
YWcoY29uc3QgTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cyYgZXZlbnQsIENoZWNrRHIKICAg
ICAgICAgICAgICAgICBhdXRvIGRlbHRhID0gbV9tb3VzZURvd25Qb3MgLSByb3VuZGVkSW50UG9p
bnQoYWJzb2x1dGVQb3NpdGlvbik7CiAgICAgICAgICAgICAgICAgZHJhZ1N0YXRlKCkuZGF0YVRy
YW5zZmVyLT5zZXREcmFnSW1hZ2UoZHJhZ1N0YXRlKCkuc291cmNlLmdldCgpLCBkZWx0YS53aWR0
aCgpLCBkZWx0YS5oZWlnaHQoKSk7CiAgICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAg
ICAgIGRpc3BhdGNoRHJhZ1NyY0V2ZW50KGV2ZW50TmFtZXMoKS5kcmFnZW5kRXZlbnQsIGV2ZW50
LmV2ZW50KCkpOworICAgICAgICAgICAgICAgIGRpc3BhdGNoRXZlbnRUb0RyYWdTb3VyY2VFbGVt
ZW50KGV2ZW50TmFtZXMoKS5kcmFnZW5kRXZlbnQsIGV2ZW50LmV2ZW50KCkpOwogICAgICAgICAg
ICAgICAgIG1fbW91c2VEb3duTWF5U3RhcnREcmFnID0gZmFsc2U7CiAgICAgICAgICAgICAgICAg
aW52YWxpZGF0ZURhdGFUcmFuc2ZlcigpOwogICAgICAgICAgICAgICAgIGRyYWdTdGF0ZSgpLnNv
dXJjZSA9IG51bGxwdHI7CkBAIC0zODI4LDEyICszODMyLDEyIEBAIGJvb2wgRXZlbnRIYW5kbGVy
OjpoYW5kbGVEcmFnKGNvbnN0IE1vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMmIGV2ZW50LCBD
aGVja0RyCiAgICAgICAgICAgICBtX21vdXNlRG93bk1heVN0YXJ0RHJhZyA9IGZhbHNlOwogICAg
ICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKGRyYWdTdGF0ZSgp
LnNvdXJjZSAmJiBkcmFnU3RhdGUoKS5zaG91bGREaXNwYXRjaEV2ZW50cykgeworICAgICAgICBp
ZiAoc2hvdWxkRGlzcGF0Y2hFdmVudHNUb0RyYWdTb3VyY2VFbGVtZW50KCkpIHsKICAgICAgICAg
ICAgIC8vIERyYWcgd2FzIGNhbm5lZCBhdCB0aGUgbGFzdCBtaW51dGUuIFdlIG93ZSBkcmFnU291
cmNlIGEgZHJhZ2VuZCBldmVudC4KLSAgICAgICAgICAgIGRpc3BhdGNoRHJhZ1NyY0V2ZW50KGV2
ZW50TmFtZXMoKS5kcmFnZW5kRXZlbnQsIGV2ZW50LmV2ZW50KCkpOworICAgICAgICAgICAgZGlz
cGF0Y2hFdmVudFRvRHJhZ1NvdXJjZUVsZW1lbnQoZXZlbnROYW1lcygpLmRyYWdlbmRFdmVudCwg
ZXZlbnQuZXZlbnQoKSk7CiAgICAgICAgICAgICBtX21vdXNlRG93bk1heVN0YXJ0RHJhZyA9IGZh
bHNlOwogICAgICAgICB9Ci0gICAgfSAKKyAgICB9CiAKICAgICBpZiAoIW1fbW91c2VEb3duTWF5
U3RhcnREcmFnKSB7CiAgICAgICAgIC8vIFNvbWV0aGluZyBmYWlsZWQgdG8gc3RhcnQgdGhlIGRy
YWcsIGNsZWFuIHVwLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRs
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmgKaW5kZXggZDMzYWQ0N2Q0
YWEwYTc3NmIwYjI3YWI2ODJkNTc3ZmQ0NzE3NTU2ZC4uY2MxNTAwZmU4MmFkZTFiOWJhZWU0Y2Jm
Zjg1OGZmY2Q2ZjdhYmViOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhh
bmRsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5oCkBAIC0xLDUg
KzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNi0yMDE4IEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNi0yMDIwIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNDI2
LDcgKzQyNiw4IEBAIHByaXZhdGU6CiAjaWYgRU5BQkxFKERSQUdfU1VQUE9SVCkKICAgICB2b2lk
IGNsZWFyRHJhZ1N0YXRlKCk7CiAKLSAgICB2b2lkIGRpc3BhdGNoRHJhZ1NyY0V2ZW50KGNvbnN0
IEF0b21TdHJpbmcmIGV2ZW50VHlwZSwgY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50Jik7CisgICAg
c3RhdGljIGJvb2wgc2hvdWxkRGlzcGF0Y2hFdmVudHNUb0RyYWdTb3VyY2VFbGVtZW50KCk7Cisg
ICAgdm9pZCBkaXNwYXRjaEV2ZW50VG9EcmFnU291cmNlRWxlbWVudChjb25zdCBBdG9tU3RyaW5n
JiBldmVudFR5cGUsIGNvbnN0IFBsYXRmb3JtTW91c2VFdmVudCYpOwogICAgIGJvb2wgZGlzcGF0
Y2hEcmFnU3RhcnRFdmVudE9uU291cmNlRWxlbWVudChEYXRhVHJhbnNmZXImKTsKIAogICAgIGJv
b2wgZHJhZ0h5c3RlcmVzaXNFeGNlZWRlZChjb25zdCBGbG9hdFBvaW50JikgY29uc3Q7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>