<?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>184250</bug_id>
          
          <creation_ts>2018-04-02 17:16:04 -0700</creation_ts>
          <short_desc>Unable to call event.preventDefault in dynamically added event listener</short_desc>
          <delta_ts>2018-09-06 15:20:30 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>Safari 11</version>
          <rep_platform>All</rep_platform>
          <op_sys>iOS 11</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=185656</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>alexreardon</reporter>
          <assigned_to name="Tadeu Zagallo">tzagallo</assigned_to>
          <cc>andrew</cc>
    
    <cc>bbmarelyo</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>desandrocodes</cc>
    
    <cc>dino</cc>
    
    <cc>eoconnor</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fnlctrl</cc>
    
    <cc>ggaren</cc>
    
    <cc>herr.ernst</cc>
    
    <cc>john.firebaugh</cc>
    
    <cc>jonlee</cc>
    
    <cc>mansing.choy</cc>
    
    <cc>rniwa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>stoffeastrom</cc>
    
    <cc>tsov</cc>
    
    <cc>tudor</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1411315</commentid>
    <comment_count>0</comment_count>
    <who name="">alexreardon</who>
    <bug_when>2018-04-02 17:16:04 -0700</bug_when>
    <thetext>Hi there,

When you add an event listener (the parent listener) and you add another event listener inside of it (the child listener), the dynamically added child event listener is not able to use event.preventDefault() as the event is non cancelable. The dynamically added child listener will receive the event - but it is unable to use preventDefault(). This is true regardless of whether the parent event handler is a passive or capture handler (or both).

This is true for all the event types I tested.

Here a simple example that reproduces the issue:

- desktop: https://codepen.io/alexreardon/pen/eMKMmm
- mobile: https://codepen.io/alexreardon/pen/yKEKby

Able to correctly use event.preventDefault() in child listener on:
- Chrome
- Firefox
- Edge
- Internet Explorer 11
- Android: Chrome mobile 
- Android: Firefox (which I think just uses chrome under the hood)
- Safari 10.x (I was unable to test 11.2 as I could not find 

Not able to use event.preventDefault() in child listener on:
- Safari 11.3 on mac 
- Safari 11.3 on iOS 11.3 (as well as the other browsers that use the native browser such as firefox and chrome)
- Safari on iOS 11.2.6 (it looks like there was a configuration where event.preventDefault() was working. I think it had to do with touch-action: manipulation but I am yet to confirm)

This is important to us because we use event.preventDefault() on a touchmove event to prevent native scrolling on mobile. I can 

Work around:

You need to add an event handler in a non dynamic way (ie at startup) and then you can use event.preventDefault() as expected.

Impact:

A lot of drag and drop libraries and other tools use event.preventDefault() on touchmove to opt out of native scrolling. Right now this is not possible without adding your own touchmove listener before a touchstart</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1411327</commentid>
    <comment_count>1</comment_count>
    <who name="">alexreardon</who>
    <bug_when>2018-04-02 17:58:18 -0700</bug_when>
    <thetext>A bit of context, upgrading from iOS 11.2 to iOS 11.3 caused react-beautiful-dnd to break: 
https://github.com/atlassian/react-beautiful-dnd/issues/413</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1411357</commentid>
    <comment_count>2</comment_count>
    <who name="">alexreardon</who>
    <bug_when>2018-04-02 22:16:36 -0700</bug_when>
    <thetext>It looks like this is also effecting shopify/draggable
https://github.com/Shopify/draggable/issues/198</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1411451</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-04-03 10:28:10 -0700</bug_when>
    <thetext>&lt;rdar://problem/39145092&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1411603</commentid>
    <comment_count>4</comment_count>
    <who name="Max Hoffmann">tsov</who>
    <bug_when>2018-04-03 17:11:26 -0700</bug_when>
    <thetext>I can confirm this for:

- Safari 11.3 on Mac OS X 10.13.3
- Safari 11.3 on iOS 11.3

Any drag and drop implementation for touch relies on calling `touchMoveEvent.preventDefault()` to cancel native scrolling. I could imagine most dnd solutions out there adding `touchmove` as child listeners.

The current workaround suggested by alexreardon@gmail.com works well, but won&apos;t work when dynamically adding `touchmove` events to other documents, like iframes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1413549</commentid>
    <comment_count>5</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2018-04-10 20:58:22 -0700</bug_when>
    <thetext>In the linked examples, I see the main problem being that we explicitly mark mousemove events as being not cancelable:

MouseEvent::create

bool isCancelable = eventType != eventNames().mousemoveEvent &amp;&amp; !isMouseEnterOrLeave;

Whereas the spec says it should be:

https://www.w3.org/TR/uievents/#event-type-mousemove

However, it looks like we&apos;ve implemented it that way since 2013, so this wouldn&apos;t be a recent regression.

For touch events, it&apos;s been similarly unchanged since 2014.

I think I&apos;ll have to make a different test case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1413551</commentid>
    <comment_count>6</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2018-04-10 21:07:34 -0700</bug_when>
    <thetext>Yes, the touchmove is not cancelable either.

I was worried this might have something to do with making event listeners passive by default, but the examples here are explicitly setting to be not-passive.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1413554</commentid>
    <comment_count>7</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2018-04-10 21:09:38 -0700</bug_when>
    <thetext>I can confirm it is only happening to event listeners that are added inside event handlers. It also doesn&apos;t matter if the once option is true or false.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1413618</commentid>
    <comment_count>8</comment_count>
    <who name="Ernst">herr.ernst</who>
    <bug_when>2018-04-11 01:30:17 -0700</bug_when>
    <thetext>The bug that dynamically added event listeners (i.e. event listeners added in event listeners) can&apos;t preventDefault exists since iOS 10: 
http://www.openradar.me/28359335
http://www.openradar.me/28479522</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1414368</commentid>
    <comment_count>9</comment_count>
    <who name="">stoffeastrom</who>
    <bug_when>2018-04-13 04:09:49 -0700</bug_when>
    <thetext>It&apos;s affecting my gestures library also.

I can confirm it has been working a long time until iOS 11.3!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1423645</commentid>
    <comment_count>10</comment_count>
    <who name="Tadeu Zagallo">tzagallo</who>
    <bug_when>2018-05-14 09:25:49 -0700</bug_when>
    <thetext>I think I finally understood how the behaviour actually changed. Dynamic touchmove listeners haven&apos;t been cancelable since iOS 10, so I couldn&apos;t find a minimal repro case at first, which was confusing, since the events *were* cancelable in the example provided here. What I realised was that the only reason the example worked in the first place was that there was already a touchmove listener on the document, added by React. So, before iOS 11.3, a touchmove event was cancelable as long as there was already one touchmove listener in the region of the touch. Since iOS 11.3, touchmove events cannot be prevented by dynamic listeners, regardless of whether there was already another listener. I have not yet identified what cause this regression though, but I&apos;m working on that now that I have reduced the example.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1423784</commentid>
    <comment_count>11</comment_count>
    <who name="Tadeu Zagallo">tzagallo</who>
    <bug_when>2018-05-14 14:33:46 -0700</bug_when>
    <thetext>I can see now how making event listeners passive by default affected all the drag-and-drop libraries: Even though the event listener was explicitly setting passive to false, its behaviour depended on the event listener that React had added to the document first, as I mentioned in my previous comment. That event listener was being added to the document, and did not explicitly set passive to false, so it was being treated as a passive listener (handled asynchronously), which in turn caused the dynamically added listener to also be handled asynchronously. I could verify that by modifying the React&apos;s listener to pass passive: false and that restored the original behaviour of the drag-and-drop. I&apos;ll have a patch soon.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1423790</commentid>
    <comment_count>12</comment_count>
    <who name="">alexreardon</who>
    <bug_when>2018-05-14 14:39:12 -0700</bug_when>
    <thetext>Is the patch to resume the pre 11.3 behaviour - or to fix the ability to enable calling event.preventDefault in a dynamically added event listener?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1423793</commentid>
    <comment_count>13</comment_count>
    <who name="Tadeu Zagallo">tzagallo</who>
    <bug_when>2018-05-14 14:42:54 -0700</bug_when>
    <thetext>(In reply to alexreardon from comment #12)
&gt; Is the patch to resume the pre 11.3 behaviour - or to fix the ability to
&gt; enable calling event.preventDefault in a dynamically added event listener?

It will make touch events cancelable from dynamically added event listeners.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1423794</commentid>
    <comment_count>14</comment_count>
    <who name="">alexreardon</who>
    <bug_when>2018-05-14 14:44:45 -0700</bug_when>
    <thetext>Yay! 🎉</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424020</commentid>
    <comment_count>15</comment_count>
      <attachid>340412</attachid>
    <who name="Tadeu Zagallo">tzagallo</who>
    <bug_when>2018-05-15 08:49:06 -0700</bug_when>
    <thetext>Created attachment 340412
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424058</commentid>
    <comment_count>16</comment_count>
      <attachid>340412</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2018-05-15 10:34:48 -0700</bug_when>
    <thetext>Comment on attachment 340412
Patch

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

r=me with comments

&gt; LayoutTests/fast/events/touch/ios/touchmove-cancelable-after-touchstart.html:77
&gt; +        // NOTE: removing this assertion will cause the test to fail, the event listener region is not immediately updated
&gt; +        shouldBe(&quot;event.target&quot;, &quot;square&quot;);

Let&apos;s clarify this comment:

(1) Let&apos;s say &quot;For some reason, if we don&apos;t include this shouldBe line, the first few touchmove events we see will be passive (not cancelable)&quot;.

(2) Let&apos;s link to a bug report that says we should fix that.

(3) If all you need to work around that bug is a change to the DOM, then can we just do some kind of no-op DOM change? That will make the workaround clearer.

&gt; LayoutTests/fast/events/touch/ios/touchmove-cancelable-after-touchstart.html:79
&gt; +        window.addEventListener(&quot;touchmove&quot;, touchmoveEventHandler, { passive: false, once: true });
&gt; +    }, { once: true });

I think it&apos;s a little racy for the web author to specify touchstart as passive. There&apos;s no guarantee that touchmove will be added before the user is done touching!

So, I think this test case would be a little better if we specified passive: false on the touchstart handler -- and it would still test our ability to treat the new touchmove handler as non-passive (synchronous).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424117</commentid>
    <comment_count>17</comment_count>
      <attachid>340433</attachid>
    <who name="Tadeu Zagallo">tzagallo</who>
    <bug_when>2018-05-15 13:57:42 -0700</bug_when>
    <thetext>Created attachment 340433
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424156</commentid>
    <comment_count>18</comment_count>
      <attachid>340433</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2018-05-15 16:04:04 -0700</bug_when>
    <thetext>Comment on attachment 340433
Patch for landing

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424179</commentid>
    <comment_count>19</comment_count>
      <attachid>340433</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-05-15 16:50:24 -0700</bug_when>
    <thetext>Comment on attachment 340433
Patch for landing

Clearing flags on attachment: 340433

Committed r231821: &lt;https://trac.webkit.org/changeset/231821&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424180</commentid>
    <comment_count>20</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-05-15 16:50:26 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424220</commentid>
    <comment_count>21</comment_count>
      <attachid>340433</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2018-05-15 19:47:25 -0700</bug_when>
    <thetext>Comment on attachment 340433
Patch for landing

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

&gt; Source/WebKit/ChangeLog:9
&gt; +        The tracking type for touch events were only update on touchstart, which meant that event

&quot;were only update&quot; -&gt; &quot;was only updated&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424498</commentid>
    <comment_count>22</comment_count>
    <who name="Tadeu Zagallo">tzagallo</who>
    <bug_when>2018-05-16 15:13:10 -0700</bug_when>
    <thetext>Reopening to attach new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424499</commentid>
    <comment_count>23</comment_count>
      <attachid>340528</attachid>
    <who name="Tadeu Zagallo">tzagallo</who>
    <bug_when>2018-05-16 15:13:13 -0700</bug_when>
    <thetext>Created attachment 340528
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424501</commentid>
    <comment_count>24</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-05-16 15:14:35 -0700</bug_when>
    <thetext>Attachment 340528 did not pass style-queue:


ERROR: Source/WebKit/ChangeLog:168:  ChangeLog entry has no bug number  [changelog/bugnumber] [5]
ERROR: LayoutTests/ChangeLog:146:  ChangeLog entry has no bug number  [changelog/bugnumber] [5]
Total errors found: 2 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424505</commentid>
    <comment_count>25</comment_count>
      <attachid>340528</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2018-05-16 15:16:02 -0700</bug_when>
    <thetext>Comment on attachment 340528
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424507</commentid>
    <comment_count>26</comment_count>
      <attachid>340528</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-05-16 15:18:26 -0700</bug_when>
    <thetext>Comment on attachment 340528
Patch

Rejecting attachment 340528 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-02&apos;, &apos;validate-changelog&apos;, &apos;--check-oops&apos;, &apos;--non-interactive&apos;, 340528, &apos;--port=mac&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

ChangeLog entry in LayoutTests/ChangeLog is not at the top of the file.

Full output: http://webkit-queues.webkit.org/results/7702520</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424770</commentid>
    <comment_count>27</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2018-05-17 09:38:40 -0700</bug_when>
    <thetext>Committed r231907: &lt;https://trac.webkit.org/changeset/231907&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1448017</commentid>
    <comment_count>28</comment_count>
    <who name="">alexreardon</who>
    <bug_when>2018-08-05 17:22:17 -0700</bug_when>
    <thetext>Thank you everyone for your efforts on this. 

Has the fix been released in Safari yet? How could I find this out?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1448018</commentid>
    <comment_count>29</comment_count>
    <who name="">alexreardon</who>
    <bug_when>2018-08-05 17:28:24 -0700</bug_when>
    <thetext>I can see that it has not yet been released on Safari 11.1.2: https://codepen.io/alexreardon/pen/eMKMmm</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1448019</commentid>
    <comment_count>30</comment_count>
    <who name="">alexreardon</who>
    <bug_when>2018-08-05 17:38:20 -0700</bug_when>
    <thetext>It looks like it is now working for Safari on mobile: https://codepen.io/alexreardon/pen/yKEKby</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1448020</commentid>
    <comment_count>31</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-08-05 17:39:05 -0700</bug_when>
    <thetext>The fix should be included in the iOS 12 betas.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1448021</commentid>
    <comment_count>32</comment_count>
    <who name="">alexreardon</who>
    <bug_when>2018-08-05 17:41:40 -0700</bug_when>
    <thetext>Great, thanks</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1451522</commentid>
    <comment_count>33</comment_count>
    <who name="">fnlctrl</who>
    <bug_when>2018-08-19 18:52:24 -0700</bug_when>
    <thetext>Just tried the codepen https://codepen.io/alexreardon/pen/yKEKby on iOS 12.0 beta with Safari 12 on a real device, and the bug persists.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1451613</commentid>
    <comment_count>34</comment_count>
    <who name="Tadeu Zagallo">tzagallo</who>
    <bug_when>2018-08-20 09:21:58 -0700</bug_when>
    <thetext>There&apos;s another bug related to this one that hasn&apos;t been fixed yet, in which only the first few touches are not cancelable from dynamically added touch handlers: https://bugs.webkit.org/show_bug.cgi?id=185656. In this case, since both events are handled with `once: true`, this happens most of the time. The patch for that bug has not been landed yet.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457288</commentid>
    <comment_count>35</comment_count>
    <who name="Andrew">andrew</who>
    <bug_when>2018-09-06 15:20:30 -0700</bug_when>
    <thetext>This is still broken on tests with iOS 12 public beta.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>340412</attachid>
            <date>2018-05-15 08:49:06 -0700</date>
            <delta_ts>2018-05-15 13:57:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-184250-20180515174905.patch</filename>
            <type>text/plain</type>
            <size>7057</size>
            <attacher name="Tadeu Zagallo">tzagallo</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMxMjY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGRhZmMzMTAxNzZiOTEzODhl
ZGQ1MDQ1YWM3MjJiOTdiNTY1NjA4NWMuLjVjZTBhOTNkZGM4Yjc4NzdmM2IyYjNkZDc2NzQ1YmJi
OTI3MzgyYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTgtMDUtMTUgIFRhZGV1IFph
Z2FsbG8gIDx0emFnYWxsb0BhcHBsZS5jb20+CisKKyAgICAgICAgVXBkYXRlIHRvdWNoIGV2ZW50
IHRyYWNraW5nIHR5cGUgb24gZXZlcnkgdG91Y2gKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NDI1MAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzkx
NDUwOTI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
VGhlIHRyYWNraW5nIHR5cGUgZm9yIHRvdWNoIGV2ZW50cyB3ZXJlIG9ubHkgdXBkYXRlIG9uIHRv
dWNoc3RhcnQsIHdoaWNoIG1lYW50IHRoYXQgZXZlbnQKKyAgICAgICAgbGlzdGVuZXJzIGFkZGVk
IGFmdGVyIHRoZSB0b3VjaHN0YXJ0IHdvdWxkIGFsd2F5cyBiZSB0cmVhdGVkIGFzIHBhc3NpdmUs
IGV2ZW4gaWYgZXhwbGljaXRseQorICAgICAgICBzZXR0aW5nIHBhc3NpdmUgdG8gZmFsc2UuCisK
KyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZVByb3h5OjpoYW5kbGVUb3VjaEV2ZW50U3luY2hyb25vdXNseSk6CisgICAgICAgIChX
ZWJLaXQ6OldlYlBhZ2VQcm94eTo6aGFuZGxlVG91Y2hFdmVudCk6CisKIDIwMTgtMDUtMDIgIEFs
ZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBBZGQg
V0tXZWJzaXRlRGF0YVN0b3JlUHJpdmF0ZS5fcHJveHlDb25maWd1cmF0aW9uIFNQSQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggYzliNDhjYjhmYTkyOTQ1Njhh
ZGVkN2JlNzJmYzJhM2IwZDIxMDU1MS4uNTBlYWRkNTE0NjRhODQ2MTBjMGNlYzA0MjE2YmVkZmEy
YTJlNmM0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC0y
Mjc1LDggKzIyNzUsNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6aGFuZGxlVG91Y2hFdmVudFN5bmNo
cm9ub3VzbHkoTmF0aXZlV2ViVG91Y2hFdmVudCYgZXZlbnQpCiAKICAgICBUcmFjZVNjb3BlIHNj
b3BlKFN5bmNUb3VjaEV2ZW50U3RhcnQsIFN5bmNUb3VjaEV2ZW50RW5kKTsKIAotICAgIGlmIChl
dmVudC50eXBlKCkgPT0gV2ViRXZlbnQ6OlRvdWNoU3RhcnQpCi0gICAgICAgIHVwZGF0ZVRvdWNo
RXZlbnRUcmFja2luZyhldmVudCk7CisgICAgdXBkYXRlVG91Y2hFdmVudFRyYWNraW5nKGV2ZW50
KTsKIAogICAgIFRyYWNraW5nVHlwZSB0b3VjaEV2ZW50c1RyYWNraW5nVHlwZSA9IHRvdWNoRXZl
bnRUcmFja2luZ1R5cGUoZXZlbnQpOwogICAgIGlmICh0b3VjaEV2ZW50c1RyYWNraW5nVHlwZSA9
PSBUcmFja2luZ1R5cGU6Ok5vdFRyYWNraW5nKQpAQCAtMjMyNyw4ICsyMzI2LDcgQEAgdm9pZCBX
ZWJQYWdlUHJveHk6OmhhbmRsZVRvdWNoRXZlbnQoY29uc3QgTmF0aXZlV2ViVG91Y2hFdmVudCYg
ZXZlbnQpCiAgICAgaWYgKCFpc1ZhbGlkKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmIChl
dmVudC50eXBlKCkgPT0gV2ViRXZlbnQ6OlRvdWNoU3RhcnQpCi0gICAgICAgIHVwZGF0ZVRvdWNo
RXZlbnRUcmFja2luZyhldmVudCk7CisgICAgdXBkYXRlVG91Y2hFdmVudFRyYWNraW5nKGV2ZW50
KTsKIAogICAgIGlmICh0b3VjaEV2ZW50VHJhY2tpbmdUeXBlKGV2ZW50KSA9PSBUcmFja2luZ1R5
cGU6Ok5vdFRyYWNraW5nKQogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNGEyYTkyMDFiNzE3MWM4
MjcxNjY0N2M3Yjg0Zjk0Zjg4ODUzYTZlYS4uNWU3NWNlZTExN2Y4NTZiNzRlOGJlOWQ4YTU5Nzdj
ODQzN2I4MjllYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE4LTA1LTE1ICBUYWRldSBaYWdh
bGxvICA8dHphZ2FsbG9AYXBwbGUuY29tPgorCisgICAgICAgIFVwZGF0ZSB0b3VjaCBldmVudCB0
cmFja2luZyB0eXBlIG9uIGV2ZXJ5IHRvdWNoCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xODQyNTAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM5MTQ1
MDkyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRo
ZSB0cmFja2luZyB0eXBlIGZvciB0b3VjaCBldmVudHMgd2VyZSBvbmx5IHVwZGF0ZSBvbiB0b3Vj
aHN0YXJ0LCB3aGljaCBtZWFudCB0aGF0IGV2ZW50CisgICAgICAgIGxpc3RlbmVycyBhZGRlZCBh
ZnRlciB0aGUgdG91Y2hzdGFydCB3b3VsZCBhbHdheXMgYmUgdHJlYXRlZCBhcyBwYXNzaXZlLCBl
dmVuIGlmIGV4cGxpY2l0bHkKKyAgICAgICAgc2V0dGluZyBwYXNzaXZlIHRvIGZhbHNlLgorCisg
ICAgICAgICogZmFzdC9ldmVudHMvdG91Y2gvaW9zL3RvdWNobW92ZS1jYW5jZWxhYmxlLWFmdGVy
LXRvdWNoc3RhcnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy90
b3VjaC9pb3MvdG91Y2htb3ZlLWNhbmNlbGFibGUtYWZ0ZXItdG91Y2hzdGFydC5odG1sOiBBZGRl
ZC4KKwogMjAxOC0wNS0wMiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAg
ICAgICAgVXNlIE5ldHdvcmtMb2FkQ2hlY2tlciBmb3IgbmF2aWdhdGlvbiBsb2FkcwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL3RvdWNobW92ZS1jYW5jZWxh
YmxlLWFmdGVyLXRvdWNoc3RhcnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVu
dHMvdG91Y2gvaW9zL3RvdWNobW92ZS1jYW5jZWxhYmxlLWFmdGVyLXRvdWNoc3RhcnQtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmJkY2Y2MTAwZWFkZTI2M2ZjODI0Y2E3OTA0YTFiYjRhNDY5NTZk
YTIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9pb3Mv
dG91Y2htb3ZlLWNhbmNlbGFibGUtYWZ0ZXItdG91Y2hzdGFydC1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwxMyBAQAorVGVzdCB0aGF0IHRvdWNobW92ZSBjYW4gYmUgY2FuY2VsbGVkIGZyb20gZXZl
bnQgbGlzdGVuZXJzIGR5bmFtaWNhbGx5IGFkZGVkIGFmdGVyIHRvdWNoc3RhcnQKKworT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgZXZlbnQudGFyZ2V0IGlzIHNxdWFyZQorUEFT
UyBldmVudC5jYW5jZWxhYmxlIGlzIHRydWUKK1BBU1MgZXZlbnQuZGVmYXVsdFByZXZlbnRlZCBp
cyB0cnVlCitQQVNTIGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wIGlzIDAKK1BBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9pb3MvdG91Y2htb3ZlLWNhbmNlbGFibGUtYWZ0ZXItdG91
Y2hzdGFydC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL3RvdWNobW92
ZS1jYW5jZWxhYmxlLWFmdGVyLXRvdWNoc3RhcnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mNGI2ZjIwODA4
M2RmYzFhMWEwOTRmMzUyOTMyZTMwOWI0OTZjMjZjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL3RvdWNobW92ZS1jYW5jZWxhYmxlLWFmdGVyLXRv
dWNoc3RhcnQuaHRtbApAQCAtMCwwICsxLDk0IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgor
PGhlYWQ+CisgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13
aWR0aCwgaW5pdGlhbC1zY2FsZT0xLCBzaHJpbmstdG8tZml0PW5vIj4KKyAgICA8c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKyAgICA8
c3R5bGU+CisgICAgI3NxdWFyZSB7CisgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAg
ICAgbGVmdDogMTAwcHg7CisgICAgICAgIHRvcDogMTAwcHg7CisgICAgICAgIHdpZHRoOiAxNTBw
eDsKKyAgICAgICAgaGVpZ2h0OiAyMDAwcHg7CisgICAgICAgIGJhY2tncm91bmQ6IHJlZDsKKyAg
ICAgICAgb3BhY2l0eTogMC41OworICAgIH0KKyAgICA8L3N0eWxlPgorPC9oZWFkPgorCis8Ym9k
eT4KKzxkaXYgaWQ9InNxdWFyZSIgc3R5bGU9IiI+PC9kaXY+CisKKzxzY3JpcHQ+CitkZXNjcmlw
dGlvbigiVGVzdCB0aGF0IHRvdWNobW92ZSBjYW4gYmUgY2FuY2VsbGVkIGZyb20gZXZlbnQgbGlz
dGVuZXJzIGR5bmFtaWNhbGx5IGFkZGVkIGFmdGVyIHRvdWNoc3RhcnQiKTsKK3dpbmRvdy5qc1Rl
c3RJc0FzeW5jID0gdHJ1ZTsKKworY29uc3QgZ2V0VUlTY3JpcHQgPSAoc3RhcnRYLCBzdGFydFks
IGVuZFgsIGVuZFkpID0+IGAKKyhmdW5jdGlvbigpIHsKKyAgICAgdmFyIGV2ZW50U3RyZWFtID0g
eworICAgICAgICAgZXZlbnRzIDogW3sKKyAgICAgICAgICAgIGludGVycG9sYXRlOiAibGluZWFy
IiwKKyAgICAgICAgICAgIHRpbWVzdGVwOiAwLjAyNSwKKyAgICAgICAgICAgIHN0YXJ0RXZlbnQ6
IHsKKyAgICAgICAgICAgICAgICBpbnB1dFR5cGU6ICJoYW5kIiwKKyAgICAgICAgICAgICAgICB0
aW1lT2Zmc2V0OiAwLAorICAgICAgICAgICAgICAgIHRvdWNoZXM6IFt7CisgICAgICAgICAgICAg
ICAgICAgIGlucHV0VHlwZTogImZpbmdlciIsCisgICAgICAgICAgICAgICAgICAgIHBoYXNlOiAi
YmVnYW4iLAorICAgICAgICAgICAgICAgICAgICBpZDogMSwKKyAgICAgICAgICAgICAgICAgICAg
eDogJHtzdGFydFh9LAorICAgICAgICAgICAgICAgICAgICB5OiAke3N0YXJ0WX0sCisgICAgICAg
ICAgICAgICAgICAgIHByZXNzdXJlOiAwCisgICAgICAgICAgICAgICAgfV0KKyAgICAgICAgICAg
IH0sCisgICAgICAgICAgICBlbmRFdmVudDogeworICAgICAgICAgICAgICAgIGlucHV0VHlwZTog
ImhhbmQiLAorICAgICAgICAgICAgICAgIHRpbWVPZmZzZXQ6IDMuMCwKKyAgICAgICAgICAgICAg
ICB0b3VjaGVzOiBbeworICAgICAgICAgICAgICAgICAgICBpbnB1dFR5cGU6ICJmaW5nZXIiLAor
ICAgICAgICAgICAgICAgICAgICBwaGFzZTogInN0YXRpb25hcnkiLAorICAgICAgICAgICAgICAg
ICAgICBpZDogMSwKKyAgICAgICAgICAgICAgICAgICAgeDogJHtlbmRYfSwKKyAgICAgICAgICAg
ICAgICAgICAgeTogJHtlbmRZfSwKKyAgICAgICAgICAgICAgICAgICAgcHJlc3N1cmUgOiA1MDAK
KyAgICAgICAgICAgICAgICB9XQorICAgICAgICAgICAgfQorICAgICAgICB9XQorICAgIH07CisK
KyAgICB1aUNvbnRyb2xsZXIuc2VuZEV2ZW50U3RyZWFtKEpTT04uc3RyaW5naWZ5KGV2ZW50U3Ry
ZWFtKSwgZnVuY3Rpb24oKSB7CisgICAgICAgIHVpQ29udHJvbGxlci51aVNjcmlwdENvbXBsZXRl
KCk7CisgICAgfSk7Cit9KSgpOworYDsKKworZnVuY3Rpb24gcnVuVGVzdCgpCit7CisgICAgZnVu
Y3Rpb24gdG91Y2htb3ZlRXZlbnRIYW5kbGVyKGV2ZW50KQorICAgIHsKKyAgICAgICAgc2hvdWxk
QmUoImV2ZW50LmNhbmNlbGFibGUiLCAidHJ1ZSIpOworICAgICAgICBldmVudC5wcmV2ZW50RGVm
YXVsdCgpOworICAgICAgICBzaG91bGRCZSgiZXZlbnQuZGVmYXVsdFByZXZlbnRlZCIsICJ0cnVl
Iik7CisgICAgfQorCisgICAgY29uc3Qgc3F1YXJlID0gZG9jdW1lbnQucXVlcnlTZWxlY3Rvcign
I3NxdWFyZScpOworICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLCBl
dmVudCA9PiB7CisgICAgICAgIC8vIE5PVEU6IHJlbW92aW5nIHRoaXMgYXNzZXJ0aW9uIHdpbGwg
Y2F1c2UgdGhlIHRlc3QgdG8gZmFpbCwgdGhlIGV2ZW50IGxpc3RlbmVyIHJlZ2lvbiBpcyBub3Qg
aW1tZWRpYXRlbHkgdXBkYXRlZAorICAgICAgICBzaG91bGRCZSgiZXZlbnQudGFyZ2V0IiwgInNx
dWFyZSIpOworICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIiwgdG91
Y2htb3ZlRXZlbnRIYW5kbGVyLCB7IHBhc3NpdmU6IGZhbHNlLCBvbmNlOiB0cnVlIH0pOworICAg
IH0sIHsgb25jZTogdHJ1ZSB9KTsKKworICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAg
ICAgICBsZXQgY2xpZW50UmVjdCA9IHNxdWFyZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsKKyAg
ICAgICAgdGVzdFJ1bm5lci5ydW5VSVNjcmlwdChnZXRVSVNjcmlwdChjbGllbnRSZWN0LmxlZnQg
KyA1MCwgY2xpZW50UmVjdC50b3AgKyAyMDAsIGNsaWVudFJlY3QubGVmdCArIDUwLCBjbGllbnRS
ZWN0LnRvcCArIDEwKSwgKCkgPT4geworICAgICAgICAgICAgc2hvdWxkQmUoImRvY3VtZW50LmJv
ZHkuc2Nyb2xsVG9wIiwgIjAiKTsKKyAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAg
ICB9KTsKKyAgICB9Cit9CisKK3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgcnVuVGVz
dCwgZmFsc2UpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>340433</attachid>
            <date>2018-05-15 13:57:42 -0700</date>
            <delta_ts>2018-05-15 16:50:24 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-184250-20180515225741.patch</filename>
            <type>text/plain</type>
            <size>7191</size>
            <attacher name="Tadeu Zagallo">tzagallo</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMxMjY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGRhZmMzMTAxNzZiOTEzODhl
ZGQ1MDQ1YWM3MjJiOTdiNTY1NjA4NWMuLjE3ZTNkNTkwMmVlNjEzYTVmZWJkMjFkNjk2ZGZhYjkz
NTU2MmI4NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTgtMDUtMTUgIFRhZGV1IFph
Z2FsbG8gIDx0emFnYWxsb0BhcHBsZS5jb20+CisKKyAgICAgICAgVXBkYXRlIHRvdWNoIGV2ZW50
IHRyYWNraW5nIHR5cGUgb24gZXZlcnkgdG91Y2gKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NDI1MAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzkx
NDUwOTI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgR2VvZmZyZXkgR2FyZW4uCisKKyAgICAgICAg
VGhlIHRyYWNraW5nIHR5cGUgZm9yIHRvdWNoIGV2ZW50cyB3ZXJlIG9ubHkgdXBkYXRlIG9uIHRv
dWNoc3RhcnQsIHdoaWNoIG1lYW50IHRoYXQgZXZlbnQKKyAgICAgICAgbGlzdGVuZXJzIGFkZGVk
IGFmdGVyIHRoZSB0b3VjaHN0YXJ0IHdvdWxkIGFsd2F5cyBiZSB0cmVhdGVkIGFzIHBhc3NpdmUs
IGV2ZW4gaWYgZXhwbGljaXRseQorICAgICAgICBzZXR0aW5nIHBhc3NpdmUgdG8gZmFsc2UuCisK
KyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZVByb3h5OjpoYW5kbGVUb3VjaEV2ZW50U3luY2hyb25vdXNseSk6CisgICAgICAgIChX
ZWJLaXQ6OldlYlBhZ2VQcm94eTo6aGFuZGxlVG91Y2hFdmVudCk6CisKIDIwMTgtMDUtMDIgIEFs
ZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBBZGQg
V0tXZWJzaXRlRGF0YVN0b3JlUHJpdmF0ZS5fcHJveHlDb25maWd1cmF0aW9uIFNQSQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggYzliNDhjYjhmYTkyOTQ1Njhh
ZGVkN2JlNzJmYzJhM2IwZDIxMDU1MS4uNTBlYWRkNTE0NjRhODQ2MTBjMGNlYzA0MjE2YmVkZmEy
YTJlNmM0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC0y
Mjc1LDggKzIyNzUsNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6aGFuZGxlVG91Y2hFdmVudFN5bmNo
cm9ub3VzbHkoTmF0aXZlV2ViVG91Y2hFdmVudCYgZXZlbnQpCiAKICAgICBUcmFjZVNjb3BlIHNj
b3BlKFN5bmNUb3VjaEV2ZW50U3RhcnQsIFN5bmNUb3VjaEV2ZW50RW5kKTsKIAotICAgIGlmIChl
dmVudC50eXBlKCkgPT0gV2ViRXZlbnQ6OlRvdWNoU3RhcnQpCi0gICAgICAgIHVwZGF0ZVRvdWNo
RXZlbnRUcmFja2luZyhldmVudCk7CisgICAgdXBkYXRlVG91Y2hFdmVudFRyYWNraW5nKGV2ZW50
KTsKIAogICAgIFRyYWNraW5nVHlwZSB0b3VjaEV2ZW50c1RyYWNraW5nVHlwZSA9IHRvdWNoRXZl
bnRUcmFja2luZ1R5cGUoZXZlbnQpOwogICAgIGlmICh0b3VjaEV2ZW50c1RyYWNraW5nVHlwZSA9
PSBUcmFja2luZ1R5cGU6Ok5vdFRyYWNraW5nKQpAQCAtMjMyNyw4ICsyMzI2LDcgQEAgdm9pZCBX
ZWJQYWdlUHJveHk6OmhhbmRsZVRvdWNoRXZlbnQoY29uc3QgTmF0aXZlV2ViVG91Y2hFdmVudCYg
ZXZlbnQpCiAgICAgaWYgKCFpc1ZhbGlkKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmIChl
dmVudC50eXBlKCkgPT0gV2ViRXZlbnQ6OlRvdWNoU3RhcnQpCi0gICAgICAgIHVwZGF0ZVRvdWNo
RXZlbnRUcmFja2luZyhldmVudCk7CisgICAgdXBkYXRlVG91Y2hFdmVudFRyYWNraW5nKGV2ZW50
KTsKIAogICAgIGlmICh0b3VjaEV2ZW50VHJhY2tpbmdUeXBlKGV2ZW50KSA9PSBUcmFja2luZ1R5
cGU6Ok5vdFRyYWNraW5nKQogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNGEyYTkyMDFiNzE3MWM4
MjcxNjY0N2M3Yjg0Zjk0Zjg4ODUzYTZlYS4uMDkwYTdlYWViOTE5YWMzZWVlNTY3M2Q2MTUwNzFk
ZGFmZTliY2I3NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE4LTA1LTE1ICBUYWRldSBaYWdh
bGxvICA8dHphZ2FsbG9AYXBwbGUuY29tPgorCisgICAgICAgIFVwZGF0ZSB0b3VjaCBldmVudCB0
cmFja2luZyB0eXBlIG9uIGV2ZXJ5IHRvdWNoCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xODQyNTAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM5MTQ1
MDkyPgorCisgICAgICAgIFJldmlld2VkIGJ5IEdlb2ZmcmV5IEdhcmVuLgorCisgICAgICAgIFRo
ZSB0cmFja2luZyB0eXBlIGZvciB0b3VjaCBldmVudHMgd2VyZSBvbmx5IHVwZGF0ZSBvbiB0b3Vj
aHN0YXJ0LCB3aGljaCBtZWFudCB0aGF0IGV2ZW50CisgICAgICAgIGxpc3RlbmVycyBhZGRlZCBh
ZnRlciB0aGUgdG91Y2hzdGFydCB3b3VsZCBhbHdheXMgYmUgdHJlYXRlZCBhcyBwYXNzaXZlLCBl
dmVuIGlmIGV4cGxpY2l0bHkKKyAgICAgICAgc2V0dGluZyBwYXNzaXZlIHRvIGZhbHNlLgorCisg
ICAgICAgICogZmFzdC9ldmVudHMvdG91Y2gvaW9zL3RvdWNobW92ZS1jYW5jZWxhYmxlLWFmdGVy
LXRvdWNoc3RhcnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy90
b3VjaC9pb3MvdG91Y2htb3ZlLWNhbmNlbGFibGUtYWZ0ZXItdG91Y2hzdGFydC5odG1sOiBBZGRl
ZC4KKwogMjAxOC0wNS0wMiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAg
ICAgICAgVXNlIE5ldHdvcmtMb2FkQ2hlY2tlciBmb3IgbmF2aWdhdGlvbiBsb2FkcwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL3RvdWNobW92ZS1jYW5jZWxh
YmxlLWFmdGVyLXRvdWNoc3RhcnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVu
dHMvdG91Y2gvaW9zL3RvdWNobW92ZS1jYW5jZWxhYmxlLWFmdGVyLXRvdWNoc3RhcnQtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmJkYzM1YzFhODViYzFkMzJhZTBhZDlkYmYzNWNhNjc4Nzk3MjNh
OTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9pb3Mv
dG91Y2htb3ZlLWNhbmNlbGFibGUtYWZ0ZXItdG91Y2hzdGFydC1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwxMiBAQAorVGVzdCB0aGF0IHRvdWNobW92ZSBjYW4gYmUgY2FuY2VsbGVkIGZyb20gZXZl
bnQgbGlzdGVuZXJzIGR5bmFtaWNhbGx5IGFkZGVkIGFmdGVyIHRvdWNoc3RhcnQKKworT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgZXZlbnQuY2FuY2VsYWJsZSBpcyB0cnVlCitQ
QVNTIGV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQgaXMgdHJ1ZQorUEFTUyBkb2N1bWVudC5ib2R5LnNj
cm9sbFRvcCBpcyAwCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09N
UExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL3Rv
dWNobW92ZS1jYW5jZWxhYmxlLWFmdGVyLXRvdWNoc3RhcnQuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvZXZlbnRzL3RvdWNoL2lvcy90b3VjaG1vdmUtY2FuY2VsYWJsZS1hZnRlci10b3VjaHN0YXJ0
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uYzg0YTE2ZDhkYTRkNGJhNDdmZTdlYWY0MGQ1NGJiNTE0NmFmZTVl
NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2lvcy90
b3VjaG1vdmUtY2FuY2VsYWJsZS1hZnRlci10b3VjaHN0YXJ0Lmh0bWwKQEAgLTAsMCArMSw5NiBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDxtZXRhIG5hbWU9InZpZXdw
b3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSwgc2hyaW5r
LXRvLWZpdD1ubyI+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisgICAgPHN0eWxlPgorICAgICNzcXVhcmUgeworICAgICAg
ICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgICAgIGxlZnQ6IDEwMHB4OworICAgICAgICB0b3A6
IDEwMHB4OworICAgICAgICB3aWR0aDogMTUwcHg7CisgICAgICAgIGhlaWdodDogMjAwMHB4Owor
ICAgICAgICBiYWNrZ3JvdW5kOiByZWQ7CisgICAgICAgIG9wYWNpdHk6IDAuNTsKKyAgICB9Cisg
ICAgPC9zdHlsZT4KKzwvaGVhZD4KKworPGJvZHk+Cis8ZGl2IGlkPSJzcXVhcmUiIHN0eWxlPSIi
PjwvZGl2PgorCis8c2NyaXB0PgorZGVzY3JpcHRpb24oIlRlc3QgdGhhdCB0b3VjaG1vdmUgY2Fu
IGJlIGNhbmNlbGxlZCBmcm9tIGV2ZW50IGxpc3RlbmVycyBkeW5hbWljYWxseSBhZGRlZCBhZnRl
ciB0b3VjaHN0YXJ0Iik7Cit3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisKK2NvbnN0IGdl
dFVJU2NyaXB0ID0gKHN0YXJ0WCwgc3RhcnRZLCBlbmRYLCBlbmRZKSA9PiBgCisoZnVuY3Rpb24o
KSB7CisgICAgIHZhciBldmVudFN0cmVhbSA9IHsKKyAgICAgICAgIGV2ZW50cyA6IFt7CisgICAg
ICAgICAgICBpbnRlcnBvbGF0ZTogImxpbmVhciIsCisgICAgICAgICAgICB0aW1lc3RlcDogMC4w
MjUsCisgICAgICAgICAgICBzdGFydEV2ZW50OiB7CisgICAgICAgICAgICAgICAgaW5wdXRUeXBl
OiAiaGFuZCIsCisgICAgICAgICAgICAgICAgdGltZU9mZnNldDogMCwKKyAgICAgICAgICAgICAg
ICB0b3VjaGVzOiBbeworICAgICAgICAgICAgICAgICAgICBpbnB1dFR5cGU6ICJmaW5nZXIiLAor
ICAgICAgICAgICAgICAgICAgICBwaGFzZTogImJlZ2FuIiwKKyAgICAgICAgICAgICAgICAgICAg
aWQ6IDEsCisgICAgICAgICAgICAgICAgICAgIHg6ICR7c3RhcnRYfSwKKyAgICAgICAgICAgICAg
ICAgICAgeTogJHtzdGFydFl9LAorICAgICAgICAgICAgICAgICAgICBwcmVzc3VyZTogMAorICAg
ICAgICAgICAgICAgIH1dCisgICAgICAgICAgICB9LAorICAgICAgICAgICAgZW5kRXZlbnQ6IHsK
KyAgICAgICAgICAgICAgICBpbnB1dFR5cGU6ICJoYW5kIiwKKyAgICAgICAgICAgICAgICB0aW1l
T2Zmc2V0OiAzLjAsCisgICAgICAgICAgICAgICAgdG91Y2hlczogW3sKKyAgICAgICAgICAgICAg
ICAgICAgaW5wdXRUeXBlOiAiZmluZ2VyIiwKKyAgICAgICAgICAgICAgICAgICAgcGhhc2U6ICJz
dGF0aW9uYXJ5IiwKKyAgICAgICAgICAgICAgICAgICAgaWQ6IDEsCisgICAgICAgICAgICAgICAg
ICAgIHg6ICR7ZW5kWH0sCisgICAgICAgICAgICAgICAgICAgIHk6ICR7ZW5kWX0sCisgICAgICAg
ICAgICAgICAgICAgIHByZXNzdXJlIDogNTAwCisgICAgICAgICAgICAgICAgfV0KKyAgICAgICAg
ICAgIH0KKyAgICAgICAgfV0KKyAgICB9OworCisgICAgdWlDb250cm9sbGVyLnNlbmRFdmVudFN0
cmVhbShKU09OLnN0cmluZ2lmeShldmVudFN0cmVhbSksIGZ1bmN0aW9uKCkgeworICAgICAgICB1
aUNvbnRyb2xsZXIudWlTY3JpcHRDb21wbGV0ZSgpOworICAgIH0pOworfSkoKTsKK2A7CisKK2Z1
bmN0aW9uIHJ1blRlc3QoKQoreworICAgIGZ1bmN0aW9uIHRvdWNobW92ZUV2ZW50SGFuZGxlcihl
dmVudCkKKyAgICB7CisgICAgICAgIHNob3VsZEJlKCJldmVudC5jYW5jZWxhYmxlIiwgInRydWUi
KTsKKyAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsKKyAgICAgICAgc2hvdWxkQmUoImV2
ZW50LmRlZmF1bHRQcmV2ZW50ZWQiLCAidHJ1ZSIpOworICAgIH0KKworICAgIGNvbnN0IHNxdWFy
ZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNzcXVhcmUnKTsKKyAgICBkb2N1bWVudC5hZGRF
dmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IiwgZXZlbnQgPT4geworICAgICAgICAvLyBOT1RFOiBG
b3Igc29tZSByZWFzb24sIGlmIHdlIGRvbid0IGludGVyYWN0IHdpdGggdGhlIERPTSBoZXJlLCB0
aGUgZmlyc3QgZmV3IHRvdWNobW92ZSBldmVudHMgd2Ugc2VlIHdpbGwgYmUgcGFzc2l2ZSAobm90
IGNhbmNlbGFibGUpCisgICAgICAgIC8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTg1NjU2CisgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgncCcpKTsKKyAgICAgICAgaWYgKGV2ZW50LnRhcmdldCA9PT0g
c3F1YXJlKQorICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIs
IHRvdWNobW92ZUV2ZW50SGFuZGxlciwgeyBwYXNzaXZlOiBmYWxzZSwgb25jZTogdHJ1ZSB9KTsK
KyAgICB9LCB7IHBhc3NpdmU6IGZhbHNlLCBvbmNlOiB0cnVlIH0pOworCisgICAgaWYgKHdpbmRv
dy50ZXN0UnVubmVyKSB7CisgICAgICAgIGxldCBjbGllbnRSZWN0ID0gc3F1YXJlLmdldEJvdW5k
aW5nQ2xpZW50UmVjdCgpOworICAgICAgICB0ZXN0UnVubmVyLnJ1blVJU2NyaXB0KGdldFVJU2Ny
aXB0KGNsaWVudFJlY3QubGVmdCArIDUwLCBjbGllbnRSZWN0LnRvcCArIDIwMCwgY2xpZW50UmVj
dC5sZWZ0ICsgNTAsIGNsaWVudFJlY3QudG9wICsgMTApLCAoKSA9PiB7CisgICAgICAgICAgICBz
aG91bGRCZSgiZG9jdW1lbnQuYm9keS5zY3JvbGxUb3AiLCAiMCIpOworICAgICAgICAgICAgZmlu
aXNoSlNUZXN0KCk7CisgICAgICAgIH0pOworICAgIH0KK30KKword2luZG93LmFkZEV2ZW50TGlz
dGVuZXIoJ2xvYWQnLCBydW5UZXN0LCBmYWxzZSk7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIu
Li8uLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4K
KzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>340528</attachid>
            <date>2018-05-16 15:13:13 -0700</date>
            <delta_ts>2018-05-16 15:18:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-184250-20180517001312.patch</filename>
            <type>text/plain</type>
            <size>1776</size>
            <attacher name="Tadeu Zagallo">tzagallo</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMxODczCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDc5MWE4NTgxMDcyZDI4ZDRk
N2FjN2U5MmY2NmEyYTc2MDk3ODZjMjYuLjI3YmQ5ODM1NzE4YTcyYmFiMmRhNmMyYzVhMzIyMTcx
YWExOGZlYmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xNjUsMTMgKzE2NSwxMyBAQAogCiAyMDE4LTA1LTE1ICBU
YWRldSBaYWdhbGxvICA8dHphZ2FsbG9AYXBwbGUuY29tPgogCi0gICAgICAgIFVwZGF0ZSB0b3Vj
aCBldmVudCB0cmFja2luZyB0eXBlIG9uIGV2ZXJ5IHRvdWNoCisgICAgICAgIFVwZGF0ZSB0b3Vj
aCBldmVudCB0cmFja2luZyB0eXBlcyBvbiBldmVyeSB0b3VjaAogICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg0MjUwCiAgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS8zOTE0NTA5Mj4KIAogICAgICAgICBSZXZpZXdlZCBieSBHZW9mZnJleSBHYXJlbi4KIAot
ICAgICAgICBUaGUgdHJhY2tpbmcgdHlwZSBmb3IgdG91Y2ggZXZlbnRzIHdlcmUgb25seSB1cGRh
dGUgb24gdG91Y2hzdGFydCwgd2hpY2ggbWVhbnQgdGhhdCBldmVudAorICAgICAgICBUaGUgdHJh
Y2tpbmcgdHlwZXMgZm9yIHRvdWNoIGV2ZW50cyB3ZXJlIG9ubHkgdXBkYXRlIG9uIHRvdWNoc3Rh
cnQsIHdoaWNoIG1lYW50IHRoYXQgZXZlbnQKICAgICAgICAgbGlzdGVuZXJzIGFkZGVkIGFmdGVy
IHRoZSB0b3VjaHN0YXJ0IHdvdWxkIGFsd2F5cyBiZSB0cmVhdGVkIGFzIHBhc3NpdmUsIGV2ZW4g
aWYgZXhwbGljaXRseQogICAgICAgICBzZXR0aW5nIHBhc3NpdmUgdG8gZmFsc2UuCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRl
eCAyMTU3MDU1OGMyM2NhMjhlMTk2OTZhZGZjMWI2MzMwYjU2ZjA4YjI4Li4wMTE1ZDlhZjYxN2E4
OGMwZjE1MzFiMTAxMmJmOGJiNzUzYjE1MDk5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xNDMsMTMgKzE0MywxMyBAQAog
CiAyMDE4LTA1LTE1ICBUYWRldSBaYWdhbGxvICA8dHphZ2FsbG9AYXBwbGUuY29tPgogCi0gICAg
ICAgIFVwZGF0ZSB0b3VjaCBldmVudCB0cmFja2luZyB0eXBlIG9uIGV2ZXJ5IHRvdWNoCisgICAg
ICAgIFVwZGF0ZSB0b3VjaCBldmVudCB0cmFja2luZyB0eXBlcyBvbiBldmVyeSB0b3VjaAogICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg0MjUwCiAgICAg
ICAgIDxyZGFyOi8vcHJvYmxlbS8zOTE0NTA5Mj4KIAogICAgICAgICBSZXZpZXdlZCBieSBHZW9m
ZnJleSBHYXJlbi4KIAotICAgICAgICBUaGUgdHJhY2tpbmcgdHlwZSBmb3IgdG91Y2ggZXZlbnRz
IHdlcmUgb25seSB1cGRhdGUgb24gdG91Y2hzdGFydCwgd2hpY2ggbWVhbnQgdGhhdCBldmVudAor
ICAgICAgICBUaGUgdHJhY2tpbmcgdHlwZXMgZm9yIHRvdWNoIGV2ZW50cyB3ZXJlIG9ubHkgdXBk
YXRlIG9uIHRvdWNoc3RhcnQsIHdoaWNoIG1lYW50IHRoYXQgZXZlbnQKICAgICAgICAgbGlzdGVu
ZXJzIGFkZGVkIGFmdGVyIHRoZSB0b3VjaHN0YXJ0IHdvdWxkIGFsd2F5cyBiZSB0cmVhdGVkIGFz
IHBhc3NpdmUsIGV2ZW4gaWYgZXhwbGljaXRseQogICAgICAgICBzZXR0aW5nIHBhc3NpdmUgdG8g
ZmFsc2UuCiAK
</data>
<flag name="review"
          id="358781"
          type_id="1"
          status="+"
          setter="ggaren"
    />
    <flag name="commit-queue"
          id="358782"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
      

    </bug>

</bugzilla>