<?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>191631</bug_id>
          
          <creation_ts>2018-11-14 04:28:06 -0800</creation_ts>
          <short_desc>[GStreamer][WebRTC] Add support for sending silence or silencing an incoming track</short_desc>
          <delta_ts>2018-11-15 06:40:24 -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>New Bugs</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="Thibault Saunier">tsaunier</reporter>
          <assigned_to name="Thibault Saunier">tsaunier</assigned_to>
          <cc>bugs-noreply</cc>
    
    <cc>calvaris</cc>
    
    <cc>commit-queue</cc>
    
    <cc>pnormand</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1478388</commentid>
    <comment_count>0</comment_count>
    <who name="Thibault Saunier">tsaunier</who>
    <bug_when>2018-11-14 04:28:06 -0800</bug_when>
    <thetext>[GStreamer][WebRTC] Add support for sending silence or silencing an incoming track</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478389</commentid>
    <comment_count>1</comment_count>
      <attachid>354796</attachid>
    <who name="Thibault Saunier">tsaunier</who>
    <bug_when>2018-11-14 04:45:49 -0800</bug_when>
    <thetext>Created attachment 354796
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478393</commentid>
    <comment_count>2</comment_count>
      <attachid>354799</attachid>
    <who name="Thibault Saunier">tsaunier</who>
    <bug_when>2018-11-14 04:52:25 -0800</bug_when>
    <thetext>Created attachment 354799
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478421</commentid>
    <comment_count>3</comment_count>
      <attachid>354805</attachid>
    <who name="Thibault Saunier">tsaunier</who>
    <bug_when>2018-11-14 07:15:45 -0800</bug_when>
    <thetext>Created attachment 354805
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478821</commentid>
    <comment_count>4</comment_count>
      <attachid>354805</attachid>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2018-11-15 04:14:55 -0800</bug_when>
    <thetext>Comment on attachment 354805
Patch

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

&gt; Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceLibWebRTC.cpp:127
&gt; +    GstMappedBuffer outmap(outbuf.get(), GST_MAP_READ);
&gt; +    if (isSilenced())
&gt; +        gst_audio_format_fill_silence(m_outputStreamDescription-&gt;getInfo()-&gt;finfo, outmap.data(), outmap.size());
&gt; +    else {
&gt; +        GstMappedBuffer inmap(inbuf.get(), GST_MAP_READ);

Both inmap and outmap should have more meaningful names and properly capitalized.

It looks like the flags for outmap should be WRITE instead of READ.

&gt; Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceLibWebRTC.cpp:131
&gt; +        if (!gst_audio_converter_samples(m_sampleConverter, static_cast&lt;GstAudioConverterFlags&gt;(0), in, inChunkSampleCount, out, outChunkSampleCount)) {

I was checking the m_sampleConverter in the .h and saw that it&apos;s a plain pointer. It should be turned into a GUniquePtr not now but at some point.

&gt; Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceLibWebRTC.cpp:142
&gt; +    sendAudioFrames(outmap.data(),
&gt; +        LibWebRTCAudioFormat::sampleSize,
&gt; +        static_cast&lt;int&gt;(m_outputStreamDescription-&gt;sampleRate()),
&gt; +        static_cast&lt;int&gt;(m_outputStreamDescription-&gt;numberOfChannels()),
&gt; +        outChunkSampleCount);

It won&apos;t probably fit in a single line but you can probably make two.

And I guess sendAudioFrames (which I couldn&apos;t find anywhere, I assume it&apos;s libwebrtc code) is going to copy that that from the mapped thing, otherwise nasty things can happen when it is unmapped, right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478832</commentid>
    <comment_count>5</comment_count>
      <attachid>354917</attachid>
    <who name="Thibault Saunier">tsaunier</who>
    <bug_when>2018-11-15 05:12:01 -0800</bug_when>
    <thetext>Created attachment 354917
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478833</commentid>
    <comment_count>6</comment_count>
      <attachid>354918</attachid>
    <who name="Thibault Saunier">tsaunier</who>
    <bug_when>2018-11-15 05:12:43 -0800</bug_when>
    <thetext>Created attachment 354918
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478834</commentid>
    <comment_count>7</comment_count>
    <who name="Thibault Saunier">tsaunier</who>
    <bug_when>2018-11-15 05:13:13 -0800</bug_when>
    <thetext>(In reply to Xabier Rodríguez Calvar from comment #4)
&gt; Comment on attachment 354805 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=354805&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceLibWebRTC.cpp:127
&gt; &gt; +    GstMappedBuffer outmap(outbuf.get(), GST_MAP_READ);
&gt; &gt; +    if (isSilenced())
&gt; &gt; +        gst_audio_format_fill_silence(m_outputStreamDescription-&gt;getInfo()-&gt;finfo, outmap.data(), outmap.size());
&gt; &gt; +    else {
&gt; &gt; +        GstMappedBuffer inmap(inbuf.get(), GST_MAP_READ);
&gt; 
&gt; Both inmap and outmap should have more meaningful names and properly
&gt; capitalized.

Well, inMap/outMap sounds meaningful in the context, if you have better name just suggest please :-)

&gt; It looks like the flags for outmap should be WRITE instead of READ.

Indeed, good catch.

&gt; &gt; Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceLibWebRTC.cpp:131
&gt; &gt; +        if (!gst_audio_converter_samples(m_sampleConverter, static_cast&lt;GstAudioConverterFlags&gt;(0), in, inChunkSampleCount, out, outChunkSampleCount)) {
&gt; 
&gt; I was checking the m_sampleConverter in the .h and saw that it&apos;s a plain
&gt; pointer. It should be turned into a GUniquePtr not now but at some point.

Indeed, would make sense.

&gt; &gt; Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceLibWebRTC.cpp:142
&gt; &gt; +    sendAudioFrames(outmap.data(),
&gt; &gt; +        LibWebRTCAudioFormat::sampleSize,
&gt; &gt; +        static_cast&lt;int&gt;(m_outputStreamDescription-&gt;sampleRate()),
&gt; &gt; +        static_cast&lt;int&gt;(m_outputStreamDescription-&gt;numberOfChannels()),
&gt; &gt; +        outChunkSampleCount);
&gt; 
&gt; It won&apos;t probably fit in a single line but you can probably make two.
&gt; 
&gt; And I guess sendAudioFrames (which I couldn&apos;t find anywhere, I assume it&apos;s
&gt; libwebrtc code) is going to copy that that from the mapped thing, otherwise
&gt; nasty things can happen when it is unmapped, right?

sendAudioFrames was added a few days ago, I guess it is why your couldn&apos;t find it, and
yes, that function is not giving ownership to the callee</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478835</commentid>
    <comment_count>8</comment_count>
      <attachid>354918</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-15 05:15:18 -0800</bug_when>
    <thetext>Comment on attachment 354918
Patch for landing

Rejecting attachment 354918 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-01&apos;, &apos;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 354918, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Logging in as commit-queue@webkit.org...
Fetching: https://bugs.webkit.org/attachment.cgi?id=354918&amp;action=edit
Fetching: https://bugs.webkit.org/show_bug.cgi?id=191631&amp;ctype=xml&amp;excludefield=attachmentdata
Processing 1 patch from 1 bug.
Processing patch 354918 from bug 191631.
Fetching: https://bugs.webkit.org/attachment.cgi?id=354918
Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Parsed 3 diffs from patch file(s).
patching file Source/WebCore/ChangeLog
Hunk #1 FAILED at 1.
1 out of 1 hunk FAILED -- saving rejects to file Source/WebCore/ChangeLog.rej
patching file Source/WebCore/platform/mediastream/gstreamer/RealtimeIncomingAudioSourceLibWebRTC.cpp
patching file Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceLibWebRTC.cpp

Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Full output: https://webkit-queues.webkit.org/results/10002551</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478846</commentid>
    <comment_count>9</comment_count>
      <attachid>354918</attachid>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2018-11-15 05:50:48 -0800</bug_when>
    <thetext>Comment on attachment 354918
Patch for landing

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

&gt; Source/WebCore/ChangeLog:20
&gt; -        Reviewed by NOBODY (OOPS!).
&gt; +        Reviewed by Xabier Rodriguez-Calvar.

Big ooops!

&gt; Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceLibWebRTC.cpp:123
&gt; +    GstMappedBuffer outMap(outBuffer.get(), GST_MAP_WRITE);

I would say inMappedBuffer and out</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478851</commentid>
    <comment_count>10</comment_count>
      <attachid>354924</attachid>
    <who name="Thibault Saunier">tsaunier</who>
    <bug_when>2018-11-15 06:01:26 -0800</bug_when>
    <thetext>Created attachment 354924
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478862</commentid>
    <comment_count>11</comment_count>
      <attachid>354924</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-15 06:39:36 -0800</bug_when>
    <thetext>Comment on attachment 354924
Patch for landing

Clearing flags on attachment: 354924

Committed r238224: &lt;https://trac.webkit.org/changeset/238224&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478863</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-15 06:39:38 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478864</commentid>
    <comment_count>13</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-11-15 06:40:24 -0800</bug_when>
    <thetext>&lt;rdar://problem/46094436&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>354796</attachid>
            <date>2018-11-14 04:45:49 -0800</date>
            <delta_ts>2018-11-14 04:52:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-191631-20181114094548.patch</filename>
            <type>text/plain</type>
            <size>5160</size>
            <attacher name="Thibault Saunier">tsaunier</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4MTAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmU5NjliYWZmODg4NjBi
Mjg4Zjc3YTk5YTVlMDIzNmQzM2Y1NmI3My4uMTIwMjg3YzUyMmUzZWRhNzUwNmY5NjQwMTQ0YjE4
ZDlkNWMyM2ExYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE4LTExLTEzICBUaGli
YXVsdCBTYXVuaWVyICA8dHNhdW5pZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1N0cmVhbWVy
XVtXZWJSVENdIEFkZCBzdXBwb3J0IGZvciBzZW5kaW5nIHNpbGVuY2Ugb3Igc2lsZW5jaW5nIGFu
IGluY29taW5nIHRyYWNrCisgICAgICAgIE5lZWQgdGhlIGJ1ZyBVUkwgKE9PUFMhKS4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHdpbGwgYmUg
dGVzdGVkIG9uY2Ugd2Via2l0Lm9yZy9iLzE4NjkzMyBpcyBpbXBsZW1lbnRlZC4KKworICAgICAg
ICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZUluY29taW5nQXVkaW9T
b3VyY2VMaWJXZWJSVEMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVJbmNvbWluZ0F1
ZGlvU291cmNlTGliV2ViUlRDOjpPbkRhdGEpOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3Ry
ZWFtL2dzdHJlYW1lci9SZWFsdGltZU91dGdvaW5nQXVkaW9Tb3VyY2VMaWJXZWJSVEMuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVPdXRnb2luZ0F1ZGlvU291cmNlTGliV2ViUlRDOjpw
dWxsQXVkaW9EYXRhKToKKwogMjAxOC0xMS0xMyAgVGhpYmF1bHQgU2F1bmllciAgPHRzYXVuaWVy
QGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dTdHJlYW1lcl1bTWVkaWFTdHJlYW1dIEhhbmRsZSB0
cmFjayBhZGRpdGlvbiBhbmQgcmVtb3ZhbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL1JlYWx0aW1lSW5jb21pbmdBdWRpb1NvdXJjZUxp
YldlYlJUQy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFt
ZXIvUmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNlTGliV2ViUlRDLmNwcAppbmRleCA1NDE4Mjll
ZDEyMGNjYTkxMzNiZDYwY2MyN2ViY2MyZDk4MDlkZjM1Li5hODNlM2RiYWJiMDMxMGJmNjY3YjI3
MDlmZTA3NDE1ZjYwZjQ4MDdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNlTGliV2ViUlRD
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIv
UmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNlTGliV2ViUlRDLmNwcApAQCAtNjQsOSArNjQsMTQg
QEAgdm9pZCBSZWFsdGltZUluY29taW5nQXVkaW9Tb3VyY2VMaWJXZWJSVEM6Ok9uRGF0YShjb25z
dCB2b2lkKiBhdWRpb0RhdGEsIGludCwgaW4KIAogICAgIGdzdF9hdWRpb19pbmZvX3NldF9mb3Jt
YXQoJmluZm8sIGZvcm1hdCwgc2FtcGxlUmF0ZSwgbnVtYmVyT2ZDaGFubmVscywgTlVMTCk7CiAK
LSAgICBhdXRvIGJ1ZmZlciA9IGFkb3B0R1JlZihnc3RfYnVmZmVyX25ld193cmFwcGVkKAotICAg
ICAgICBnX21lbWR1cChhdWRpb0RhdGEsIEdTVF9BVURJT19JTkZPX0JQRigmaW5mbykgKiBudW1i
ZXJPZkZyYW1lcyksCi0gICAgICAgIEdTVF9BVURJT19JTkZPX0JQRigmaW5mbykgKiBudW1iZXJP
ZkZyYW1lcykpOworICAgIGF1dG8gYnVmZmVyU2l6ZSA9IEdTVF9BVURJT19JTkZPX0JQRigmaW5m
bykgKiBudW1iZXJPZkZyYW1lczsKKyAgICBncG9pbnRlciBidWZmZXJEYXRhID0gZ19tYWxsb2Mg
KGJ1ZmZlclNpemUpOworICAgIGlmIChtdXRlZCgpKQorICAgICAgICBnc3RfYXVkaW9fZm9ybWF0
X2ZpbGxfc2lsZW5jZSAoaW5mby5maW5mbywgYnVmZmVyRGF0YSwgYnVmZmVyU2l6ZSk7CisgICAg
ZWxzZQorICAgICAgICBtZW1jcHkoYnVmZmVyRGF0YSwgYXVkaW9EYXRhLCBidWZmZXJTaXplKTsK
KworICAgIGF1dG8gYnVmZmVyID0gYWRvcHRHUmVmKGdzdF9idWZmZXJfbmV3X3dyYXBwZWQoYnVm
ZmVyRGF0YSwgYnVmZmVyU2l6ZSkpOwogICAgIEdSZWZQdHI8R3N0Q2Fwcz4gY2FwcyA9IGFkb3B0
R1JlZihnc3RfYXVkaW9faW5mb190b19jYXBzKCZpbmZvKSk7CiAgICAgYXV0byBzYW1wbGUgPSBh
ZG9wdEdSZWYoZ3N0X3NhbXBsZV9uZXcoYnVmZmVyLmdldCgpLCBjYXBzLmdldCgpLCBudWxscHRy
LCBudWxscHRyKSk7CiAgICAgYXV0byBkYXRhKHN0ZDo6dW5pcXVlX3B0cjxHU3RyZWFtZXJBdWRp
b0RhdGE+KG5ldyBHU3RyZWFtZXJBdWRpb0RhdGEoV1RGTW92ZShzYW1wbGUpLCBpbmZvKSkpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVy
L1JlYWx0aW1lT3V0Z29pbmdBdWRpb1NvdXJjZUxpYldlYlJUQy5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVPdXRnb2luZ0F1ZGlvU291
cmNlTGliV2ViUlRDLmNwcAppbmRleCAwNjBmYzEwOTZjZTU0ZjU3MjJkYWI1NjRkNzQ3NmFjNzBm
M2NmY2YyLi45M2Y0N2IzZDhlYmE0OTRiNWM1NjM1YTU4MzE3MjgzNTI5Njc1Mzc1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRp
bWVPdXRnb2luZ0F1ZGlvU291cmNlTGliV2ViUlRDLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVPdXRnb2luZ0F1ZGlvU291cmNl
TGliV2ViUlRDLmNwcApAQCAtMTIwLDI4ICsxMjAsMjcgQEAgdm9pZCBSZWFsdGltZU91dGdvaW5n
QXVkaW9Tb3VyY2VMaWJXZWJSVEM6OnB1bGxBdWRpb0RhdGEoKQogICAgIH0KIAogICAgIGF1dG8g
aW5idWYgPSBhZG9wdEdSZWYoZ3N0X2FkYXB0ZXJfdGFrZV9idWZmZXIobV9hZGFwdGVyLmdldCgp
LCBpbkJ1ZmZlclNpemUpKTsKLSAgICBHc3RNYXBJbmZvIGlubWFwOwotICAgIGdzdF9idWZmZXJf
bWFwKGluYnVmLmdldCgpLCAmaW5tYXAsIHN0YXRpY19jYXN0PEdzdE1hcEZsYWdzPihHU1RfTUFQ
X1JFQUQpKTsKLQotICAgIEdzdE1hcEluZm8gb3V0bWFwOwogICAgIGF1dG8gb3V0YnVmID0gYWRv
cHRHUmVmKGdzdF9idWZmZXJfbmV3X2FsbG9jYXRlKG51bGxwdHIsIG91dEJ1ZmZlclNpemUsIDAp
KTsKLSAgICBnc3RfYnVmZmVyX21hcChvdXRidWYuZ2V0KCksICZvdXRtYXAsIHN0YXRpY19jYXN0
PEdzdE1hcEZsYWdzPihHU1RfTUFQX1dSSVRFKSk7Ci0KLSAgICBncG9pbnRlciBpblsxXSA9IHsg
aW5tYXAuZGF0YSB9OwotICAgIGdwb2ludGVyIG91dFsxXSA9IHsgb3V0bWFwLmRhdGEgfTsKLSAg
ICBpZiAoZ3N0X2F1ZGlvX2NvbnZlcnRlcl9zYW1wbGVzKG1fc2FtcGxlQ29udmVydGVyLCBzdGF0
aWNfY2FzdDxHc3RBdWRpb0NvbnZlcnRlckZsYWdzPigwKSwgaW4sIGluQ2h1bmtTYW1wbGVDb3Vu
dCwgb3V0LCBvdXRDaHVua1NhbXBsZUNvdW50KSkgewotICAgICAgICBmb3IgKGF1dG8gc2luayA6
IG1fc2lua3MpIHsKLSAgICAgICAgICAgIHNpbmstPk9uRGF0YShvdXRtYXAuZGF0YSwKLSAgICAg
ICAgICAgICAgICBMaWJXZWJSVENBdWRpb0Zvcm1hdDo6c2FtcGxlU2l6ZSwKLSAgICAgICAgICAg
ICAgICBzdGF0aWNfY2FzdDxpbnQ+KG1fb3V0cHV0U3RyZWFtRGVzY3JpcHRpb24tPnNhbXBsZVJh
dGUoKSksCi0gICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8aW50PihtX291dHB1dFN0cmVhbURl
c2NyaXB0aW9uLT5udW1iZXJPZkNoYW5uZWxzKCkpLAotICAgICAgICAgICAgICAgIG91dENodW5r
U2FtcGxlQ291bnQpOwotICAgICAgICB9Ci0gICAgfSBlbHNlCi0gICAgICAgIEdTVF9FUlJPUigi
Q291bGQgbm90IGNvbnZlcnQgc2FtcGxlcy4iKTsKLQotICAgIGdzdF9idWZmZXJfdW5tYXAoaW5i
dWYuZ2V0KCksICZpbm1hcCk7Ci0gICAgZ3N0X2J1ZmZlcl91bm1hcChvdXRidWYuZ2V0KCksICZv
dXRtYXApOworCisgICAgR3N0TWFwcGVkQnVmZmVyIG91dG1hcChvdXRidWYuZ2V0KCksIEdTVF9N
QVBfUkVBRCk7CisgICAgaWYgKGlzU2lsZW5jZWQoKSkgeworICAgICAgICBnc3RfYXVkaW9fZm9y
bWF0X2ZpbGxfc2lsZW5jZSAobV9vdXRwdXRTdHJlYW1EZXNjcmlwdGlvbi0+Z2V0SW5mbygpLT5m
aW5mbywgb3V0bWFwLmRhdGEoKSwgb3V0bWFwLnNpemUoKSk7CisgICAgfSBlbHNlIHsKKyAgICAg
ICAgR3N0TWFwcGVkQnVmZmVyIGlubWFwKGluYnVmLmdldCgpLCBHU1RfTUFQX1JFQUQpOworCisg
ICAgICAgIGdwb2ludGVyIGluWzFdID0geyBpbm1hcC5kYXRhKCkgfTsKKyAgICAgICAgZ3BvaW50
ZXIgb3V0WzFdID0geyBvdXRtYXAuZGF0YSgpIH07CisgICAgICAgIGlmIChnc3RfYXVkaW9fY29u
dmVydGVyX3NhbXBsZXMobV9zYW1wbGVDb252ZXJ0ZXIsIHN0YXRpY19jYXN0PEdzdEF1ZGlvQ29u
dmVydGVyRmxhZ3M+KDApLCBpbiwgaW5DaHVua1NhbXBsZUNvdW50LCBvdXQsIG91dENodW5rU2Ft
cGxlQ291bnQpKSB7CisgICAgICAgICAgICBmb3IgKGF1dG8gc2luayA6IG1fc2lua3MpIHsKKyAg
ICAgICAgICAgICAgICBzaW5rLT5PbkRhdGEob3V0bWFwLmRhdGEoKSwKKyAgICAgICAgICAgICAg
ICAgICAgTGliV2ViUlRDQXVkaW9Gb3JtYXQ6OnNhbXBsZVNpemUsCisgICAgICAgICAgICAgICAg
ICAgIHN0YXRpY19jYXN0PGludD4obV9vdXRwdXRTdHJlYW1EZXNjcmlwdGlvbi0+c2FtcGxlUmF0
ZSgpKSwKKyAgICAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8aW50PihtX291dHB1dFN0cmVh
bURlc2NyaXB0aW9uLT5udW1iZXJPZkNoYW5uZWxzKCkpLAorICAgICAgICAgICAgICAgICAgICBv
dXRDaHVua1NhbXBsZUNvdW50KTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfSBlbHNlCisgICAg
ICAgICAgICBHU1RfRVJST1IoIkNvdWxkIG5vdCBjb252ZXJ0IHNhbXBsZXMuIik7CisgICAgfQog
fQogCiBib29sIFJlYWx0aW1lT3V0Z29pbmdBdWRpb1NvdXJjZUxpYldlYlJUQzo6aXNSZWFjaGlu
Z0J1ZmZlcmVkQXVkaW9EYXRhSGlnaExpbWl0KCkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>354799</attachid>
            <date>2018-11-14 04:52:25 -0800</date>
            <delta_ts>2018-11-14 07:15:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-191631-20181114095224.patch</filename>
            <type>text/plain</type>
            <size>5174</size>
            <attacher name="Thibault Saunier">tsaunier</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4MTAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmU5NjliYWZmODg4NjBi
Mjg4Zjc3YTk5YTVlMDIzNmQzM2Y1NmI3My4uMTQyMjNmZWJmN2ZlOWVhMmRhZGFlYzRmNDA5Y2I2
ZGNiNmQzNTFkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE4LTExLTEzICBUaGli
YXVsdCBTYXVuaWVyICA8dHNhdW5pZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1N0cmVhbWVy
XVtXZWJSVENdIEFkZCBzdXBwb3J0IGZvciBzZW5kaW5nIHNpbGVuY2Ugb3Igc2lsZW5jaW5nIGFu
IGluY29taW5nIHRyYWNrCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xOTE2MzEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBUaGlzIHdpbGwgYmUgdGVzdGVkIG9uY2Ugd2Via2l0Lm9yZy9iLzE4NjkzMyBpcyBp
bXBsZW1lbnRlZC4KKworICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9S
ZWFsdGltZUluY29taW5nQXVkaW9Tb3VyY2VMaWJXZWJSVEMuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNlTGliV2ViUlRDOjpPbkRhdGEpOgorICAgICAg
ICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU91dGdvaW5nQXVkaW9T
b3VyY2VMaWJXZWJSVEMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVPdXRnb2luZ0F1
ZGlvU291cmNlTGliV2ViUlRDOjpwdWxsQXVkaW9EYXRhKToKKwogMjAxOC0xMS0xMyAgVGhpYmF1
bHQgU2F1bmllciAgPHRzYXVuaWVyQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dTdHJlYW1lcl1b
TWVkaWFTdHJlYW1dIEhhbmRsZSB0cmFjayBhZGRpdGlvbiBhbmQgcmVtb3ZhbApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL1JlYWx0aW1l
SW5jb21pbmdBdWRpb1NvdXJjZUxpYldlYlJUQy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNlTGliV2Vi
UlRDLmNwcAppbmRleCA1NDE4MjllZDEyMGNjYTkxMzNiZDYwY2MyN2ViY2MyZDk4MDlkZjM1Li5l
ZjBlMWMyNDM1NGM4YjU4MGJlNGFjNWM5ODVlODFiMzkxMDUyMzY2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVJbmNvbWlu
Z0F1ZGlvU291cmNlTGliV2ViUlRDLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNlTGliV2ViUlRD
LmNwcApAQCAtNjQsOSArNjQsMTQgQEAgdm9pZCBSZWFsdGltZUluY29taW5nQXVkaW9Tb3VyY2VM
aWJXZWJSVEM6Ok9uRGF0YShjb25zdCB2b2lkKiBhdWRpb0RhdGEsIGludCwgaW4KIAogICAgIGdz
dF9hdWRpb19pbmZvX3NldF9mb3JtYXQoJmluZm8sIGZvcm1hdCwgc2FtcGxlUmF0ZSwgbnVtYmVy
T2ZDaGFubmVscywgTlVMTCk7CiAKLSAgICBhdXRvIGJ1ZmZlciA9IGFkb3B0R1JlZihnc3RfYnVm
ZmVyX25ld193cmFwcGVkKAotICAgICAgICBnX21lbWR1cChhdWRpb0RhdGEsIEdTVF9BVURJT19J
TkZPX0JQRigmaW5mbykgKiBudW1iZXJPZkZyYW1lcyksCi0gICAgICAgIEdTVF9BVURJT19JTkZP
X0JQRigmaW5mbykgKiBudW1iZXJPZkZyYW1lcykpOworICAgIGF1dG8gYnVmZmVyU2l6ZSA9IEdT
VF9BVURJT19JTkZPX0JQRigmaW5mbykgKiBudW1iZXJPZkZyYW1lczsKKyAgICBncG9pbnRlciBi
dWZmZXJEYXRhID0gZ19tYWxsb2MoYnVmZmVyU2l6ZSk7CisgICAgaWYgKG11dGVkKCkpCisgICAg
ICAgIGdzdF9hdWRpb19mb3JtYXRfZmlsbF9zaWxlbmNlKGluZm8uZmluZm8sIGJ1ZmZlckRhdGEs
IGJ1ZmZlclNpemUpOworICAgIGVsc2UKKyAgICAgICAgbWVtY3B5KGJ1ZmZlckRhdGEsIGF1ZGlv
RGF0YSwgYnVmZmVyU2l6ZSk7CisKKyAgICBhdXRvIGJ1ZmZlciA9IGFkb3B0R1JlZihnc3RfYnVm
ZmVyX25ld193cmFwcGVkKGJ1ZmZlckRhdGEsIGJ1ZmZlclNpemUpKTsKICAgICBHUmVmUHRyPEdz
dENhcHM+IGNhcHMgPSBhZG9wdEdSZWYoZ3N0X2F1ZGlvX2luZm9fdG9fY2FwcygmaW5mbykpOwog
ICAgIGF1dG8gc2FtcGxlID0gYWRvcHRHUmVmKGdzdF9zYW1wbGVfbmV3KGJ1ZmZlci5nZXQoKSwg
Y2Fwcy5nZXQoKSwgbnVsbHB0ciwgbnVsbHB0cikpOwogICAgIGF1dG8gZGF0YShzdGQ6OnVuaXF1
ZV9wdHI8R1N0cmVhbWVyQXVkaW9EYXRhPihuZXcgR1N0cmVhbWVyQXVkaW9EYXRhKFdURk1vdmUo
c2FtcGxlKSwgaW5mbykpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21l
ZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU91dGdvaW5nQXVkaW9Tb3VyY2VMaWJXZWJSVEMu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL1JlYWx0
aW1lT3V0Z29pbmdBdWRpb1NvdXJjZUxpYldlYlJUQy5jcHAKaW5kZXggMDYwZmMxMDk2Y2U1NGY1
NzIyZGFiNTY0ZDc0NzZhYzcwZjNjZmNmMi4uMzA0NzhhZTU5Y2UzNWUzMzZkN2U5ZTIwNTUxNWQ3
OWJjM2FhZjFjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJl
YW0vZ3N0cmVhbWVyL1JlYWx0aW1lT3V0Z29pbmdBdWRpb1NvdXJjZUxpYldlYlJUQy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL1JlYWx0aW1l
T3V0Z29pbmdBdWRpb1NvdXJjZUxpYldlYlJUQy5jcHAKQEAgLTEyMCwyOCArMTIwLDI3IEBAIHZv
aWQgUmVhbHRpbWVPdXRnb2luZ0F1ZGlvU291cmNlTGliV2ViUlRDOjpwdWxsQXVkaW9EYXRhKCkK
ICAgICB9CiAKICAgICBhdXRvIGluYnVmID0gYWRvcHRHUmVmKGdzdF9hZGFwdGVyX3Rha2VfYnVm
ZmVyKG1fYWRhcHRlci5nZXQoKSwgaW5CdWZmZXJTaXplKSk7Ci0gICAgR3N0TWFwSW5mbyBpbm1h
cDsKLSAgICBnc3RfYnVmZmVyX21hcChpbmJ1Zi5nZXQoKSwgJmlubWFwLCBzdGF0aWNfY2FzdDxH
c3RNYXBGbGFncz4oR1NUX01BUF9SRUFEKSk7Ci0KLSAgICBHc3RNYXBJbmZvIG91dG1hcDsKICAg
ICBhdXRvIG91dGJ1ZiA9IGFkb3B0R1JlZihnc3RfYnVmZmVyX25ld19hbGxvY2F0ZShudWxscHRy
LCBvdXRCdWZmZXJTaXplLCAwKSk7Ci0gICAgZ3N0X2J1ZmZlcl9tYXAob3V0YnVmLmdldCgpLCAm
b3V0bWFwLCBzdGF0aWNfY2FzdDxHc3RNYXBGbGFncz4oR1NUX01BUF9XUklURSkpOwotCi0gICAg
Z3BvaW50ZXIgaW5bMV0gPSB7IGlubWFwLmRhdGEgfTsKLSAgICBncG9pbnRlciBvdXRbMV0gPSB7
IG91dG1hcC5kYXRhIH07Ci0gICAgaWYgKGdzdF9hdWRpb19jb252ZXJ0ZXJfc2FtcGxlcyhtX3Nh
bXBsZUNvbnZlcnRlciwgc3RhdGljX2Nhc3Q8R3N0QXVkaW9Db252ZXJ0ZXJGbGFncz4oMCksIGlu
LCBpbkNodW5rU2FtcGxlQ291bnQsIG91dCwgb3V0Q2h1bmtTYW1wbGVDb3VudCkpIHsKLSAgICAg
ICAgZm9yIChhdXRvIHNpbmsgOiBtX3NpbmtzKSB7Ci0gICAgICAgICAgICBzaW5rLT5PbkRhdGEo
b3V0bWFwLmRhdGEsCi0gICAgICAgICAgICAgICAgTGliV2ViUlRDQXVkaW9Gb3JtYXQ6OnNhbXBs
ZVNpemUsCi0gICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8aW50PihtX291dHB1dFN0cmVhbURl
c2NyaXB0aW9uLT5zYW1wbGVSYXRlKCkpLAotICAgICAgICAgICAgICAgIHN0YXRpY19jYXN0PGlu
dD4obV9vdXRwdXRTdHJlYW1EZXNjcmlwdGlvbi0+bnVtYmVyT2ZDaGFubmVscygpKSwKLSAgICAg
ICAgICAgICAgICBvdXRDaHVua1NhbXBsZUNvdW50KTsKLSAgICAgICAgfQotICAgIH0gZWxzZQot
ICAgICAgICBHU1RfRVJST1IoIkNvdWxkIG5vdCBjb252ZXJ0IHNhbXBsZXMuIik7Ci0KLSAgICBn
c3RfYnVmZmVyX3VubWFwKGluYnVmLmdldCgpLCAmaW5tYXApOwotICAgIGdzdF9idWZmZXJfdW5t
YXAob3V0YnVmLmdldCgpLCAmb3V0bWFwKTsKKworICAgIEdzdE1hcHBlZEJ1ZmZlciBvdXRtYXAo
b3V0YnVmLmdldCgpLCBHU1RfTUFQX1JFQUQpOworICAgIGlmIChpc1NpbGVuY2VkKCkpCisgICAg
ICAgIGdzdF9hdWRpb19mb3JtYXRfZmlsbF9zaWxlbmNlKG1fb3V0cHV0U3RyZWFtRGVzY3JpcHRp
b24tPmdldEluZm8oKS0+ZmluZm8sIG91dG1hcC5kYXRhKCksIG91dG1hcC5zaXplKCkpOworICAg
IGVsc2UgeworICAgICAgICBHc3RNYXBwZWRCdWZmZXIgaW5tYXAoaW5idWYuZ2V0KCksIEdTVF9N
QVBfUkVBRCk7CisKKyAgICAgICAgZ3BvaW50ZXIgaW5bMV0gPSB7IGlubWFwLmRhdGEoKSB9Owor
ICAgICAgICBncG9pbnRlciBvdXRbMV0gPSB7IG91dG1hcC5kYXRhKCkgfTsKKyAgICAgICAgaWYg
KGdzdF9hdWRpb19jb252ZXJ0ZXJfc2FtcGxlcyhtX3NhbXBsZUNvbnZlcnRlciwgc3RhdGljX2Nh
c3Q8R3N0QXVkaW9Db252ZXJ0ZXJGbGFncz4oMCksIGluLCBpbkNodW5rU2FtcGxlQ291bnQsIG91
dCwgb3V0Q2h1bmtTYW1wbGVDb3VudCkpIHsKKyAgICAgICAgICAgIGZvciAoYXV0byBzaW5rIDog
bV9zaW5rcykgeworICAgICAgICAgICAgICAgIHNpbmstPk9uRGF0YShvdXRtYXAuZGF0YSgpLAor
ICAgICAgICAgICAgICAgICAgICBMaWJXZWJSVENBdWRpb0Zvcm1hdDo6c2FtcGxlU2l6ZSwKKyAg
ICAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8aW50PihtX291dHB1dFN0cmVhbURlc2NyaXB0
aW9uLT5zYW1wbGVSYXRlKCkpLAorICAgICAgICAgICAgICAgICAgICBzdGF0aWNfY2FzdDxpbnQ+
KG1fb3V0cHV0U3RyZWFtRGVzY3JpcHRpb24tPm51bWJlck9mQ2hhbm5lbHMoKSksCisgICAgICAg
ICAgICAgICAgICAgIG91dENodW5rU2FtcGxlQ291bnQpOworICAgICAgICAgICAgfQorICAgICAg
ICB9IGVsc2UKKyAgICAgICAgICAgIEdTVF9FUlJPUigiQ291bGQgbm90IGNvbnZlcnQgc2FtcGxl
cy4iKTsKKyAgICB9CiB9CiAKIGJvb2wgUmVhbHRpbWVPdXRnb2luZ0F1ZGlvU291cmNlTGliV2Vi
UlRDOjppc1JlYWNoaW5nQnVmZmVyZWRBdWRpb0RhdGFIaWdoTGltaXQoKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>354805</attachid>
            <date>2018-11-14 07:15:45 -0800</date>
            <delta_ts>2018-11-15 05:11:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-191631-20181114121544.patch</filename>
            <type>text/plain</type>
            <size>5015</size>
            <attacher name="Thibault Saunier">tsaunier</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4MTcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMmQ2ZjgxODUxZGM1MmM2
MjljNDJlZDg5Yzg3MzQxMDhlM2Q2NzZiMi4uZDVhMzA3YjhhYTIwOTU3ZmQ5OWY1ZTJjNDBiMjFm
NTg0Y2QzYWI0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE4LTExLTEzICBUaGli
YXVsdCBTYXVuaWVyICA8dHNhdW5pZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1N0cmVhbWVy
XVtXZWJSVENdIEFkZCBzdXBwb3J0IGZvciBzZW5kaW5nIHNpbGVuY2Ugb3Igc2lsZW5jaW5nIGFu
IGluY29taW5nIHRyYWNrCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xOTE2MzEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBUaGlzIHdpbGwgYmUgdGVzdGVkIG9uY2Ugd2Via2l0Lm9yZy9iLzE4NjkzMyBpcyBp
bXBsZW1lbnRlZC4KKworICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9S
ZWFsdGltZUluY29taW5nQXVkaW9Tb3VyY2VMaWJXZWJSVEMuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNlTGliV2ViUlRDOjpPbkRhdGEpOgorICAgICAg
ICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU91dGdvaW5nQXVkaW9T
b3VyY2VMaWJXZWJSVEMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVPdXRnb2luZ0F1
ZGlvU291cmNlTGliV2ViUlRDOjpwdWxsQXVkaW9EYXRhKToKKwogMjAxOC0xMS0xMyAgVGhpYmF1
bHQgU2F1bmllciAgPHRzYXVuaWVyQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dTdHJlYW1lcl1b
TWVkaWFTdHJlYW1dIEhhbmRsZSB0cmFjayBhZGRpdGlvbiBhbmQgcmVtb3ZhbApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL1JlYWx0aW1l
SW5jb21pbmdBdWRpb1NvdXJjZUxpYldlYlJUQy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNlTGliV2Vi
UlRDLmNwcAppbmRleCA1NDE4MjllZDEyMGNjYTkxMzNiZDYwY2MyN2ViY2MyZDk4MDlkZjM1Li5l
ZjBlMWMyNDM1NGM4YjU4MGJlNGFjNWM5ODVlODFiMzkxMDUyMzY2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVJbmNvbWlu
Z0F1ZGlvU291cmNlTGliV2ViUlRDLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNlTGliV2ViUlRD
LmNwcApAQCAtNjQsOSArNjQsMTQgQEAgdm9pZCBSZWFsdGltZUluY29taW5nQXVkaW9Tb3VyY2VM
aWJXZWJSVEM6Ok9uRGF0YShjb25zdCB2b2lkKiBhdWRpb0RhdGEsIGludCwgaW4KIAogICAgIGdz
dF9hdWRpb19pbmZvX3NldF9mb3JtYXQoJmluZm8sIGZvcm1hdCwgc2FtcGxlUmF0ZSwgbnVtYmVy
T2ZDaGFubmVscywgTlVMTCk7CiAKLSAgICBhdXRvIGJ1ZmZlciA9IGFkb3B0R1JlZihnc3RfYnVm
ZmVyX25ld193cmFwcGVkKAotICAgICAgICBnX21lbWR1cChhdWRpb0RhdGEsIEdTVF9BVURJT19J
TkZPX0JQRigmaW5mbykgKiBudW1iZXJPZkZyYW1lcyksCi0gICAgICAgIEdTVF9BVURJT19JTkZP
X0JQRigmaW5mbykgKiBudW1iZXJPZkZyYW1lcykpOworICAgIGF1dG8gYnVmZmVyU2l6ZSA9IEdT
VF9BVURJT19JTkZPX0JQRigmaW5mbykgKiBudW1iZXJPZkZyYW1lczsKKyAgICBncG9pbnRlciBi
dWZmZXJEYXRhID0gZ19tYWxsb2MoYnVmZmVyU2l6ZSk7CisgICAgaWYgKG11dGVkKCkpCisgICAg
ICAgIGdzdF9hdWRpb19mb3JtYXRfZmlsbF9zaWxlbmNlKGluZm8uZmluZm8sIGJ1ZmZlckRhdGEs
IGJ1ZmZlclNpemUpOworICAgIGVsc2UKKyAgICAgICAgbWVtY3B5KGJ1ZmZlckRhdGEsIGF1ZGlv
RGF0YSwgYnVmZmVyU2l6ZSk7CisKKyAgICBhdXRvIGJ1ZmZlciA9IGFkb3B0R1JlZihnc3RfYnVm
ZmVyX25ld193cmFwcGVkKGJ1ZmZlckRhdGEsIGJ1ZmZlclNpemUpKTsKICAgICBHUmVmUHRyPEdz
dENhcHM+IGNhcHMgPSBhZG9wdEdSZWYoZ3N0X2F1ZGlvX2luZm9fdG9fY2FwcygmaW5mbykpOwog
ICAgIGF1dG8gc2FtcGxlID0gYWRvcHRHUmVmKGdzdF9zYW1wbGVfbmV3KGJ1ZmZlci5nZXQoKSwg
Y2Fwcy5nZXQoKSwgbnVsbHB0ciwgbnVsbHB0cikpOwogICAgIGF1dG8gZGF0YShzdGQ6OnVuaXF1
ZV9wdHI8R1N0cmVhbWVyQXVkaW9EYXRhPihuZXcgR1N0cmVhbWVyQXVkaW9EYXRhKFdURk1vdmUo
c2FtcGxlKSwgaW5mbykpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21l
ZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU91dGdvaW5nQXVkaW9Tb3VyY2VMaWJXZWJSVEMu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL1JlYWx0
aW1lT3V0Z29pbmdBdWRpb1NvdXJjZUxpYldlYlJUQy5jcHAKaW5kZXggMjE3NzAzMjM2NDAyNmEy
NzYzNWUzMTllZDQ1YjNjODJlOTgzMDQ4OC4uZjhjMTcwYzY5NTc3YjZhOWQwZjAxYzEwZjg4YTY1
ZDAwMWM2MGQyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJl
YW0vZ3N0cmVhbWVyL1JlYWx0aW1lT3V0Z29pbmdBdWRpb1NvdXJjZUxpYldlYlJUQy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL1JlYWx0aW1l
T3V0Z29pbmdBdWRpb1NvdXJjZUxpYldlYlJUQy5jcHAKQEAgLTExOSwyNiArMTE5LDI3IEBAIHZv
aWQgUmVhbHRpbWVPdXRnb2luZ0F1ZGlvU291cmNlTGliV2ViUlRDOjpwdWxsQXVkaW9EYXRhKCkK
ICAgICB9CiAKICAgICBhdXRvIGluYnVmID0gYWRvcHRHUmVmKGdzdF9hZGFwdGVyX3Rha2VfYnVm
ZmVyKG1fYWRhcHRlci5nZXQoKSwgaW5CdWZmZXJTaXplKSk7Ci0gICAgR3N0TWFwSW5mbyBpbm1h
cDsKLSAgICBnc3RfYnVmZmVyX21hcChpbmJ1Zi5nZXQoKSwgJmlubWFwLCBzdGF0aWNfY2FzdDxH
c3RNYXBGbGFncz4oR1NUX01BUF9SRUFEKSk7Ci0KLSAgICBHc3RNYXBJbmZvIG91dG1hcDsKICAg
ICBhdXRvIG91dGJ1ZiA9IGFkb3B0R1JlZihnc3RfYnVmZmVyX25ld19hbGxvY2F0ZShudWxscHRy
LCBvdXRCdWZmZXJTaXplLCAwKSk7Ci0gICAgZ3N0X2J1ZmZlcl9tYXAob3V0YnVmLmdldCgpLCAm
b3V0bWFwLCBzdGF0aWNfY2FzdDxHc3RNYXBGbGFncz4oR1NUX01BUF9XUklURSkpOwotCi0gICAg
Z3BvaW50ZXIgaW5bMV0gPSB7IGlubWFwLmRhdGEgfTsKLSAgICBncG9pbnRlciBvdXRbMV0gPSB7
IG91dG1hcC5kYXRhIH07Ci0gICAgaWYgKGdzdF9hdWRpb19jb252ZXJ0ZXJfc2FtcGxlcyhtX3Nh
bXBsZUNvbnZlcnRlciwgc3RhdGljX2Nhc3Q8R3N0QXVkaW9Db252ZXJ0ZXJGbGFncz4oMCksIGlu
LCBpbkNodW5rU2FtcGxlQ291bnQsIG91dCwgb3V0Q2h1bmtTYW1wbGVDb3VudCkpIHsKLSAgICAg
ICAgc2VuZEF1ZGlvRnJhbWVzKG91dG1hcC5kYXRhLAotICAgICAgICAgICAgTGliV2ViUlRDQXVk
aW9Gb3JtYXQ6OnNhbXBsZVNpemUsCi0gICAgICAgICAgICBzdGF0aWNfY2FzdDxpbnQ+KG1fb3V0
cHV0U3RyZWFtRGVzY3JpcHRpb24tPnNhbXBsZVJhdGUoKSksCi0gICAgICAgICAgICBzdGF0aWNf
Y2FzdDxpbnQ+KG1fb3V0cHV0U3RyZWFtRGVzY3JpcHRpb24tPm51bWJlck9mQ2hhbm5lbHMoKSks
Ci0gICAgICAgICAgICBvdXRDaHVua1NhbXBsZUNvdW50KTsKLSAgICB9IGVsc2UKLSAgICAgICAg
R1NUX0VSUk9SKCJDb3VsZCBub3QgY29udmVydCBzYW1wbGVzLiIpOwotCi0gICAgZ3N0X2J1ZmZl
cl91bm1hcChpbmJ1Zi5nZXQoKSwgJmlubWFwKTsKLSAgICBnc3RfYnVmZmVyX3VubWFwKG91dGJ1
Zi5nZXQoKSwgJm91dG1hcCk7CisgICAgR3N0TWFwcGVkQnVmZmVyIG91dG1hcChvdXRidWYuZ2V0
KCksIEdTVF9NQVBfUkVBRCk7CisgICAgaWYgKGlzU2lsZW5jZWQoKSkKKyAgICAgICAgZ3N0X2F1
ZGlvX2Zvcm1hdF9maWxsX3NpbGVuY2UobV9vdXRwdXRTdHJlYW1EZXNjcmlwdGlvbi0+Z2V0SW5m
bygpLT5maW5mbywgb3V0bWFwLmRhdGEoKSwgb3V0bWFwLnNpemUoKSk7CisgICAgZWxzZSB7Cisg
ICAgICAgIEdzdE1hcHBlZEJ1ZmZlciBpbm1hcChpbmJ1Zi5nZXQoKSwgR1NUX01BUF9SRUFEKTsK
KworICAgICAgICBncG9pbnRlciBpblsxXSA9IHsgaW5tYXAuZGF0YSgpIH07CisgICAgICAgIGdw
b2ludGVyIG91dFsxXSA9IHsgb3V0bWFwLmRhdGEoKSB9OworICAgICAgICBpZiAoIWdzdF9hdWRp
b19jb252ZXJ0ZXJfc2FtcGxlcyhtX3NhbXBsZUNvbnZlcnRlciwgc3RhdGljX2Nhc3Q8R3N0QXVk
aW9Db252ZXJ0ZXJGbGFncz4oMCksIGluLCBpbkNodW5rU2FtcGxlQ291bnQsIG91dCwgb3V0Q2h1
bmtTYW1wbGVDb3VudCkpIHsKKyAgICAgICAgICAgIEdTVF9FUlJPUigiQ291bGQgbm90IGNvbnZl
cnQgc2FtcGxlcy4iKTsKKworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgfQor
CisgICAgc2VuZEF1ZGlvRnJhbWVzKG91dG1hcC5kYXRhKCksCisgICAgICAgIExpYldlYlJUQ0F1
ZGlvRm9ybWF0OjpzYW1wbGVTaXplLAorICAgICAgICBzdGF0aWNfY2FzdDxpbnQ+KG1fb3V0cHV0
U3RyZWFtRGVzY3JpcHRpb24tPnNhbXBsZVJhdGUoKSksCisgICAgICAgIHN0YXRpY19jYXN0PGlu
dD4obV9vdXRwdXRTdHJlYW1EZXNjcmlwdGlvbi0+bnVtYmVyT2ZDaGFubmVscygpKSwKKyAgICAg
ICAgb3V0Q2h1bmtTYW1wbGVDb3VudCk7CiB9CiAKIGJvb2wgUmVhbHRpbWVPdXRnb2luZ0F1ZGlv
U291cmNlTGliV2ViUlRDOjppc1JlYWNoaW5nQnVmZmVyZWRBdWRpb0RhdGFIaWdoTGltaXQoKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>354917</attachid>
            <date>2018-11-15 05:12:01 -0800</date>
            <delta_ts>2018-11-15 05:12:39 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-191631-20181115101200.patch</filename>
            <type>text/plain</type>
            <size>5185</size>
            <attacher name="Thibault Saunier">tsaunier</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4MTcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMmQ2ZjgxODUxZGM1MmM2
MjljNDJlZDg5Yzg3MzQxMDhlM2Q2NzZiMi4uZDVhMzA3YjhhYTIwOTU3ZmQ5OWY1ZTJjNDBiMjFm
NTg0Y2QzYWI0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE4LTExLTEzICBUaGli
YXVsdCBTYXVuaWVyICA8dHNhdW5pZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1N0cmVhbWVy
XVtXZWJSVENdIEFkZCBzdXBwb3J0IGZvciBzZW5kaW5nIHNpbGVuY2Ugb3Igc2lsZW5jaW5nIGFu
IGluY29taW5nIHRyYWNrCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xOTE2MzEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBUaGlzIHdpbGwgYmUgdGVzdGVkIG9uY2Ugd2Via2l0Lm9yZy9iLzE4NjkzMyBpcyBp
bXBsZW1lbnRlZC4KKworICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9S
ZWFsdGltZUluY29taW5nQXVkaW9Tb3VyY2VMaWJXZWJSVEMuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNlTGliV2ViUlRDOjpPbkRhdGEpOgorICAgICAg
ICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU91dGdvaW5nQXVkaW9T
b3VyY2VMaWJXZWJSVEMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVPdXRnb2luZ0F1
ZGlvU291cmNlTGliV2ViUlRDOjpwdWxsQXVkaW9EYXRhKToKKwogMjAxOC0xMS0xMyAgVGhpYmF1
bHQgU2F1bmllciAgPHRzYXVuaWVyQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dTdHJlYW1lcl1b
TWVkaWFTdHJlYW1dIEhhbmRsZSB0cmFjayBhZGRpdGlvbiBhbmQgcmVtb3ZhbApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL1JlYWx0aW1l
SW5jb21pbmdBdWRpb1NvdXJjZUxpYldlYlJUQy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNlTGliV2Vi
UlRDLmNwcAppbmRleCA1NDE4MjllZDEyMGNjYTkxMzNiZDYwY2MyN2ViY2MyZDk4MDlkZjM1Li5l
ZjBlMWMyNDM1NGM4YjU4MGJlNGFjNWM5ODVlODFiMzkxMDUyMzY2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVJbmNvbWlu
Z0F1ZGlvU291cmNlTGliV2ViUlRDLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNlTGliV2ViUlRD
LmNwcApAQCAtNjQsOSArNjQsMTQgQEAgdm9pZCBSZWFsdGltZUluY29taW5nQXVkaW9Tb3VyY2VM
aWJXZWJSVEM6Ok9uRGF0YShjb25zdCB2b2lkKiBhdWRpb0RhdGEsIGludCwgaW4KIAogICAgIGdz
dF9hdWRpb19pbmZvX3NldF9mb3JtYXQoJmluZm8sIGZvcm1hdCwgc2FtcGxlUmF0ZSwgbnVtYmVy
T2ZDaGFubmVscywgTlVMTCk7CiAKLSAgICBhdXRvIGJ1ZmZlciA9IGFkb3B0R1JlZihnc3RfYnVm
ZmVyX25ld193cmFwcGVkKAotICAgICAgICBnX21lbWR1cChhdWRpb0RhdGEsIEdTVF9BVURJT19J
TkZPX0JQRigmaW5mbykgKiBudW1iZXJPZkZyYW1lcyksCi0gICAgICAgIEdTVF9BVURJT19JTkZP
X0JQRigmaW5mbykgKiBudW1iZXJPZkZyYW1lcykpOworICAgIGF1dG8gYnVmZmVyU2l6ZSA9IEdT
VF9BVURJT19JTkZPX0JQRigmaW5mbykgKiBudW1iZXJPZkZyYW1lczsKKyAgICBncG9pbnRlciBi
dWZmZXJEYXRhID0gZ19tYWxsb2MoYnVmZmVyU2l6ZSk7CisgICAgaWYgKG11dGVkKCkpCisgICAg
ICAgIGdzdF9hdWRpb19mb3JtYXRfZmlsbF9zaWxlbmNlKGluZm8uZmluZm8sIGJ1ZmZlckRhdGEs
IGJ1ZmZlclNpemUpOworICAgIGVsc2UKKyAgICAgICAgbWVtY3B5KGJ1ZmZlckRhdGEsIGF1ZGlv
RGF0YSwgYnVmZmVyU2l6ZSk7CisKKyAgICBhdXRvIGJ1ZmZlciA9IGFkb3B0R1JlZihnc3RfYnVm
ZmVyX25ld193cmFwcGVkKGJ1ZmZlckRhdGEsIGJ1ZmZlclNpemUpKTsKICAgICBHUmVmUHRyPEdz
dENhcHM+IGNhcHMgPSBhZG9wdEdSZWYoZ3N0X2F1ZGlvX2luZm9fdG9fY2FwcygmaW5mbykpOwog
ICAgIGF1dG8gc2FtcGxlID0gYWRvcHRHUmVmKGdzdF9zYW1wbGVfbmV3KGJ1ZmZlci5nZXQoKSwg
Y2Fwcy5nZXQoKSwgbnVsbHB0ciwgbnVsbHB0cikpOwogICAgIGF1dG8gZGF0YShzdGQ6OnVuaXF1
ZV9wdHI8R1N0cmVhbWVyQXVkaW9EYXRhPihuZXcgR1N0cmVhbWVyQXVkaW9EYXRhKFdURk1vdmUo
c2FtcGxlKSwgaW5mbykpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21l
ZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU91dGdvaW5nQXVkaW9Tb3VyY2VMaWJXZWJSVEMu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL1JlYWx0
aW1lT3V0Z29pbmdBdWRpb1NvdXJjZUxpYldlYlJUQy5jcHAKaW5kZXggMjE3NzAzMjM2NDAyNmEy
NzYzNWUzMTllZDQ1YjNjODJlOTgzMDQ4OC4uN2I1YmRhZGRiYzFhNjFmOTkyZTExYmJkZjdiYjlm
NDczYTUwNjc5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJl
YW0vZ3N0cmVhbWVyL1JlYWx0aW1lT3V0Z29pbmdBdWRpb1NvdXJjZUxpYldlYlJUQy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL1JlYWx0aW1l
T3V0Z29pbmdBdWRpb1NvdXJjZUxpYldlYlJUQy5jcHAKQEAgLTExOCwyNyArMTE4LDI1IEBAIHZv
aWQgUmVhbHRpbWVPdXRnb2luZ0F1ZGlvU291cmNlTGliV2ViUlRDOjpwdWxsQXVkaW9EYXRhKCkK
ICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGF1dG8gaW5idWYgPSBhZG9wdEdSZWYoZ3N0
X2FkYXB0ZXJfdGFrZV9idWZmZXIobV9hZGFwdGVyLmdldCgpLCBpbkJ1ZmZlclNpemUpKTsKLSAg
ICBHc3RNYXBJbmZvIGlubWFwOwotICAgIGdzdF9idWZmZXJfbWFwKGluYnVmLmdldCgpLCAmaW5t
YXAsIHN0YXRpY19jYXN0PEdzdE1hcEZsYWdzPihHU1RfTUFQX1JFQUQpKTsKLQotICAgIEdzdE1h
cEluZm8gb3V0bWFwOwotICAgIGF1dG8gb3V0YnVmID0gYWRvcHRHUmVmKGdzdF9idWZmZXJfbmV3
X2FsbG9jYXRlKG51bGxwdHIsIG91dEJ1ZmZlclNpemUsIDApKTsKLSAgICBnc3RfYnVmZmVyX21h
cChvdXRidWYuZ2V0KCksICZvdXRtYXAsIHN0YXRpY19jYXN0PEdzdE1hcEZsYWdzPihHU1RfTUFQ
X1dSSVRFKSk7Ci0KLSAgICBncG9pbnRlciBpblsxXSA9IHsgaW5tYXAuZGF0YSB9OwotICAgIGdw
b2ludGVyIG91dFsxXSA9IHsgb3V0bWFwLmRhdGEgfTsKLSAgICBpZiAoZ3N0X2F1ZGlvX2NvbnZl
cnRlcl9zYW1wbGVzKG1fc2FtcGxlQ29udmVydGVyLCBzdGF0aWNfY2FzdDxHc3RBdWRpb0NvbnZl
cnRlckZsYWdzPigwKSwgaW4sIGluQ2h1bmtTYW1wbGVDb3VudCwgb3V0LCBvdXRDaHVua1NhbXBs
ZUNvdW50KSkgewotICAgICAgICBzZW5kQXVkaW9GcmFtZXMob3V0bWFwLmRhdGEsCi0gICAgICAg
ICAgICBMaWJXZWJSVENBdWRpb0Zvcm1hdDo6c2FtcGxlU2l6ZSwKLSAgICAgICAgICAgIHN0YXRp
Y19jYXN0PGludD4obV9vdXRwdXRTdHJlYW1EZXNjcmlwdGlvbi0+c2FtcGxlUmF0ZSgpKSwKLSAg
ICAgICAgICAgIHN0YXRpY19jYXN0PGludD4obV9vdXRwdXRTdHJlYW1EZXNjcmlwdGlvbi0+bnVt
YmVyT2ZDaGFubmVscygpKSwKLSAgICAgICAgICAgIG91dENodW5rU2FtcGxlQ291bnQpOwotICAg
IH0gZWxzZQotICAgICAgICBHU1RfRVJST1IoIkNvdWxkIG5vdCBjb252ZXJ0IHNhbXBsZXMuIik7
Ci0KLSAgICBnc3RfYnVmZmVyX3VubWFwKGluYnVmLmdldCgpLCAmaW5tYXApOwotICAgIGdzdF9i
dWZmZXJfdW5tYXAob3V0YnVmLmdldCgpLCAmb3V0bWFwKTsKKyAgICBhdXRvIGluQnVmZmVyID0g
YWRvcHRHUmVmKGdzdF9hZGFwdGVyX3Rha2VfYnVmZmVyKG1fYWRhcHRlci5nZXQoKSwgaW5CdWZm
ZXJTaXplKSk7CisgICAgYXV0byBvdXRCdWZmZXIgPSBhZG9wdEdSZWYoZ3N0X2J1ZmZlcl9uZXdf
YWxsb2NhdGUobnVsbHB0ciwgb3V0QnVmZmVyU2l6ZSwgMCkpOworICAgIEdzdE1hcHBlZEJ1ZmZl
ciBvdXRNYXAob3V0QnVmZmVyLmdldCgpLCBHU1RfTUFQX1dSSVRFKTsKKyAgICBpZiAoaXNTaWxl
bmNlZCgpKQorICAgICAgICBnc3RfYXVkaW9fZm9ybWF0X2ZpbGxfc2lsZW5jZShtX291dHB1dFN0
cmVhbURlc2NyaXB0aW9uLT5nZXRJbmZvKCktPmZpbmZvLCBvdXRNYXAuZGF0YSgpLCBvdXRNYXAu
c2l6ZSgpKTsKKyAgICBlbHNlIHsKKyAgICAgICAgR3N0TWFwcGVkQnVmZmVyIGluTWFwKGluQnVm
ZmVyLmdldCgpLCBHU1RfTUFQX1JFQUQpOworCisgICAgICAgIGdwb2ludGVyIGluWzFdID0geyBp
bk1hcC5kYXRhKCkgfTsKKyAgICAgICAgZ3BvaW50ZXIgb3V0WzFdID0geyBvdXRNYXAuZGF0YSgp
IH07CisgICAgICAgIGlmICghZ3N0X2F1ZGlvX2NvbnZlcnRlcl9zYW1wbGVzKG1fc2FtcGxlQ29u
dmVydGVyLCBzdGF0aWNfY2FzdDxHc3RBdWRpb0NvbnZlcnRlckZsYWdzPigwKSwgaW4sIGluQ2h1
bmtTYW1wbGVDb3VudCwgb3V0LCBvdXRDaHVua1NhbXBsZUNvdW50KSkgeworICAgICAgICAgICAg
R1NUX0VSUk9SKCJDb3VsZCBub3QgY29udmVydCBzYW1wbGVzLiIpOworCisgICAgICAgICAgICBy
ZXR1cm47CisgICAgICAgIH0KKyAgICB9CisKKyAgICBzZW5kQXVkaW9GcmFtZXMob3V0TWFwLmRh
dGEoKSwgTGliV2ViUlRDQXVkaW9Gb3JtYXQ6OnNhbXBsZVNpemUsIHN0YXRpY19jYXN0PGludD4o
bV9vdXRwdXRTdHJlYW1EZXNjcmlwdGlvbi0+c2FtcGxlUmF0ZSgpKSwKKyAgICAgICAgc3RhdGlj
X2Nhc3Q8aW50PihtX291dHB1dFN0cmVhbURlc2NyaXB0aW9uLT5udW1iZXJPZkNoYW5uZWxzKCkp
LCBvdXRDaHVua1NhbXBsZUNvdW50KTsKIH0KIAogYm9vbCBSZWFsdGltZU91dGdvaW5nQXVkaW9T
b3VyY2VMaWJXZWJSVEM6OmlzUmVhY2hpbmdCdWZmZXJlZEF1ZGlvRGF0YUhpZ2hMaW1pdCgpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>354918</attachid>
            <date>2018-11-15 05:12:43 -0800</date>
            <delta_ts>2018-11-15 06:01:23 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-191631-20181115101242.patch</filename>
            <type>text/plain</type>
            <size>5415</size>
            <attacher name="Thibault Saunier">tsaunier</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4MTcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMmQ2ZjgxODUxZGM1MmM2
MjljNDJlZDg5Yzg3MzQxMDhlM2Q2NzZiMi4uZmE2M2E5YzE2NGVmZjhlZWY3OWM3ZTk2YWI2MWEz
NWRkN2VlZGVmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw5ICsxLDIzIEBACisyMDE4LTExLTEzICBUaGli
YXVsdCBTYXVuaWVyICA8dHNhdW5pZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1N0cmVhbWVy
XVtXZWJSVENdIEFkZCBzdXBwb3J0IGZvciBzZW5kaW5nIHNpbGVuY2Ugb3Igc2lsZW5jaW5nIGFu
IGluY29taW5nIHRyYWNrCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xOTE2MzEKKworICAgICAgICBSZXZpZXdlZCBieSBYYWJpZXIgUm9kcmlndWV6LUNh
bHZhci4KKworICAgICAgICBUaGlzIHdpbGwgYmUgdGVzdGVkIG9uY2Ugd2Via2l0Lm9yZy9iLzE4
NjkzMyBpcyBpbXBsZW1lbnRlZC4KKworICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dz
dHJlYW1lci9SZWFsdGltZUluY29taW5nQXVkaW9Tb3VyY2VMaWJXZWJSVEMuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6UmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNlTGliV2ViUlRDOjpPbkRhdGEp
OgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU91dGdv
aW5nQXVkaW9Tb3VyY2VMaWJXZWJSVEMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVP
dXRnb2luZ0F1ZGlvU291cmNlTGliV2ViUlRDOjpwdWxsQXVkaW9EYXRhKToKKwogMjAxOC0xMS0x
MyAgVGhpYmF1bHQgU2F1bmllciAgPHRzYXVuaWVyQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dT
dHJlYW1lcl1bTWVkaWFTdHJlYW1dIEhhbmRsZSB0cmFjayBhZGRpdGlvbiBhbmQgcmVtb3ZhbAog
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkxNTk5CiAK
LSAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIFJldmlld2VkIGJ5
IFhhYmllciBSb2RyaWd1ZXotQ2FsdmFyLgogCiAgICAgICAgIFRlc3Q6IGZhc3QvbWVkaWFzdHJl
YW0vTWVkaWFTdHJlYW0tdmlkZW8tZWxlbWVudC1yZW1vdmUtdHJhY2suaHRtbAogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRp
bWVJbmNvbWluZ0F1ZGlvU291cmNlTGliV2ViUlRDLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZUluY29taW5nQXVkaW9Tb3VyY2VMaWJX
ZWJSVEMuY3BwCmluZGV4IDU0MTgyOWVkMTIwY2NhOTEzM2JkNjBjYzI3ZWJjYzJkOTgwOWRmMzUu
LmVmMGUxYzI0MzU0YzhiNTgwYmU0YWM1Yzk4NWU4MWIzOTEwNTIzNjYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZUluY29t
aW5nQXVkaW9Tb3VyY2VMaWJXZWJSVEMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZUluY29taW5nQXVkaW9Tb3VyY2VMaWJXZWJS
VEMuY3BwCkBAIC02NCw5ICs2NCwxNCBAQCB2b2lkIFJlYWx0aW1lSW5jb21pbmdBdWRpb1NvdXJj
ZUxpYldlYlJUQzo6T25EYXRhKGNvbnN0IHZvaWQqIGF1ZGlvRGF0YSwgaW50LCBpbgogCiAgICAg
Z3N0X2F1ZGlvX2luZm9fc2V0X2Zvcm1hdCgmaW5mbywgZm9ybWF0LCBzYW1wbGVSYXRlLCBudW1i
ZXJPZkNoYW5uZWxzLCBOVUxMKTsKIAotICAgIGF1dG8gYnVmZmVyID0gYWRvcHRHUmVmKGdzdF9i
dWZmZXJfbmV3X3dyYXBwZWQoCi0gICAgICAgIGdfbWVtZHVwKGF1ZGlvRGF0YSwgR1NUX0FVRElP
X0lORk9fQlBGKCZpbmZvKSAqIG51bWJlck9mRnJhbWVzKSwKLSAgICAgICAgR1NUX0FVRElPX0lO
Rk9fQlBGKCZpbmZvKSAqIG51bWJlck9mRnJhbWVzKSk7CisgICAgYXV0byBidWZmZXJTaXplID0g
R1NUX0FVRElPX0lORk9fQlBGKCZpbmZvKSAqIG51bWJlck9mRnJhbWVzOworICAgIGdwb2ludGVy
IGJ1ZmZlckRhdGEgPSBnX21hbGxvYyhidWZmZXJTaXplKTsKKyAgICBpZiAobXV0ZWQoKSkKKyAg
ICAgICAgZ3N0X2F1ZGlvX2Zvcm1hdF9maWxsX3NpbGVuY2UoaW5mby5maW5mbywgYnVmZmVyRGF0
YSwgYnVmZmVyU2l6ZSk7CisgICAgZWxzZQorICAgICAgICBtZW1jcHkoYnVmZmVyRGF0YSwgYXVk
aW9EYXRhLCBidWZmZXJTaXplKTsKKworICAgIGF1dG8gYnVmZmVyID0gYWRvcHRHUmVmKGdzdF9i
dWZmZXJfbmV3X3dyYXBwZWQoYnVmZmVyRGF0YSwgYnVmZmVyU2l6ZSkpOwogICAgIEdSZWZQdHI8
R3N0Q2Fwcz4gY2FwcyA9IGFkb3B0R1JlZihnc3RfYXVkaW9faW5mb190b19jYXBzKCZpbmZvKSk7
CiAgICAgYXV0byBzYW1wbGUgPSBhZG9wdEdSZWYoZ3N0X3NhbXBsZV9uZXcoYnVmZmVyLmdldCgp
LCBjYXBzLmdldCgpLCBudWxscHRyLCBudWxscHRyKSk7CiAgICAgYXV0byBkYXRhKHN0ZDo6dW5p
cXVlX3B0cjxHU3RyZWFtZXJBdWRpb0RhdGE+KG5ldyBHU3RyZWFtZXJBdWRpb0RhdGEoV1RGTW92
ZShzYW1wbGUpLCBpbmZvKSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWVkaWFzdHJlYW0vZ3N0cmVhbWVyL1JlYWx0aW1lT3V0Z29pbmdBdWRpb1NvdXJjZUxpYldlYlJU
Qy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVh
bHRpbWVPdXRnb2luZ0F1ZGlvU291cmNlTGliV2ViUlRDLmNwcAppbmRleCAyMTc3MDMyMzY0MDI2
YTI3NjM1ZTMxOWVkNDViM2M4MmU5ODMwNDg4Li43YjViZGFkZGJjMWE2MWY5OTJlMTFiYmRmN2Ji
OWY0NzNhNTA2NzkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0
cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVPdXRnb2luZ0F1ZGlvU291cmNlTGliV2ViUlRDLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRp
bWVPdXRnb2luZ0F1ZGlvU291cmNlTGliV2ViUlRDLmNwcApAQCAtMTE4LDI3ICsxMTgsMjUgQEAg
dm9pZCBSZWFsdGltZU91dGdvaW5nQXVkaW9Tb3VyY2VMaWJXZWJSVEM6OnB1bGxBdWRpb0RhdGEo
KQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgYXV0byBpbmJ1ZiA9IGFkb3B0R1JlZihn
c3RfYWRhcHRlcl90YWtlX2J1ZmZlcihtX2FkYXB0ZXIuZ2V0KCksIGluQnVmZmVyU2l6ZSkpOwot
ICAgIEdzdE1hcEluZm8gaW5tYXA7Ci0gICAgZ3N0X2J1ZmZlcl9tYXAoaW5idWYuZ2V0KCksICZp
bm1hcCwgc3RhdGljX2Nhc3Q8R3N0TWFwRmxhZ3M+KEdTVF9NQVBfUkVBRCkpOwotCi0gICAgR3N0
TWFwSW5mbyBvdXRtYXA7Ci0gICAgYXV0byBvdXRidWYgPSBhZG9wdEdSZWYoZ3N0X2J1ZmZlcl9u
ZXdfYWxsb2NhdGUobnVsbHB0ciwgb3V0QnVmZmVyU2l6ZSwgMCkpOwotICAgIGdzdF9idWZmZXJf
bWFwKG91dGJ1Zi5nZXQoKSwgJm91dG1hcCwgc3RhdGljX2Nhc3Q8R3N0TWFwRmxhZ3M+KEdTVF9N
QVBfV1JJVEUpKTsKLQotICAgIGdwb2ludGVyIGluWzFdID0geyBpbm1hcC5kYXRhIH07Ci0gICAg
Z3BvaW50ZXIgb3V0WzFdID0geyBvdXRtYXAuZGF0YSB9OwotICAgIGlmIChnc3RfYXVkaW9fY29u
dmVydGVyX3NhbXBsZXMobV9zYW1wbGVDb252ZXJ0ZXIsIHN0YXRpY19jYXN0PEdzdEF1ZGlvQ29u
dmVydGVyRmxhZ3M+KDApLCBpbiwgaW5DaHVua1NhbXBsZUNvdW50LCBvdXQsIG91dENodW5rU2Ft
cGxlQ291bnQpKSB7Ci0gICAgICAgIHNlbmRBdWRpb0ZyYW1lcyhvdXRtYXAuZGF0YSwKLSAgICAg
ICAgICAgIExpYldlYlJUQ0F1ZGlvRm9ybWF0OjpzYW1wbGVTaXplLAotICAgICAgICAgICAgc3Rh
dGljX2Nhc3Q8aW50PihtX291dHB1dFN0cmVhbURlc2NyaXB0aW9uLT5zYW1wbGVSYXRlKCkpLAot
ICAgICAgICAgICAgc3RhdGljX2Nhc3Q8aW50PihtX291dHB1dFN0cmVhbURlc2NyaXB0aW9uLT5u
dW1iZXJPZkNoYW5uZWxzKCkpLAotICAgICAgICAgICAgb3V0Q2h1bmtTYW1wbGVDb3VudCk7Ci0g
ICAgfSBlbHNlCi0gICAgICAgIEdTVF9FUlJPUigiQ291bGQgbm90IGNvbnZlcnQgc2FtcGxlcy4i
KTsKLQotICAgIGdzdF9idWZmZXJfdW5tYXAoaW5idWYuZ2V0KCksICZpbm1hcCk7Ci0gICAgZ3N0
X2J1ZmZlcl91bm1hcChvdXRidWYuZ2V0KCksICZvdXRtYXApOworICAgIGF1dG8gaW5CdWZmZXIg
PSBhZG9wdEdSZWYoZ3N0X2FkYXB0ZXJfdGFrZV9idWZmZXIobV9hZGFwdGVyLmdldCgpLCBpbkJ1
ZmZlclNpemUpKTsKKyAgICBhdXRvIG91dEJ1ZmZlciA9IGFkb3B0R1JlZihnc3RfYnVmZmVyX25l
d19hbGxvY2F0ZShudWxscHRyLCBvdXRCdWZmZXJTaXplLCAwKSk7CisgICAgR3N0TWFwcGVkQnVm
ZmVyIG91dE1hcChvdXRCdWZmZXIuZ2V0KCksIEdTVF9NQVBfV1JJVEUpOworICAgIGlmIChpc1Np
bGVuY2VkKCkpCisgICAgICAgIGdzdF9hdWRpb19mb3JtYXRfZmlsbF9zaWxlbmNlKG1fb3V0cHV0
U3RyZWFtRGVzY3JpcHRpb24tPmdldEluZm8oKS0+ZmluZm8sIG91dE1hcC5kYXRhKCksIG91dE1h
cC5zaXplKCkpOworICAgIGVsc2UgeworICAgICAgICBHc3RNYXBwZWRCdWZmZXIgaW5NYXAoaW5C
dWZmZXIuZ2V0KCksIEdTVF9NQVBfUkVBRCk7CisKKyAgICAgICAgZ3BvaW50ZXIgaW5bMV0gPSB7
IGluTWFwLmRhdGEoKSB9OworICAgICAgICBncG9pbnRlciBvdXRbMV0gPSB7IG91dE1hcC5kYXRh
KCkgfTsKKyAgICAgICAgaWYgKCFnc3RfYXVkaW9fY29udmVydGVyX3NhbXBsZXMobV9zYW1wbGVD
b252ZXJ0ZXIsIHN0YXRpY19jYXN0PEdzdEF1ZGlvQ29udmVydGVyRmxhZ3M+KDApLCBpbiwgaW5D
aHVua1NhbXBsZUNvdW50LCBvdXQsIG91dENodW5rU2FtcGxlQ291bnQpKSB7CisgICAgICAgICAg
ICBHU1RfRVJST1IoIkNvdWxkIG5vdCBjb252ZXJ0IHNhbXBsZXMuIik7CisKKyAgICAgICAgICAg
IHJldHVybjsKKyAgICAgICAgfQorICAgIH0KKworICAgIHNlbmRBdWRpb0ZyYW1lcyhvdXRNYXAu
ZGF0YSgpLCBMaWJXZWJSVENBdWRpb0Zvcm1hdDo6c2FtcGxlU2l6ZSwgc3RhdGljX2Nhc3Q8aW50
PihtX291dHB1dFN0cmVhbURlc2NyaXB0aW9uLT5zYW1wbGVSYXRlKCkpLAorICAgICAgICBzdGF0
aWNfY2FzdDxpbnQ+KG1fb3V0cHV0U3RyZWFtRGVzY3JpcHRpb24tPm51bWJlck9mQ2hhbm5lbHMo
KSksIG91dENodW5rU2FtcGxlQ291bnQpOwogfQogCiBib29sIFJlYWx0aW1lT3V0Z29pbmdBdWRp
b1NvdXJjZUxpYldlYlJUQzo6aXNSZWFjaGluZ0J1ZmZlcmVkQXVkaW9EYXRhSGlnaExpbWl0KCkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>354924</attachid>
            <date>2018-11-15 06:01:26 -0800</date>
            <delta_ts>2018-11-15 06:39:36 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-191631-20181115110125.patch</filename>
            <type>text/plain</type>
            <size>5198</size>
            <attacher name="Thibault Saunier">tsaunier</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4MTcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWQyMWE1Njk2NzRjN2Vm
ZTI1MmZjYmM0M2FiODAxOWRiNGE4Y2YyNS4uNzU3ZWIyMzY5ZmRiMDBhNWI5ZWZhMjI4ZDEzZDcx
NDViMzlmZTQ5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE4LTExLTEzICBUaGli
YXVsdCBTYXVuaWVyICA8dHNhdW5pZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1N0cmVhbWVy
XVtXZWJSVENdIEFkZCBzdXBwb3J0IGZvciBzZW5kaW5nIHNpbGVuY2Ugb3Igc2lsZW5jaW5nIGFu
IGluY29taW5nIHRyYWNrCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xOTE2MzEKKworICAgICAgICBSZXZpZXdlZCBieSBYYWJpZXIgUm9kcmlndWV6LUNh
bHZhci4KKworICAgICAgICBUaGlzIHdpbGwgYmUgdGVzdGVkIG9uY2Ugd2Via2l0Lm9yZy9iLzE4
NjkzMyBpcyBpbXBsZW1lbnRlZC4KKworICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dz
dHJlYW1lci9SZWFsdGltZUluY29taW5nQXVkaW9Tb3VyY2VMaWJXZWJSVEMuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6UmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNlTGliV2ViUlRDOjpPbkRhdGEp
OgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU91dGdv
aW5nQXVkaW9Tb3VyY2VMaWJXZWJSVEMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVP
dXRnb2luZ0F1ZGlvU291cmNlTGliV2ViUlRDOjpwdWxsQXVkaW9EYXRhKToKKwogMjAxOC0xMS0x
NCAgQWxpIEp1bWEgIDxhanVtYUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVHJhbnNmb3JtIG9m
IGNvbXBvc2l0ZWQgbGF5ZXIgbm90IHVwZGF0ZWQgd2hlbiBsYXllciBhbHNvIG5lZWRzIHJlcGFp
bnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJl
YW1lci9SZWFsdGltZUluY29taW5nQXVkaW9Tb3VyY2VMaWJXZWJSVEMuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL1JlYWx0aW1lSW5jb21pbmdBdWRp
b1NvdXJjZUxpYldlYlJUQy5jcHAKaW5kZXggNTQxODI5ZWQxMjBjY2E5MTMzYmQ2MGNjMjdlYmNj
MmQ5ODA5ZGYzNS4uZWYwZTFjMjQzNTRjOGI1ODBiZTRhYzVjOTg1ZTgxYjM5MTA1MjM2NiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL1Jl
YWx0aW1lSW5jb21pbmdBdWRpb1NvdXJjZUxpYldlYlJUQy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL1JlYWx0aW1lSW5jb21pbmdBdWRpb1Nv
dXJjZUxpYldlYlJUQy5jcHAKQEAgLTY0LDkgKzY0LDE0IEBAIHZvaWQgUmVhbHRpbWVJbmNvbWlu
Z0F1ZGlvU291cmNlTGliV2ViUlRDOjpPbkRhdGEoY29uc3Qgdm9pZCogYXVkaW9EYXRhLCBpbnQs
IGluCiAKICAgICBnc3RfYXVkaW9faW5mb19zZXRfZm9ybWF0KCZpbmZvLCBmb3JtYXQsIHNhbXBs
ZVJhdGUsIG51bWJlck9mQ2hhbm5lbHMsIE5VTEwpOwogCi0gICAgYXV0byBidWZmZXIgPSBhZG9w
dEdSZWYoZ3N0X2J1ZmZlcl9uZXdfd3JhcHBlZCgKLSAgICAgICAgZ19tZW1kdXAoYXVkaW9EYXRh
LCBHU1RfQVVESU9fSU5GT19CUEYoJmluZm8pICogbnVtYmVyT2ZGcmFtZXMpLAotICAgICAgICBH
U1RfQVVESU9fSU5GT19CUEYoJmluZm8pICogbnVtYmVyT2ZGcmFtZXMpKTsKKyAgICBhdXRvIGJ1
ZmZlclNpemUgPSBHU1RfQVVESU9fSU5GT19CUEYoJmluZm8pICogbnVtYmVyT2ZGcmFtZXM7Cisg
ICAgZ3BvaW50ZXIgYnVmZmVyRGF0YSA9IGdfbWFsbG9jKGJ1ZmZlclNpemUpOworICAgIGlmICht
dXRlZCgpKQorICAgICAgICBnc3RfYXVkaW9fZm9ybWF0X2ZpbGxfc2lsZW5jZShpbmZvLmZpbmZv
LCBidWZmZXJEYXRhLCBidWZmZXJTaXplKTsKKyAgICBlbHNlCisgICAgICAgIG1lbWNweShidWZm
ZXJEYXRhLCBhdWRpb0RhdGEsIGJ1ZmZlclNpemUpOworCisgICAgYXV0byBidWZmZXIgPSBhZG9w
dEdSZWYoZ3N0X2J1ZmZlcl9uZXdfd3JhcHBlZChidWZmZXJEYXRhLCBidWZmZXJTaXplKSk7CiAg
ICAgR1JlZlB0cjxHc3RDYXBzPiBjYXBzID0gYWRvcHRHUmVmKGdzdF9hdWRpb19pbmZvX3RvX2Nh
cHMoJmluZm8pKTsKICAgICBhdXRvIHNhbXBsZSA9IGFkb3B0R1JlZihnc3Rfc2FtcGxlX25ldyhi
dWZmZXIuZ2V0KCksIGNhcHMuZ2V0KCksIG51bGxwdHIsIG51bGxwdHIpKTsKICAgICBhdXRvIGRh
dGEoc3RkOjp1bmlxdWVfcHRyPEdTdHJlYW1lckF1ZGlvRGF0YT4obmV3IEdTdHJlYW1lckF1ZGlv
RGF0YShXVEZNb3ZlKHNhbXBsZSksIGluZm8pKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVPdXRnb2luZ0F1ZGlvU291
cmNlTGliV2ViUlRDLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dz
dHJlYW1lci9SZWFsdGltZU91dGdvaW5nQXVkaW9Tb3VyY2VMaWJXZWJSVEMuY3BwCmluZGV4IDIx
NzcwMzIzNjQwMjZhMjc2MzVlMzE5ZWQ0NWIzYzgyZTk4MzA0ODguLjdiNWJkYWRkYmMxYTYxZjk5
MmUxMWJiZGY3YmI5ZjQ3M2E1MDY3OTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU91dGdvaW5nQXVkaW9Tb3VyY2VMaWJX
ZWJSVEMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJl
YW1lci9SZWFsdGltZU91dGdvaW5nQXVkaW9Tb3VyY2VMaWJXZWJSVEMuY3BwCkBAIC0xMTgsMjcg
KzExOCwyNSBAQCB2b2lkIFJlYWx0aW1lT3V0Z29pbmdBdWRpb1NvdXJjZUxpYldlYlJUQzo6cHVs
bEF1ZGlvRGF0YSgpCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBhdXRvIGluYnVmID0g
YWRvcHRHUmVmKGdzdF9hZGFwdGVyX3Rha2VfYnVmZmVyKG1fYWRhcHRlci5nZXQoKSwgaW5CdWZm
ZXJTaXplKSk7Ci0gICAgR3N0TWFwSW5mbyBpbm1hcDsKLSAgICBnc3RfYnVmZmVyX21hcChpbmJ1
Zi5nZXQoKSwgJmlubWFwLCBzdGF0aWNfY2FzdDxHc3RNYXBGbGFncz4oR1NUX01BUF9SRUFEKSk7
Ci0KLSAgICBHc3RNYXBJbmZvIG91dG1hcDsKLSAgICBhdXRvIG91dGJ1ZiA9IGFkb3B0R1JlZihn
c3RfYnVmZmVyX25ld19hbGxvY2F0ZShudWxscHRyLCBvdXRCdWZmZXJTaXplLCAwKSk7Ci0gICAg
Z3N0X2J1ZmZlcl9tYXAob3V0YnVmLmdldCgpLCAmb3V0bWFwLCBzdGF0aWNfY2FzdDxHc3RNYXBG
bGFncz4oR1NUX01BUF9XUklURSkpOwotCi0gICAgZ3BvaW50ZXIgaW5bMV0gPSB7IGlubWFwLmRh
dGEgfTsKLSAgICBncG9pbnRlciBvdXRbMV0gPSB7IG91dG1hcC5kYXRhIH07Ci0gICAgaWYgKGdz
dF9hdWRpb19jb252ZXJ0ZXJfc2FtcGxlcyhtX3NhbXBsZUNvbnZlcnRlciwgc3RhdGljX2Nhc3Q8
R3N0QXVkaW9Db252ZXJ0ZXJGbGFncz4oMCksIGluLCBpbkNodW5rU2FtcGxlQ291bnQsIG91dCwg
b3V0Q2h1bmtTYW1wbGVDb3VudCkpIHsKLSAgICAgICAgc2VuZEF1ZGlvRnJhbWVzKG91dG1hcC5k
YXRhLAotICAgICAgICAgICAgTGliV2ViUlRDQXVkaW9Gb3JtYXQ6OnNhbXBsZVNpemUsCi0gICAg
ICAgICAgICBzdGF0aWNfY2FzdDxpbnQ+KG1fb3V0cHV0U3RyZWFtRGVzY3JpcHRpb24tPnNhbXBs
ZVJhdGUoKSksCi0gICAgICAgICAgICBzdGF0aWNfY2FzdDxpbnQ+KG1fb3V0cHV0U3RyZWFtRGVz
Y3JpcHRpb24tPm51bWJlck9mQ2hhbm5lbHMoKSksCi0gICAgICAgICAgICBvdXRDaHVua1NhbXBs
ZUNvdW50KTsKLSAgICB9IGVsc2UKLSAgICAgICAgR1NUX0VSUk9SKCJDb3VsZCBub3QgY29udmVy
dCBzYW1wbGVzLiIpOwotCi0gICAgZ3N0X2J1ZmZlcl91bm1hcChpbmJ1Zi5nZXQoKSwgJmlubWFw
KTsKLSAgICBnc3RfYnVmZmVyX3VubWFwKG91dGJ1Zi5nZXQoKSwgJm91dG1hcCk7CisgICAgYXV0
byBpbkJ1ZmZlciA9IGFkb3B0R1JlZihnc3RfYWRhcHRlcl90YWtlX2J1ZmZlcihtX2FkYXB0ZXIu
Z2V0KCksIGluQnVmZmVyU2l6ZSkpOworICAgIGF1dG8gb3V0QnVmZmVyID0gYWRvcHRHUmVmKGdz
dF9idWZmZXJfbmV3X2FsbG9jYXRlKG51bGxwdHIsIG91dEJ1ZmZlclNpemUsIDApKTsKKyAgICBH
c3RNYXBwZWRCdWZmZXIgb3V0TWFwKG91dEJ1ZmZlci5nZXQoKSwgR1NUX01BUF9XUklURSk7Cisg
ICAgaWYgKGlzU2lsZW5jZWQoKSkKKyAgICAgICAgZ3N0X2F1ZGlvX2Zvcm1hdF9maWxsX3NpbGVu
Y2UobV9vdXRwdXRTdHJlYW1EZXNjcmlwdGlvbi0+Z2V0SW5mbygpLT5maW5mbywgb3V0TWFwLmRh
dGEoKSwgb3V0TWFwLnNpemUoKSk7CisgICAgZWxzZSB7CisgICAgICAgIEdzdE1hcHBlZEJ1ZmZl
ciBpbk1hcChpbkJ1ZmZlci5nZXQoKSwgR1NUX01BUF9SRUFEKTsKKworICAgICAgICBncG9pbnRl
ciBpblsxXSA9IHsgaW5NYXAuZGF0YSgpIH07CisgICAgICAgIGdwb2ludGVyIG91dFsxXSA9IHsg
b3V0TWFwLmRhdGEoKSB9OworICAgICAgICBpZiAoIWdzdF9hdWRpb19jb252ZXJ0ZXJfc2FtcGxl
cyhtX3NhbXBsZUNvbnZlcnRlciwgc3RhdGljX2Nhc3Q8R3N0QXVkaW9Db252ZXJ0ZXJGbGFncz4o
MCksIGluLCBpbkNodW5rU2FtcGxlQ291bnQsIG91dCwgb3V0Q2h1bmtTYW1wbGVDb3VudCkpIHsK
KyAgICAgICAgICAgIEdTVF9FUlJPUigiQ291bGQgbm90IGNvbnZlcnQgc2FtcGxlcy4iKTsKKwor
ICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgfQorCisgICAgc2VuZEF1ZGlvRnJh
bWVzKG91dE1hcC5kYXRhKCksIExpYldlYlJUQ0F1ZGlvRm9ybWF0OjpzYW1wbGVTaXplLCBzdGF0
aWNfY2FzdDxpbnQ+KG1fb3V0cHV0U3RyZWFtRGVzY3JpcHRpb24tPnNhbXBsZVJhdGUoKSksCisg
ICAgICAgIHN0YXRpY19jYXN0PGludD4obV9vdXRwdXRTdHJlYW1EZXNjcmlwdGlvbi0+bnVtYmVy
T2ZDaGFubmVscygpKSwgb3V0Q2h1bmtTYW1wbGVDb3VudCk7CiB9CiAKIGJvb2wgUmVhbHRpbWVP
dXRnb2luZ0F1ZGlvU291cmNlTGliV2ViUlRDOjppc1JlYWNoaW5nQnVmZmVyZWRBdWRpb0RhdGFI
aWdoTGltaXQoKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>