<?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>172876</bug_id>
          
          <creation_ts>2017-06-02 15:23:18 -0700</creation_ts>
          <short_desc>webkitpy: Add contextmanager to disable logging for a block</short_desc>
          <delta_ts>2017-06-03 09:11:35 -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>Tools / Tests</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="Jonathan Bedard">jbedard</reporter>
          <assigned_to name="Jonathan Bedard">jbedard</assigned_to>
          <cc>buildbot</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>glenn</cc>
    
    <cc>lforschler</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1315253</commentid>
    <comment_count>0</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2017-06-02 15:23:18 -0700</bug_when>
    <thetext>We need a contextmanager which disables logging in a block and renables logging on exit.  Currently, OutputCapture only provides functions to disable and then re-enable logging.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1315256</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-06-02 15:33:07 -0700</bug_when>
    <thetext>&lt;rdar://problem/32546391&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1315259</commentid>
    <comment_count>2</comment_count>
      <attachid>311877</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2017-06-02 15:51:07 -0700</bug_when>
    <thetext>Created attachment 311877
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1315277</commentid>
    <comment_count>3</comment_count>
      <attachid>311877</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-06-02 16:35:07 -0700</bug_when>
    <thetext>Comment on attachment 311877
Patch

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

&gt; Tools/Scripts/webkitpy/common/system/outputcapture.py:36
&gt; +from contextlib import contextmanager
&gt;  from StringIO import StringIO

These imports should be sorted based on the UNIX sort command.

&gt; Tools/Scripts/webkitpy/common/system/outputcapture.py:112
&gt; +class Suppressor(OutputCapture):

Maybe a better name for this would be OutputCaptureScope?

&gt; Tools/Scripts/webkitpy/common/system/outputcapture.py:116
&gt; +        self.last_log = None

I suggest that we use the same terminology as used in OutputCapture and call this captured_output.

&gt; Tools/Scripts/webkitpy/common/system/outputcapture.py:123
&gt; +    @contextmanager
&gt; +    def suppress_logging(self):
&gt; +        self.capture_output()
&gt; +        yield
&gt; +        self.last_log = self.restore_output()
&gt; +

Instead of using @contextmanager can we have this class implement __enter__() and __exit__() itself so that we can make use of this convenience class using the following syntax:

scope = OutputCaptureScope()
with scope:
    ...
scope.captured_output</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1315281</commentid>
    <comment_count>4</comment_count>
      <attachid>311877</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-06-02 16:37:25 -0700</bug_when>
    <thetext>Comment on attachment 311877
Patch

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

&gt;&gt; Tools/Scripts/webkitpy/common/system/outputcapture.py:112
&gt;&gt; +class Suppressor(OutputCapture):
&gt; 
&gt; Maybe a better name for this would be OutputCaptureScope?

We may want to have this class take the OutputCapture instance instead of extending it to make it easy to use this class correctly and hard to use it incorrectly or un-idiomatic.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1315289</commentid>
    <comment_count>5</comment_count>
      <attachid>311886</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2017-06-02 16:53:33 -0700</bug_when>
    <thetext>Created attachment 311886
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1315299</commentid>
    <comment_count>6</comment_count>
      <attachid>311886</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-06-02 17:09:02 -0700</bug_when>
    <thetext>Comment on attachment 311886
Patch

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

&gt; Tools/Scripts/webkitpy/common/system/outputcapture.py:114
&gt; +        self.captured_output = None

This should return (None, None, None) to match up with how restore_output() behaves.

&gt; Tools/Scripts/webkitpy/common/system/outputcapture_unittest.py:61
&gt; +    def test_output_capture_scope(self):

Please add a test where OutputScope takes an OutputCapture as an argument.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1315340</commentid>
    <comment_count>7</comment_count>
      <attachid>311886</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-06-02 19:16:30 -0700</bug_when>
    <thetext>Comment on attachment 311886
Patch

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

&gt; Tools/Scripts/webkitpy/common/system/outputcapture.py:120
&gt; +        self.captured_output = self._output_capture.restore_output()

exc_val =&gt; exc_value
exc_tb =&gt; traceback

(To match https://docs.python.org/2/reference/datamodel.html#context-managers)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1315426</commentid>
    <comment_count>8</comment_count>
      <attachid>311927</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2017-06-03 08:34:19 -0700</bug_when>
    <thetext>Created attachment 311927
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1315430</commentid>
    <comment_count>9</comment_count>
      <attachid>311927</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-06-03 09:11:34 -0700</bug_when>
    <thetext>Comment on attachment 311927
Patch for landing

Clearing flags on attachment: 311927

Committed r217758: &lt;http://trac.webkit.org/changeset/217758&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1315431</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-06-03 09:11:35 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>311877</attachid>
            <date>2017-06-02 15:51:07 -0700</date>
            <delta_ts>2017-06-02 16:53:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-172876-20170602155106.patch</filename>
            <type>text/plain</type>
            <size>2992</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIxNzczNikKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDIxIEBACisyMDE3LTA2LTAyICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICB3ZWJraXRweTogQWRkIGNvbnRleHRtYW5hZ2VyIHRvIGRpc2FibGUgbG9n
Z2luZyBmb3IgYSBibG9jaworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTcyODc2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgQWRkIGEgY29udGV4dCBtYW5hZ2VyIHdoaWNoIHdpbGwgc3VwcHJlc3MgbG9nZ2lu
ZyBpbiBhIGJsb2NrLCBidXQgc2F2ZQorICAgICAgICB0aGUgbGFzdCBsb2cgb3V0cHV0IGlmIHRo
aXMgb3V0cHV0IG5lZWRzIHRvIGJlIGFjY2Vzc2VkIGxhdGVyLgorCisgICAgICAgICogU2NyaXB0
cy93ZWJraXRweS9jb21tb24vc3lzdGVtL291dHB1dGNhcHR1cmUucHk6CisgICAgICAgIChTdXBw
cmVzc29yKTogSW5oZXJpdCBmcm9tIE91dHB1dENhcHR1cmUgY2xhc3MuCisgICAgICAgIChTdXBw
cmVzc29yLl9faW5pdF9fKToKKyAgICAgICAgKFN1cHByZXNzb3Iuc3VwcHJlc3NfbG9nZ2luZyk6
IENhcHR1cmUgb3V0cHV0LCBleGVjdXRlIGJsb2NrIHRoZW4gcmVzdG9yZQorICAgICAgICBvdXRw
dXQgYW5kIHJldGFpbiB0aGUgcmVzdWx0aW5nIGxvZy4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtp
dHB5L2NvbW1vbi9zeXN0ZW0vb3V0cHV0Y2FwdHVyZV91bml0dGVzdC5weToKKyAgICAgICAgKE91
dHB1dENhcHR1cmVUZXN0LnRlc3Rfc3VwcmVzc29yKTogQWRkZWQuCisKIDIwMTctMDYtMDIgIFN0
ZXBoYW4gU3phYm8gIDxzdGVwaGFuLnN6YWJvQGFtLnNvbnkuY29tPgogCiAgICAgICAgIFtKU0NP
bmx5XSBCdWlsZCBzdGF0aWMganNjLmV4ZSBvbiBXaW5kb3dzCkluZGV4OiBUb29scy9TY3JpcHRz
L3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vb3V0cHV0Y2FwdHVyZS5weQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBU
b29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vb3V0cHV0Y2FwdHVyZS5weQkocmV2
aXNpb24gMjE3NzEwKQorKysgVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL291
dHB1dGNhcHR1cmUucHkJKHdvcmtpbmcgY29weSkKQEAgLTMxLDYgKzMxLDggQEAKIGltcG9ydCBs
b2dnaW5nCiBpbXBvcnQgc3lzCiBpbXBvcnQgdW5pdHRlc3QKKworZnJvbSBjb250ZXh0bGliIGlt
cG9ydCBjb250ZXh0bWFuYWdlcgogZnJvbSBTdHJpbmdJTyBpbXBvcnQgU3RyaW5nSU8KIAogCkBA
IC0xMDcsNiArMTA5LDE5IEBAIGNsYXNzIE91dHB1dENhcHR1cmUob2JqZWN0KToKICAgICAgICAg
cmV0dXJuIHJldHVybl92YWx1ZQogCiAKK2NsYXNzIFN1cHByZXNzb3IoT3V0cHV0Q2FwdHVyZSk6
CisKKyAgICBkZWYgX19pbml0X18oc2VsZik6CisgICAgICAgIHN1cGVyKFN1cHByZXNzb3IsIHNl
bGYpLl9faW5pdF9fKCkKKyAgICAgICAgc2VsZi5sYXN0X2xvZyA9IE5vbmUKKworICAgIEBjb250
ZXh0bWFuYWdlcgorICAgIGRlZiBzdXBwcmVzc19sb2dnaW5nKHNlbGYpOgorICAgICAgICBzZWxm
LmNhcHR1cmVfb3V0cHV0KCkKKyAgICAgICAgeWllbGQKKyAgICAgICAgc2VsZi5sYXN0X2xvZyA9
IHNlbGYucmVzdG9yZV9vdXRwdXQoKQorCisKIGNsYXNzIE91dHB1dENhcHR1cmVUZXN0Q2FzZUJh
c2UodW5pdHRlc3QuVGVzdENhc2UpOgogICAgIG1heERpZmYgPSBOb25lCiAKSW5kZXg6IFRvb2xz
L1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9vdXRwdXRjYXB0dXJlX3VuaXR0ZXN0LnB5
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9vdXRw
dXRjYXB0dXJlX3VuaXR0ZXN0LnB5CShyZXZpc2lvbiAyMTc3MTApCisrKyBUb29scy9TY3JpcHRz
L3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vb3V0cHV0Y2FwdHVyZV91bml0dGVzdC5weQkod29ya2lu
ZyBjb3B5KQpAQCAtMjMsNyArMjMsNyBAQAogaW1wb3J0IGxvZ2dpbmcKIGltcG9ydCB1bml0dGVz
dAogCi1mcm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0ub3V0cHV0Y2FwdHVyZSBpbXBvcnQgT3V0
cHV0Q2FwdHVyZQorZnJvbSB3ZWJraXRweS5jb21tb24uc3lzdGVtLm91dHB1dGNhcHR1cmUgaW1w
b3J0IE91dHB1dENhcHR1cmUsIFN1cHByZXNzb3IKIAogCiBfbG9nID0gbG9nZ2luZy5nZXRMb2dn
ZXIoX19uYW1lX18pCkBAIC01NywzICs1NywxMyBAQCBjbGFzcyBPdXRwdXRDYXB0dXJlVGVzdCh1
bml0dGVzdC5UZXN0Q2FzCiAgICAgICAgIHNlbGYub3V0cHV0LnNldF9sb2dfbGV2ZWwobG9nZ2lu
Zy5XQVJOKQogICAgICAgICBzZWxmLmxvZ19hbGxfbGV2ZWxzKCkKICAgICAgICAgc2VsZi5hc3Nl
cnRMb2dnZWQoJ0VSUk9SXG5DUklUSUNBTFxuV0FSTlxuRVJST1JcbkNSSVRJQ0FMXG4nKQorCisg
ICAgZGVmIHRlc3Rfc3VwcmVzc29yKHNlbGYpOgorICAgICAgICBzID0gU3VwcHJlc3NvcigpCisg
ICAgICAgIHdpdGggcy5zdXBwcmVzc19sb2dnaW5nKCk6CisgICAgICAgICAgICBwcmludCAnU1RS
SU5HIDEnCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKCdTVFJJTkcgMVxuJywgJycsICcnKSwg
cy5sYXN0X2xvZykKKworICAgICAgICB3aXRoIHMuc3VwcHJlc3NfbG9nZ2luZygpOgorICAgICAg
ICAgICAgcHJpbnQgJ1NUUklORyAyJworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCgnU1RSSU5H
IDJcbicsICcnLCAnJyksIHMubGFzdF9sb2cpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>311886</attachid>
            <date>2017-06-02 16:53:33 -0700</date>
            <delta_ts>2017-06-03 08:34:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-172876-20170602165333.patch</filename>
            <type>text/plain</type>
            <size>3075</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIxNzc0MykKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDIyIEBACisyMDE3LTA2LTAyICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICB3ZWJraXRweTogQWRkIGNvbnRleHRtYW5hZ2VyIHRvIGRpc2FibGUgbG9n
Z2luZyBmb3IgYSBibG9jaworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTcyODc2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgQWRkIGEgY29udGV4dCBtYW5hZ2VyIHdoaWNoIHdpbGwgdXNlIGFuIE91dHB1dENh
cHR1cmUgb2JqZWN0IHRvIGNhcHR1cmUgbG9nZ2luZworICAgICAgICBpbiBhIGJsb2NrIGFuZCBo
b2xkIGl0IGluIGEgdmFyaWFibGUuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1v
bi9zeXN0ZW0vb3V0cHV0Y2FwdHVyZS5weToKKyAgICAgICAgKE91dHB1dENhcHR1cmVTY29wZSk6
CisgICAgICAgIChPdXRwdXRDYXB0dXJlU2NvcGUuX19pbml0X18pOiBDb25zdHJ1Y3Qgd2l0aCBP
dXRwdXRDYXB0dXJlIG9iamVjdC4KKyAgICAgICAgKE91dHB1dENhcHR1cmVTY29wZS5fX2VudGVy
X18pOiBCZWdpbiBjYXB0dXJpbmcgb3V0cHV0LiAKKyAgICAgICAgKE91dHB1dENhcHR1cmVTY29w
ZS5fX2V4aXRfXyk6IFJlc3RvcmUgb3V0cHV0IGFuZCBzYXZlIGNhcHR1cmVkIG91dHB1dCB0byBh
IHZhcmlhYmxlLgorICAgICAgICBvdXRwdXQgYW5kIHJldGFpbiB0aGUgcmVzdWx0aW5nIGxvZy4K
KyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vb3V0cHV0Y2FwdHVyZV91
bml0dGVzdC5weToKKyAgICAgICAgKE91dHB1dENhcHR1cmVUZXN0LnRlc3Rfb3V0cHV0X2NhcHR1
cmVfc2NvcGUpOiBBZGRlZC4KKwogMjAxNy0wNi0wMiAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBw
bGUuY29tPgogCiAgICAgICAgIFJlc291cmNlTG9hZFN0YXRpc3RpY3MgYXJlIG5vdCB1c2luZyB1
bmlxdWUgcGF0aHMgZHVyaW5nIHRlc3QgcnVucwpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9jb21tb24vc3lzdGVtL291dHB1dGNhcHR1cmUucHkKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL291dHB1dGNhcHR1cmUucHkJKHJldmlzaW9uIDIx
Nzc0MikKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9vdXRwdXRjYXB0
dXJlLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0xMDcsNiArMTA3LDE5IEBAIGNsYXNzIE91dHB1dENh
cHR1cmUob2JqZWN0KToKICAgICAgICAgcmV0dXJuIHJldHVybl92YWx1ZQogCiAKK2NsYXNzIE91
dHB1dENhcHR1cmVTY29wZShvYmplY3QpOgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG91dHB1
dF9jYXB0dXJlPU91dHB1dENhcHR1cmUoKSk6CisgICAgICAgIHNlbGYuX291dHB1dF9jYXB0dXJl
ID0gb3V0cHV0X2NhcHR1cmUKKyAgICAgICAgc2VsZi5jYXB0dXJlZF9vdXRwdXQgPSBOb25lCisK
KyAgICBkZWYgX19lbnRlcl9fKHNlbGYpOgorICAgICAgICBzZWxmLl9vdXRwdXRfY2FwdHVyZS5j
YXB0dXJlX291dHB1dCgpCisKKyAgICBkZWYgX19leGl0X18oc2VsZiwgZXhjX3R5cGUsIGV4Y192
YWwsIGV4Y190Yik6CisgICAgICAgIHNlbGYuY2FwdHVyZWRfb3V0cHV0ID0gc2VsZi5fb3V0cHV0
X2NhcHR1cmUucmVzdG9yZV9vdXRwdXQoKQorCisKIGNsYXNzIE91dHB1dENhcHR1cmVUZXN0Q2Fz
ZUJhc2UodW5pdHRlc3QuVGVzdENhc2UpOgogICAgIG1heERpZmYgPSBOb25lCiAKSW5kZXg6IFRv
b2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9vdXRwdXRjYXB0dXJlX3VuaXR0ZXN0
LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9v
dXRwdXRjYXB0dXJlX3VuaXR0ZXN0LnB5CShyZXZpc2lvbiAyMTc3NDIpCisrKyBUb29scy9TY3Jp
cHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vb3V0cHV0Y2FwdHVyZV91bml0dGVzdC5weQkod29y
a2luZyBjb3B5KQpAQCAtMjMsNyArMjMsNyBAQAogaW1wb3J0IGxvZ2dpbmcKIGltcG9ydCB1bml0
dGVzdAogCi1mcm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0ub3V0cHV0Y2FwdHVyZSBpbXBvcnQg
T3V0cHV0Q2FwdHVyZQorZnJvbSB3ZWJraXRweS5jb21tb24uc3lzdGVtLm91dHB1dGNhcHR1cmUg
aW1wb3J0IE91dHB1dENhcHR1cmUsIE91dHB1dENhcHR1cmVTY29wZQogCiAKIF9sb2cgPSBsb2dn
aW5nLmdldExvZ2dlcihfX25hbWVfXykKQEAgLTU3LDMgKzU3LDEzIEBAIGNsYXNzIE91dHB1dENh
cHR1cmVUZXN0KHVuaXR0ZXN0LlRlc3RDYXMKICAgICAgICAgc2VsZi5vdXRwdXQuc2V0X2xvZ19s
ZXZlbChsb2dnaW5nLldBUk4pCiAgICAgICAgIHNlbGYubG9nX2FsbF9sZXZlbHMoKQogICAgICAg
ICBzZWxmLmFzc2VydExvZ2dlZCgnRVJST1JcbkNSSVRJQ0FMXG5XQVJOXG5FUlJPUlxuQ1JJVElD
QUxcbicpCisKKyAgICBkZWYgdGVzdF9vdXRwdXRfY2FwdHVyZV9zY29wZShzZWxmKToKKyAgICAg
ICAgc2NvcGUgPSBPdXRwdXRDYXB0dXJlU2NvcGUoKQorICAgICAgICB3aXRoIHNjb3BlOgorICAg
ICAgICAgICAgcHJpbnQgJ1NUUklORyAxJworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCgnU1RS
SU5HIDFcbicsICcnLCAnJyksIHNjb3BlLmNhcHR1cmVkX291dHB1dCkKKworICAgICAgICB3aXRo
IHNjb3BlOgorICAgICAgICAgICAgcHJpbnQgJ1NUUklORyAyJworICAgICAgICBzZWxmLmFzc2Vy
dEVxdWFsKCgnU1RSSU5HIDJcbicsICcnLCAnJyksIHNjb3BlLmNhcHR1cmVkX291dHB1dCkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>311927</attachid>
            <date>2017-06-03 08:34:19 -0700</date>
            <delta_ts>2017-06-03 09:11:34 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-172876-20170603083423.patch</filename>
            <type>text/plain</type>
            <size>3324</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIxNzc1NykKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDIyIEBACisyMDE3LTA2LTAzICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICB3ZWJraXRweTogQWRkIGNvbnRleHRtYW5hZ2VyIHRvIGRpc2FibGUgbG9n
Z2luZyBmb3IgYSBibG9jaworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTcyODc2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFuaWVsIEJhdGVzLgorCisg
ICAgICAgIEFkZCBhIGNvbnRleHQgbWFuYWdlciB3aGljaCB3aWxsIHVzZSBhbiBPdXRwdXRDYXB0
dXJlIG9iamVjdCB0byBjYXB0dXJlIGxvZ2dpbmcKKyAgICAgICAgaW4gYSBibG9jayBhbmQgaG9s
ZCBpdCBpbiBhIHZhcmlhYmxlLgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9jb21tb24v
c3lzdGVtL291dHB1dGNhcHR1cmUucHk6CisgICAgICAgIChPdXRwdXRDYXB0dXJlU2NvcGUpOgor
ICAgICAgICAoT3V0cHV0Q2FwdHVyZVNjb3BlLl9faW5pdF9fKTogQ29uc3RydWN0IHdpdGggT3V0
cHV0Q2FwdHVyZSBvYmplY3QuCisgICAgICAgIChPdXRwdXRDYXB0dXJlU2NvcGUuX19lbnRlcl9f
KTogQmVnaW4gY2FwdHVyaW5nIG91dHB1dC4gCisgICAgICAgIChPdXRwdXRDYXB0dXJlU2NvcGUu
X19leGl0X18pOiBSZXN0b3JlIG91dHB1dCBhbmQgc2F2ZSBjYXB0dXJlZCBvdXRwdXQgdG8gYSB2
YXJpYWJsZS4KKyAgICAgICAgb3V0cHV0IGFuZCByZXRhaW4gdGhlIHJlc3VsdGluZyBsb2cuCisg
ICAgICAgICogU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL291dHB1dGNhcHR1cmVfdW5p
dHRlc3QucHk6CisgICAgICAgIChPdXRwdXRDYXB0dXJlVGVzdC50ZXN0X291dHB1dF9jYXB0dXJl
X3Njb3BlKTogQWRkZWQuCisKIDIwMTctMDYtMDIgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxl
LmNvbT4KIAogICAgICAgICBDbGVhbnVwIEZyYW1lVmlldzo6YXV0b1NpemVJZkVuYWJsZWQuCklu
ZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vb3V0cHV0Y2FwdHVyZS5w
eQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vb3V0
cHV0Y2FwdHVyZS5weQkocmV2aXNpb24gMjE3NzU3KQorKysgVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9jb21tb24vc3lzdGVtL291dHB1dGNhcHR1cmUucHkJKHdvcmtpbmcgY29weSkKQEAgLTEwNyw2
ICsxMDcsMTkgQEAgY2xhc3MgT3V0cHV0Q2FwdHVyZShvYmplY3QpOgogICAgICAgICByZXR1cm4g
cmV0dXJuX3ZhbHVlCiAKIAorY2xhc3MgT3V0cHV0Q2FwdHVyZVNjb3BlKG9iamVjdCk6CisKKyAg
ICBkZWYgX19pbml0X18oc2VsZiwgb3V0cHV0X2NhcHR1cmU9T3V0cHV0Q2FwdHVyZSgpKToKKyAg
ICAgICAgc2VsZi5fb3V0cHV0X2NhcHR1cmUgPSBvdXRwdXRfY2FwdHVyZQorICAgICAgICBzZWxm
LmNhcHR1cmVkX291dHB1dCA9IChOb25lLCBOb25lLCBOb25lKQorCisgICAgZGVmIF9fZW50ZXJf
XyhzZWxmKToKKyAgICAgICAgc2VsZi5fb3V0cHV0X2NhcHR1cmUuY2FwdHVyZV9vdXRwdXQoKQor
CisgICAgZGVmIF9fZXhpdF9fKHNlbGYsIGV4Y190eXBlLCBleGNfdmFsdWUsIHRyYWNlYmFjayk6
CisgICAgICAgIHNlbGYuY2FwdHVyZWRfb3V0cHV0ID0gc2VsZi5fb3V0cHV0X2NhcHR1cmUucmVz
dG9yZV9vdXRwdXQoKQorCisKIGNsYXNzIE91dHB1dENhcHR1cmVUZXN0Q2FzZUJhc2UodW5pdHRl
c3QuVGVzdENhc2UpOgogICAgIG1heERpZmYgPSBOb25lCiAKSW5kZXg6IFRvb2xzL1NjcmlwdHMv
d2Via2l0cHkvY29tbW9uL3N5c3RlbS9vdXRwdXRjYXB0dXJlX3VuaXR0ZXN0LnB5Cj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9vdXRwdXRjYXB0dXJl
X3VuaXR0ZXN0LnB5CShyZXZpc2lvbiAyMTc3NTcpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5
L2NvbW1vbi9zeXN0ZW0vb3V0cHV0Y2FwdHVyZV91bml0dGVzdC5weQkod29ya2luZyBjb3B5KQpA
QCAtMjMsNyArMjMsNyBAQAogaW1wb3J0IGxvZ2dpbmcKIGltcG9ydCB1bml0dGVzdAogCi1mcm9t
IHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0ub3V0cHV0Y2FwdHVyZSBpbXBvcnQgT3V0cHV0Q2FwdHVy
ZQorZnJvbSB3ZWJraXRweS5jb21tb24uc3lzdGVtLm91dHB1dGNhcHR1cmUgaW1wb3J0IE91dHB1
dENhcHR1cmUsIE91dHB1dENhcHR1cmVTY29wZQogCiAKIF9sb2cgPSBsb2dnaW5nLmdldExvZ2dl
cihfX25hbWVfXykKQEAgLTU3LDMgKzU3LDE5IEBAIGNsYXNzIE91dHB1dENhcHR1cmVUZXN0KHVu
aXR0ZXN0LlRlc3RDYXMKICAgICAgICAgc2VsZi5vdXRwdXQuc2V0X2xvZ19sZXZlbChsb2dnaW5n
LldBUk4pCiAgICAgICAgIHNlbGYubG9nX2FsbF9sZXZlbHMoKQogICAgICAgICBzZWxmLmFzc2Vy
dExvZ2dlZCgnRVJST1JcbkNSSVRJQ0FMXG5XQVJOXG5FUlJPUlxuQ1JJVElDQUxcbicpCisKKyAg
ICBkZWYgdGVzdF9vdXRwdXRfY2FwdHVyZV9zY29wZShzZWxmKToKKyAgICAgICAgc2NvcGUgPSBP
dXRwdXRDYXB0dXJlU2NvcGUoKQorICAgICAgICB3aXRoIHNjb3BlOgorICAgICAgICAgICAgcHJp
bnQgJ1NUUklORyAxJworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCgnU1RSSU5HIDFcbicsICcn
LCAnJyksIHNjb3BlLmNhcHR1cmVkX291dHB1dCkKKworICAgICAgICB3aXRoIHNjb3BlOgorICAg
ICAgICAgICAgcHJpbnQgJ1NUUklORyAyJworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCgnU1RS
SU5HIDJcbicsICcnLCAnJyksIHNjb3BlLmNhcHR1cmVkX291dHB1dCkKKworICAgIGRlZiB0ZXN0
X291dHB1dF9jYXB0dXJlX3Njb3BlX2Zyb21fb3V0cHV0X2NhcHR1cmUoc2VsZik6CisgICAgICAg
IHNjb3BlID0gT3V0cHV0Q2FwdHVyZVNjb3BlKHNlbGYub3V0cHV0KQorICAgICAgICB3aXRoIHNj
b3BlOgorICAgICAgICAgICAgc2VsZi5sb2dfYWxsX2xldmVscygpCisgICAgICAgIHNlbGYuYXNz
ZXJ0RXF1YWwoKCcnLCAnJywgJ0lORk9cbldBUk5cbkVSUk9SXG5DUklUSUNBTFxuJyksIHNjb3Bl
LmNhcHR1cmVkX291dHB1dCkK
</data>

          </attachment>
      

    </bug>

</bugzilla>