<?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>168866</bug_id>
          
          <creation_ts>2017-02-24 22:54:53 -0800</creation_ts>
          <short_desc>Commit should order by &apos;commit_order&apos; as secondary key.</short_desc>
          <delta_ts>2017-02-25 01:00:12 -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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>dewei_zhu</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dewei_zhu</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1281014</commentid>
    <comment_count>0</comment_count>
    <who name="">dewei_zhu</who>
    <bug_when>2017-02-24 22:54:53 -0800</bug_when>
    <thetext>Commit should order by &apos;commit_order&apos; as secondary key.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1281015</commentid>
    <comment_count>1</comment_count>
      <attachid>302736</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2017-02-24 22:57:33 -0800</bug_when>
    <thetext>Created attachment 302736
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1281016</commentid>
    <comment_count>2</comment_count>
      <attachid>302736</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2017-02-24 23:07:15 -0800</bug_when>
    <thetext>Comment on attachment 302736
Patch

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

&gt; Websites/perf.webkit.org/public/include/commit-log-fetcher.php:87
&gt; -        return $this-&gt;format_single_commit($this-&gt;db-&gt;select_first_row(&apos;commits&apos;, &apos;commit&apos;, array(&apos;repository&apos; =&gt; $repository_id), &apos;time&apos;));
&gt; +        return $this-&gt;format_single_commit($this-&gt;db-&gt;select_first_row(&apos;commits&apos;, &apos;commit&apos;, array(&apos;repository&apos; =&gt; $repository_id), [&apos;time&apos;, &apos;order&apos;]));

[] syntax doesn&apos;t work on an older versions of PHP.
So please use array() instead.

&gt; Websites/perf.webkit.org/public/include/db.php:217
&gt; +            if (!is_array($order_by)) {
&gt; +                $order_by = array($order_by);
&gt; +            }

Nit: No curtly braces around a single line statement.

&gt; Websites/perf.webkit.org/public/include/db.php:223
&gt; +                $order_column = $this-&gt;prefixed_name($order_key, $prefix);
&gt; +                if ($descending_order)
&gt; +                    $order_column .= &apos; DESC&apos;;

Might be cleaner to always specify ASC/DES using tertiary expression as in:
$order_column = $this-&gt;prefixed_name($order_key, $prefix) . &apos; &apos; . ($descending_order ? &apos;DESC&apos; : &apos;ASC&apos;);

&gt; Websites/perf.webkit.org/server-tests/api-commits.js:137
&gt; +        it(&quot;should return the list of ordered commits for a given repository&quot;, () =&gt; {

Please also add tests for latest, &amp; oldest, and last-reported.

&gt; Websites/perf.webkit.org/server-tests/api-commits.js:146
&gt; +                assert.equal(commits.length, 6);

You can just check against submittedCommits.length here.

&gt; Websites/perf.webkit.org/server-tests/api-commits.js:147
&gt; +                var submittedCommits = systemVersionCommits[&apos;commits&apos;];

Use const instead of var.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1281045</commentid>
    <comment_count>3</comment_count>
      <attachid>302748</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2017-02-25 00:18:23 -0800</bug_when>
    <thetext>Created attachment 302748
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1281063</commentid>
    <comment_count>4</comment_count>
      <attachid>302748</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-02-25 01:00:08 -0800</bug_when>
    <thetext>Comment on attachment 302748
Patch for landing

Clearing flags on attachment: 302748

Committed r213003: &lt;http://trac.webkit.org/changeset/213003&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1281064</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-02-25 01:00:12 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>302736</attachid>
            <date>2017-02-24 22:57:33 -0800</date>
            <delta_ts>2017-02-25 00:18:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-168866-20170224225443.patch</filename>
            <type>text/plain</type>
            <size>7495</size>
            <attacher>dewei_zhu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEyOTkzCmRpZmYgLS1naXQgYS9XZWJzaXRlcy9wZXJmLndl
YmtpdC5vcmcvQ2hhbmdlTG9nIGIvV2Vic2l0ZXMvcGVyZi53ZWJraXQub3JnL0NoYW5nZUxvZwpp
bmRleCAyMDRiODZmZWI2ODUxMzFmY2I2OTRkODZjNjczMDI3NDk1OGExMGU4Li5jZTE0ZTQwMTc2
ODg3MWY5NTIzYWU1OTFjMDUxNTNkM2UxYzMzZThmIDEwMDY0NAotLS0gYS9XZWJzaXRlcy9wZXJm
LndlYmtpdC5vcmcvQ2hhbmdlTG9nCisrKyBiL1dlYnNpdGVzL3BlcmYud2Via2l0Lm9yZy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxNy0wMi0yNCAgRGV3ZWkgWmh1ICA8ZGV3ZWlfemh1
QGFwcGxlLmNvbT4KKworICAgICAgICBDb21taXQgc2hvdWxkIG9yZGVyIGJ5ICdjb21taXRfb3Jk
ZXInIGFzIHNlY29uZGFyeSBrZXkuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNjg4NjYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBDdXJyZW50bHksIGNvbW1pdHMgYXJlIHNvcnRlZCBieSAnY29tbWl0X3Rp
bWUnIG9ubHkuCisgICAgICAgIFdlIHNob3VsZCB1c2UgJ2NvbW1pdF9vcmRlcicgYXMgc2Vjb25k
YXJ5IGtleSB3aGVuICdjb21taXRfdGltZScgaXMgZXF1YWwgb3IgbnVsbC4KKworICAgICAgICAq
IHB1YmxpYy9pbmNsdWRlL2NvbW1pdC1sb2ctZmV0Y2hlci5waHA6CisgICAgICAgICogcHVibGlj
L2luY2x1ZGUvZGIucGhwOgorICAgICAgICAqIHNlcnZlci10ZXN0cy9hcGktY29tbWl0cy5qczoK
KyAgICAgICAgKHJldHVybi5hZGRTbGF2ZUZvclJlcG9ydC5zdWJ2ZXJzaW9uQ29tbWl0cy50aGVu
KToKKyAgICAgICAgKHRoZW4pOgorCiAyMDE3LTAyLTIzICBEZXdlaSBaaHUgIDxkZXdlaV96aHVA
YXBwbGUuY29tPgogCiAgICAgICAgIFJlbmFtZSAnY29tbWl0X3BhcmVudCcgaW4gJ2NvbW1pdHMn
IHRhYmxlIHRvICdjb21taXRfcHJldmlvdXNfY29tbWl0Jy4KZGlmZiAtLWdpdCBhL1dlYnNpdGVz
L3BlcmYud2Via2l0Lm9yZy9wdWJsaWMvaW5jbHVkZS9jb21taXQtbG9nLWZldGNoZXIucGhwIGIv
V2Vic2l0ZXMvcGVyZi53ZWJraXQub3JnL3B1YmxpYy9pbmNsdWRlL2NvbW1pdC1sb2ctZmV0Y2hl
ci5waHAKaW5kZXggMGI3NmQyNDA3ZGUxMzZhY2NiZjZlYTU2YmMxNDdmMTYwYTU1ZDYwZi4uNzFj
YWM5ZTU1M2RlZWExYjlhYjA3YzVkNDYxYzYwYmEyNTBjODM2MCAxMDA2NDQKLS0tIGEvV2Vic2l0
ZXMvcGVyZi53ZWJraXQub3JnL3B1YmxpYy9pbmNsdWRlL2NvbW1pdC1sb2ctZmV0Y2hlci5waHAK
KysrIGIvV2Vic2l0ZXMvcGVyZi53ZWJraXQub3JnL3B1YmxpYy9pbmNsdWRlL2NvbW1pdC1sb2ct
ZmV0Y2hlci5waHAKQEAgLTg0LDE1ICs4NCwxNSBAQCBjbGFzcyBDb21taXRMb2dGZXRjaGVyIHsK
ICAgICB9CiAKICAgICBmdW5jdGlvbiBmZXRjaF9vbGRlc3QoJHJlcG9zaXRvcnlfaWQpIHsKLSAg
ICAgICAgcmV0dXJuICR0aGlzLT5mb3JtYXRfc2luZ2xlX2NvbW1pdCgkdGhpcy0+ZGItPnNlbGVj
dF9maXJzdF9yb3coJ2NvbW1pdHMnLCAnY29tbWl0JywgYXJyYXkoJ3JlcG9zaXRvcnknID0+ICRy
ZXBvc2l0b3J5X2lkKSwgJ3RpbWUnKSk7CisgICAgICAgIHJldHVybiAkdGhpcy0+Zm9ybWF0X3Np
bmdsZV9jb21taXQoJHRoaXMtPmRiLT5zZWxlY3RfZmlyc3Rfcm93KCdjb21taXRzJywgJ2NvbW1p
dCcsIGFycmF5KCdyZXBvc2l0b3J5JyA9PiAkcmVwb3NpdG9yeV9pZCksIFsndGltZScsICdvcmRl
ciddKSk7CiAgICAgfQogCiAgICAgZnVuY3Rpb24gZmV0Y2hfbGF0ZXN0KCRyZXBvc2l0b3J5X2lk
KSB7Ci0gICAgICAgIHJldHVybiAkdGhpcy0+Zm9ybWF0X3NpbmdsZV9jb21taXQoJHRoaXMtPmRi
LT5zZWxlY3RfbGFzdF9yb3coJ2NvbW1pdHMnLCAnY29tbWl0JywgYXJyYXkoJ3JlcG9zaXRvcnkn
ID0+ICRyZXBvc2l0b3J5X2lkKSwgJ3RpbWUnKSk7CisgICAgICAgIHJldHVybiAkdGhpcy0+Zm9y
bWF0X3NpbmdsZV9jb21taXQoJHRoaXMtPmRiLT5zZWxlY3RfbGFzdF9yb3coJ2NvbW1pdHMnLCAn
Y29tbWl0JywgYXJyYXkoJ3JlcG9zaXRvcnknID0+ICRyZXBvc2l0b3J5X2lkKSwgWyd0aW1lJywg
J29yZGVyJ10pKTsKICAgICB9CiAKICAgICBmdW5jdGlvbiBmZXRjaF9sYXN0X3JlcG9ydGVkKCRy
ZXBvc2l0b3J5X2lkKSB7Ci0gICAgICAgIHJldHVybiAkdGhpcy0+Zm9ybWF0X3NpbmdsZV9jb21t
aXQoJHRoaXMtPmRiLT5zZWxlY3RfbGFzdF9yb3coJ2NvbW1pdHMnLCAnY29tbWl0JywgYXJyYXko
J3JlcG9zaXRvcnknID0+ICRyZXBvc2l0b3J5X2lkLCAncmVwb3J0ZWQnID0+IHRydWUpLCAndGlt
ZScpKTsKKyAgICAgICAgcmV0dXJuICR0aGlzLT5mb3JtYXRfc2luZ2xlX2NvbW1pdCgkdGhpcy0+
ZGItPnNlbGVjdF9sYXN0X3JvdygnY29tbWl0cycsICdjb21taXQnLCBhcnJheSgncmVwb3NpdG9y
eScgPT4gJHJlcG9zaXRvcnlfaWQsICdyZXBvcnRlZCcgPT4gdHJ1ZSksIFsndGltZScsICdvcmRl
ciddKSk7CiAgICAgfQogCiAgICAgZnVuY3Rpb24gZmV0Y2hfcmV2aXNpb24oJHJlcG9zaXRvcnlf
aWQsICRyZXZpc2lvbikgewpkaWZmIC0tZ2l0IGEvV2Vic2l0ZXMvcGVyZi53ZWJraXQub3JnL3B1
YmxpYy9pbmNsdWRlL2RiLnBocCBiL1dlYnNpdGVzL3BlcmYud2Via2l0Lm9yZy9wdWJsaWMvaW5j
bHVkZS9kYi5waHAKaW5kZXggMWNjMzI3ODE5NjEyNmM3Nzk0ZGQyMDEwNTBkNzRlMzY2MGM5YTc2
MC4uYjgyYTk4ZGFjZDIwNjZmZWVmOGU4N2IwYWIzOTIyZjgzYTAxMWFhMyAxMDA2NDQKLS0tIGEv
V2Vic2l0ZXMvcGVyZi53ZWJraXQub3JnL3B1YmxpYy9pbmNsdWRlL2RiLnBocAorKysgYi9XZWJz
aXRlcy9wZXJmLndlYmtpdC5vcmcvcHVibGljL2luY2x1ZGUvZGIucGhwCkBAIC0xODAsNyArMTgw
LDcgQEAgY2xhc3MgRGF0YWJhc2UKICAgICAgICAgfQogICAgICAgICBpZiAoISRyb3dzICYmICRz
aG91bGRfaW5zZXJ0KSB7CiAgICAgICAgICAgICAkcm93cyA9ICR0aGlzLT5xdWVyeV9hbmRfZmV0
Y2hfYWxsKCJJTlNFUlQgSU5UTyAkdGFibGUgKCRpbnNlcnRfY29sdW1uX25hbWVzKSBTRUxFQ1Qg
JGluc2VydF9wbGFjZWhvbGRlcnMKLSAgICAgICAgICAgICAgICBXSEVSRSBOT1QgRVhJU1RTICgk
cXVlcnkpIFJFVFVSTklORyAkcmV0dXJuaW5nX2NvbHVtbl9uYW1lIiwgJHZhbHVlcyk7ICAgICAg
ICAgICAgCisgICAgICAgICAgICAgICAgV0hFUkUgTk9UIEVYSVNUUyAoJHF1ZXJ5KSBSRVRVUk5J
TkcgJHJldHVybmluZ19jb2x1bW5fbmFtZSIsICR2YWx1ZXMpOwogICAgICAgICB9CiAgICAgICAg
IGlmICghJHNob3VsZF91cGRhdGUgJiYgISRyb3dzKQogICAgICAgICAgICAgJHJvd3MgPSAkdGhp
cy0+cXVlcnlfYW5kX2ZldGNoX2FsbCgkcXVlcnksICRzZWxlY3RfdmFsdWVzKTsKQEAgLTIxMiwx
MCArMjEyLDE4IEBAIGNsYXNzIERhdGFiYXNlCiAgICAgICAgICAgICAkY29sdW1uX25hbWVzID0g
JHBsYWNlaG9sZGVycyA9ICcxJzsKICAgICAgICAgJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gJHRh
YmxlIFdIRVJFICgkY29sdW1uX25hbWVzKSA9ICgkcGxhY2Vob2xkZXJzKSI7CiAgICAgICAgIGlm
ICgkb3JkZXJfYnkpIHsKLSAgICAgICAgICAgIGFzc2VydChjdHlwZV9hbG51bV91bmRlcnNjb3Jl
KCRvcmRlcl9ieSkpOwotICAgICAgICAgICAgJHF1ZXJ5IC49ICcgT1JERVIgQlkgJyAuICR0aGlz
LT5wcmVmaXhlZF9uYW1lKCRvcmRlcl9ieSwgJHByZWZpeCk7Ci0gICAgICAgICAgICBpZiAoJGRl
c2NlbmRpbmdfb3JkZXIpCi0gICAgICAgICAgICAgICAgJHF1ZXJ5IC49ICcgREVTQyc7CisgICAg
ICAgICAgICBpZiAoIWlzX2FycmF5KCRvcmRlcl9ieSkpIHsKKyAgICAgICAgICAgICAgICAkb3Jk
ZXJfYnkgPSBhcnJheSgkb3JkZXJfYnkpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgJG9y
ZGVyX2NvbHVtbnMgPSBhcnJheSgpOworICAgICAgICAgICAgZm9yZWFjaCAoJG9yZGVyX2J5IGFz
ICRvcmRlcl9rZXkpIHsKKyAgICAgICAgICAgICAgICBhc3NlcnQoY3R5cGVfYWxudW1fdW5kZXJz
Y29yZSgkb3JkZXJfa2V5KSk7CisgICAgICAgICAgICAgICAgJG9yZGVyX2NvbHVtbiA9ICR0aGlz
LT5wcmVmaXhlZF9uYW1lKCRvcmRlcl9rZXksICRwcmVmaXgpOworICAgICAgICAgICAgICAgIGlm
ICgkZGVzY2VuZGluZ19vcmRlcikKKyAgICAgICAgICAgICAgICAgICAgJG9yZGVyX2NvbHVtbiAu
PSAnIERFU0MnOworICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJG9yZGVyX2NvbHVtbnMsICRv
cmRlcl9jb2x1bW4pOworICAgICAgICAgICAgfQorICAgICAgICAgICAgJHF1ZXJ5IC49ICcgT1JE
RVIgQlkgJyAuIGpvaW4oJywgJywgJG9yZGVyX2NvbHVtbnMpOwogICAgICAgICB9CiAgICAgICAg
IGlmICgkb2Zmc2V0ICE9PSBOVUxMKQogICAgICAgICAgICAgJHF1ZXJ5IC49ICcgT0ZGU0VUICcg
LiBpbnR2YWwoJG9mZnNldCk7CmRpZmYgLS1naXQgYS9XZWJzaXRlcy9wZXJmLndlYmtpdC5vcmcv
c2VydmVyLXRlc3RzL2FwaS1jb21taXRzLmpzIGIvV2Vic2l0ZXMvcGVyZi53ZWJraXQub3JnL3Nl
cnZlci10ZXN0cy9hcGktY29tbWl0cy5qcwppbmRleCBhNDJjNjBkYzc2N2I4ODBjNTQ3NTA4ZWM0
Y2Q4NTUzNWQzOWE4Yjc5Li5lN2JiN2ZjY2ZkZDEyMWI1NDA5NTgzMTA0MjMzNzBiNjliYjJmMjhl
IDEwMDY0NAotLS0gYS9XZWJzaXRlcy9wZXJmLndlYmtpdC5vcmcvc2VydmVyLXRlc3RzL2FwaS1j
b21taXRzLmpzCisrKyBiL1dlYnNpdGVzL3BlcmYud2Via2l0Lm9yZy9zZXJ2ZXItdGVzdHMvYXBp
LWNvbW1pdHMuanMKQEAgLTM5LDYgKzM5LDQzIEBAIGRlc2NyaWJlKCIvYXBpL2NvbW1pdHMvIiwg
KCkgPT4gewogICAgICAgICBdCiAgICAgfQogCisgICAgY29uc3Qgc3lzdGVtVmVyc2lvbkNvbW1p
dHMgPSB7CisgICAgICAgICJzbGF2ZU5hbWUiOiAic29tZVNsYXZlIiwKKyAgICAgICAgInNsYXZl
UGFzc3dvcmQiOiAic29tZVBhc3N3b3JkIiwKKyAgICAgICAgImNvbW1pdHMiOiBbCisgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgInJlcG9zaXRvcnkiOiAiT1NYIiwKKyAgICAgICAgICAg
ICAgICAicmV2aXNpb24iOiAiMTZEMzIiLAorICAgICAgICAgICAgICAgICJvcmRlciI6IDYKKyAg
ICAgICAgICAgIH0sCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgInJlcG9zaXRvcnki
OiAiT1NYIiwKKyAgICAgICAgICAgICAgICAicmV2aXNpb24iOiAiMTZDNjgiLAorICAgICAgICAg
ICAgICAgICJvcmRlciI6IDUKKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgInJlcG9zaXRvcnkiOiAiT1NYIiwKKyAgICAgICAgICAgICAgICAicmV2aXNpb24i
OiAiMTZDNjciLAorICAgICAgICAgICAgICAgICJvcmRlciI6IDQKKyAgICAgICAgICAgIH0sCisg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgInJlcG9zaXRvcnkiOiAiT1NYIiwKKyAgICAg
ICAgICAgICAgICAicmV2aXNpb24iOiAiMTZCMjY1NyIsCisgICAgICAgICAgICAgICAgIm9yZGVy
IjogMworICAgICAgICAgICAgfSwKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAicmVw
b3NpdG9yeSI6ICJPU1giLAorICAgICAgICAgICAgICAgICJyZXZpc2lvbiI6ICIxNkIyNTU1IiwK
KyAgICAgICAgICAgICAgICAib3JkZXIiOiAyCisgICAgICAgICAgICB9LAorICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICJyZXBvc2l0b3J5IjogIk9TWCIsCisgICAgICAgICAgICAgICAg
InJldmlzaW9uIjogIjE2QTMyMyIsCisgICAgICAgICAgICAgICAgIm9yZGVyIjogMQorICAgICAg
ICAgICAgfQorICAgICAgICBdCisgICAgfQorCiAgICAgY29uc3Qgbm90WWV0UmVwb3J0ZWRDb21t
aXQgPSB7CiAgICAgICAgIHJldmlzaW9uOiAnMjEwOTUxJywKICAgICAgICAgdGltZTogJzIwMTct
MDEtMjBUMDM6NTY6MjAuMDQ1WicKQEAgLTk2LDYgKzEzMywyNyBAQCBkZXNjcmliZSgiL2FwaS9j
b21taXRzLyIsICgpID0+IHsKICAgICAgICAgICAgICAgICBhc3NlcnQuZXF1YWwoY29tbWl0c1sy
XVsncHJldmlvdXNDb21taXQnXSwgY29tbWl0c1sxXVsnaWQnXSk7CiAgICAgICAgICAgICB9KTsK
ICAgICAgICAgfSk7CisKKyAgICAgICAgaXQoInNob3VsZCByZXR1cm4gdGhlIGxpc3Qgb2Ygb3Jk
ZXJlZCBjb21taXRzIGZvciBhIGdpdmVuIHJlcG9zaXRvcnkiLCAoKSA9PiB7CisgICAgICAgICAg
ICByZXR1cm4gYWRkU2xhdmVGb3JSZXBvcnQoc3VidmVyc2lvbkNvbW1pdHMpLnRoZW4oKCkgPT4g
eworICAgICAgICAgICAgICAgIHJldHVybiBUZXN0U2VydmVyLnJlbW90ZUFQSSgpLnBvc3RKU09O
KCcvYXBpL3JlcG9ydC1jb21taXRzLycsIHN5c3RlbVZlcnNpb25Db21taXRzKTsKKyAgICAgICAg
ICAgIH0pLnRoZW4oZnVuY3Rpb24gKHJlc3BvbnNlKSB7CisgICAgICAgICAgICAgICAgYXNzZXJ0
LmVxdWFsKHJlc3BvbnNlWydzdGF0dXMnXSwgJ09LJyk7CisgICAgICAgICAgICAgICAgcmV0dXJu
IFRlc3RTZXJ2ZXIucmVtb3RlQVBJKCkuZ2V0SlNPTignL2FwaS9jb21taXRzL09TWC8nKTsKKyAg
ICAgICAgICAgIH0pLnRoZW4oZnVuY3Rpb24gKHJlc3VsdCkgeworICAgICAgICAgICAgICAgIGFz
c2VydC5lcXVhbChyZXN1bHRbJ3N0YXR1cyddLCAnT0snKTsKKyAgICAgICAgICAgICAgICBjb25z
dCBjb21taXRzID0gcmVzdWx0Wydjb21taXRzJ107CisgICAgICAgICAgICAgICAgYXNzZXJ0LmVx
dWFsKGNvbW1pdHMubGVuZ3RoLCA2KTsKKyAgICAgICAgICAgICAgICB2YXIgc3VibWl0dGVkQ29t
bWl0cyA9IHN5c3RlbVZlcnNpb25Db21taXRzWydjb21taXRzJ107CisgICAgICAgICAgICAgICAg
c3VibWl0dGVkQ29tbWl0cy5yZXZlcnNlKCk7CisgICAgICAgICAgICAgICAgYXNzZXJ0LmVxdWFs
KGNvbW1pdHNbMF1bJ3JldmlzaW9uJ10sIHN1Ym1pdHRlZENvbW1pdHNbMF1bJ3JldmlzaW9uJ10p
OworICAgICAgICAgICAgICAgIGFzc2VydC5lcXVhbChjb21taXRzWzFdWydyZXZpc2lvbiddLCBz
dWJtaXR0ZWRDb21taXRzWzFdWydyZXZpc2lvbiddKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQu
ZXF1YWwoY29tbWl0c1syXVsncmV2aXNpb24nXSwgc3VibWl0dGVkQ29tbWl0c1syXVsncmV2aXNp
b24nXSk7CisgICAgICAgICAgICAgICAgYXNzZXJ0LmVxdWFsKGNvbW1pdHNbM11bJ3JldmlzaW9u
J10sIHN1Ym1pdHRlZENvbW1pdHNbM11bJ3JldmlzaW9uJ10pOworICAgICAgICAgICAgICAgIGFz
c2VydC5lcXVhbChjb21taXRzWzRdWydyZXZpc2lvbiddLCBzdWJtaXR0ZWRDb21taXRzWzRdWydy
ZXZpc2lvbiddKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQuZXF1YWwoY29tbWl0c1s1XVsncmV2
aXNpb24nXSwgc3VibWl0dGVkQ29tbWl0c1s1XVsncmV2aXNpb24nXSk7CisgICAgICAgICAgICB9
KTsKKyAgICAgICAgfSk7CiAgICAgfSk7CiAKICAgICBkZXNjcmliZSgnL2FwaS9jb21taXRzLzxy
ZXBvc2l0b3J5Pi9vbGRlc3QnLCAoKSA9PiB7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>302748</attachid>
            <date>2017-02-25 00:18:23 -0800</date>
            <delta_ts>2017-02-25 01:00:08 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-168866-20170225001532.patch</filename>
            <type>text/plain</type>
            <size>10438</size>
            <attacher>dewei_zhu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEyOTkzCmRpZmYgLS1naXQgYS9XZWJzaXRlcy9wZXJmLndl
YmtpdC5vcmcvQ2hhbmdlTG9nIGIvV2Vic2l0ZXMvcGVyZi53ZWJraXQub3JnL0NoYW5nZUxvZwpp
bmRleCAyMDRiODZmZWI2ODUxMzFmY2I2OTRkODZjNjczMDI3NDk1OGExMGU4Li45YzVmODBiOGYy
OTAwZmU5MjYzNWY5ZGM4MTUwODFkM2JiY2FiNDFkIDEwMDY0NAotLS0gYS9XZWJzaXRlcy9wZXJm
LndlYmtpdC5vcmcvQ2hhbmdlTG9nCisrKyBiL1dlYnNpdGVzL3BlcmYud2Via2l0Lm9yZy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxNy0wMi0yNCAgRGV3ZWkgWmh1ICA8ZGV3ZWlfemh1
QGFwcGxlLmNvbT4KKworICAgICAgICBDb21taXQgc2hvdWxkIG9yZGVyIGJ5ICdjb21taXRfb3Jk
ZXInIGFzIHNlY29uZGFyeSBrZXkuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNjg4NjYKKworICAgICAgICBSZXZpZXdlZCBieSBSeW9zdWtlIE5pd2Eu
CisKKyAgICAgICAgQ3VycmVudGx5LCBjb21taXRzIGFyZSBzb3J0ZWQgYnkgJ2NvbW1pdF90aW1l
JyBvbmx5LgorICAgICAgICBXZSBzaG91bGQgdXNlICdjb21taXRfb3JkZXInIGFzIHNlY29uZGFy
eSBrZXkgd2hlbiAnY29tbWl0X3RpbWUnIGlzIGVxdWFsIG9yIG51bGwuCisKKyAgICAgICAgKiBw
dWJsaWMvaW5jbHVkZS9jb21taXQtbG9nLWZldGNoZXIucGhwOgorICAgICAgICAqIHB1YmxpYy9p
bmNsdWRlL2RiLnBocDoKKyAgICAgICAgKiBzZXJ2ZXItdGVzdHMvYXBpLWNvbW1pdHMuanM6Cisg
ICAgICAgIChyZXR1cm4uYWRkU2xhdmVGb3JSZXBvcnQuc3VidmVyc2lvbkNvbW1pdHMudGhlbik6
CisgICAgICAgICh0aGVuKToKKwogMjAxNy0wMi0yMyAgRGV3ZWkgWmh1ICA8ZGV3ZWlfemh1QGFw
cGxlLmNvbT4KIAogICAgICAgICBSZW5hbWUgJ2NvbW1pdF9wYXJlbnQnIGluICdjb21taXRzJyB0
YWJsZSB0byAnY29tbWl0X3ByZXZpb3VzX2NvbW1pdCcuCmRpZmYgLS1naXQgYS9XZWJzaXRlcy9w
ZXJmLndlYmtpdC5vcmcvcHVibGljL2luY2x1ZGUvY29tbWl0LWxvZy1mZXRjaGVyLnBocCBiL1dl
YnNpdGVzL3BlcmYud2Via2l0Lm9yZy9wdWJsaWMvaW5jbHVkZS9jb21taXQtbG9nLWZldGNoZXIu
cGhwCmluZGV4IDBiNzZkMjQwN2RlMTM2YWNjYmY2ZWE1NmJjMTQ3ZjE2MGE1NWQ2MGYuLjc0NzI4
MTlmYTkzZGVkN2E4NWFhNzhiMDExNWFjMTYzNTEyNmRlZTMgMTAwNjQ0Ci0tLSBhL1dlYnNpdGVz
L3BlcmYud2Via2l0Lm9yZy9wdWJsaWMvaW5jbHVkZS9jb21taXQtbG9nLWZldGNoZXIucGhwCisr
KyBiL1dlYnNpdGVzL3BlcmYud2Via2l0Lm9yZy9wdWJsaWMvaW5jbHVkZS9jb21taXQtbG9nLWZl
dGNoZXIucGhwCkBAIC04NCwxNSArODQsMTUgQEAgY2xhc3MgQ29tbWl0TG9nRmV0Y2hlciB7CiAg
ICAgfQogCiAgICAgZnVuY3Rpb24gZmV0Y2hfb2xkZXN0KCRyZXBvc2l0b3J5X2lkKSB7Ci0gICAg
ICAgIHJldHVybiAkdGhpcy0+Zm9ybWF0X3NpbmdsZV9jb21taXQoJHRoaXMtPmRiLT5zZWxlY3Rf
Zmlyc3Rfcm93KCdjb21taXRzJywgJ2NvbW1pdCcsIGFycmF5KCdyZXBvc2l0b3J5JyA9PiAkcmVw
b3NpdG9yeV9pZCksICd0aW1lJykpOworICAgICAgICByZXR1cm4gJHRoaXMtPmZvcm1hdF9zaW5n
bGVfY29tbWl0KCR0aGlzLT5kYi0+c2VsZWN0X2ZpcnN0X3JvdygnY29tbWl0cycsICdjb21taXQn
LCBhcnJheSgncmVwb3NpdG9yeScgPT4gJHJlcG9zaXRvcnlfaWQpLCBhcnJheSgndGltZScsICdv
cmRlcicpKSk7CiAgICAgfQogCiAgICAgZnVuY3Rpb24gZmV0Y2hfbGF0ZXN0KCRyZXBvc2l0b3J5
X2lkKSB7Ci0gICAgICAgIHJldHVybiAkdGhpcy0+Zm9ybWF0X3NpbmdsZV9jb21taXQoJHRoaXMt
PmRiLT5zZWxlY3RfbGFzdF9yb3coJ2NvbW1pdHMnLCAnY29tbWl0JywgYXJyYXkoJ3JlcG9zaXRv
cnknID0+ICRyZXBvc2l0b3J5X2lkKSwgJ3RpbWUnKSk7CisgICAgICAgIHJldHVybiAkdGhpcy0+
Zm9ybWF0X3NpbmdsZV9jb21taXQoJHRoaXMtPmRiLT5zZWxlY3RfbGFzdF9yb3coJ2NvbW1pdHMn
LCAnY29tbWl0JywgYXJyYXkoJ3JlcG9zaXRvcnknID0+ICRyZXBvc2l0b3J5X2lkKSwgYXJyYXko
J3RpbWUnLCAnb3JkZXInKSkpOwogICAgIH0KIAogICAgIGZ1bmN0aW9uIGZldGNoX2xhc3RfcmVw
b3J0ZWQoJHJlcG9zaXRvcnlfaWQpIHsKLSAgICAgICAgcmV0dXJuICR0aGlzLT5mb3JtYXRfc2lu
Z2xlX2NvbW1pdCgkdGhpcy0+ZGItPnNlbGVjdF9sYXN0X3JvdygnY29tbWl0cycsICdjb21taXQn
LCBhcnJheSgncmVwb3NpdG9yeScgPT4gJHJlcG9zaXRvcnlfaWQsICdyZXBvcnRlZCcgPT4gdHJ1
ZSksICd0aW1lJykpOworICAgICAgICByZXR1cm4gJHRoaXMtPmZvcm1hdF9zaW5nbGVfY29tbWl0
KCR0aGlzLT5kYi0+c2VsZWN0X2xhc3Rfcm93KCdjb21taXRzJywgJ2NvbW1pdCcsIGFycmF5KCdy
ZXBvc2l0b3J5JyA9PiAkcmVwb3NpdG9yeV9pZCwgJ3JlcG9ydGVkJyA9PiB0cnVlKSwgYXJyYXko
J3RpbWUnLCAnb3JkZXInKSkpOwogICAgIH0KIAogICAgIGZ1bmN0aW9uIGZldGNoX3JldmlzaW9u
KCRyZXBvc2l0b3J5X2lkLCAkcmV2aXNpb24pIHsKZGlmZiAtLWdpdCBhL1dlYnNpdGVzL3BlcmYu
d2Via2l0Lm9yZy9wdWJsaWMvaW5jbHVkZS9kYi5waHAgYi9XZWJzaXRlcy9wZXJmLndlYmtpdC5v
cmcvcHVibGljL2luY2x1ZGUvZGIucGhwCmluZGV4IDFjYzMyNzgxOTYxMjZjNzc5NGRkMjAxMDUw
ZDc0ZTM2NjBjOWE3NjAuLmQ4MDVkNjc2MjIzY2NiODQ1MzkyMjQ0YTNmN2Y2MGRkYzQ1OTk4MjQg
MTAwNjQ0Ci0tLSBhL1dlYnNpdGVzL3BlcmYud2Via2l0Lm9yZy9wdWJsaWMvaW5jbHVkZS9kYi5w
aHAKKysrIGIvV2Vic2l0ZXMvcGVyZi53ZWJraXQub3JnL3B1YmxpYy9pbmNsdWRlL2RiLnBocApA
QCAtMTgwLDcgKzE4MCw3IEBAIGNsYXNzIERhdGFiYXNlCiAgICAgICAgIH0KICAgICAgICAgaWYg
KCEkcm93cyAmJiAkc2hvdWxkX2luc2VydCkgewogICAgICAgICAgICAgJHJvd3MgPSAkdGhpcy0+
cXVlcnlfYW5kX2ZldGNoX2FsbCgiSU5TRVJUIElOVE8gJHRhYmxlICgkaW5zZXJ0X2NvbHVtbl9u
YW1lcykgU0VMRUNUICRpbnNlcnRfcGxhY2Vob2xkZXJzCi0gICAgICAgICAgICAgICAgV0hFUkUg
Tk9UIEVYSVNUUyAoJHF1ZXJ5KSBSRVRVUk5JTkcgJHJldHVybmluZ19jb2x1bW5fbmFtZSIsICR2
YWx1ZXMpOyAgICAgICAgICAgIAorICAgICAgICAgICAgICAgIFdIRVJFIE5PVCBFWElTVFMgKCRx
dWVyeSkgUkVUVVJOSU5HICRyZXR1cm5pbmdfY29sdW1uX25hbWUiLCAkdmFsdWVzKTsKICAgICAg
ICAgfQogICAgICAgICBpZiAoISRzaG91bGRfdXBkYXRlICYmICEkcm93cykKICAgICAgICAgICAg
ICRyb3dzID0gJHRoaXMtPnF1ZXJ5X2FuZF9mZXRjaF9hbGwoJHF1ZXJ5LCAkc2VsZWN0X3ZhbHVl
cyk7CkBAIC0yMTIsMTAgKzIxMiwxNiBAQCBjbGFzcyBEYXRhYmFzZQogICAgICAgICAgICAgJGNv
bHVtbl9uYW1lcyA9ICRwbGFjZWhvbGRlcnMgPSAnMSc7CiAgICAgICAgICRxdWVyeSA9ICJTRUxF
Q1QgKiBGUk9NICR0YWJsZSBXSEVSRSAoJGNvbHVtbl9uYW1lcykgPSAoJHBsYWNlaG9sZGVycyki
OwogICAgICAgICBpZiAoJG9yZGVyX2J5KSB7Ci0gICAgICAgICAgICBhc3NlcnQoY3R5cGVfYWxu
dW1fdW5kZXJzY29yZSgkb3JkZXJfYnkpKTsKLSAgICAgICAgICAgICRxdWVyeSAuPSAnIE9SREVS
IEJZICcgLiAkdGhpcy0+cHJlZml4ZWRfbmFtZSgkb3JkZXJfYnksICRwcmVmaXgpOwotICAgICAg
ICAgICAgaWYgKCRkZXNjZW5kaW5nX29yZGVyKQotICAgICAgICAgICAgICAgICRxdWVyeSAuPSAn
IERFU0MnOworICAgICAgICAgICAgaWYgKCFpc19hcnJheSgkb3JkZXJfYnkpKQorICAgICAgICAg
ICAgICAgICRvcmRlcl9ieSA9IGFycmF5KCRvcmRlcl9ieSk7CisKKyAgICAgICAgICAgICRvcmRl
cl9jb2x1bW5zID0gYXJyYXkoKTsKKyAgICAgICAgICAgIGZvcmVhY2ggKCRvcmRlcl9ieSBhcyAk
b3JkZXJfa2V5KSB7CisgICAgICAgICAgICAgICAgYXNzZXJ0KGN0eXBlX2FsbnVtX3VuZGVyc2Nv
cmUoJG9yZGVyX2tleSkpOworICAgICAgICAgICAgICAgICRvcmRlcl9jb2x1bW4gPSAkdGhpcy0+
cHJlZml4ZWRfbmFtZSgkb3JkZXJfa2V5LCAkcHJlZml4KSAuICcgJyAuICgkZGVzY2VuZGluZ19v
cmRlcj8gJ0RFU0MnIDogJ0FTQycpOworICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJG9yZGVy
X2NvbHVtbnMsICRvcmRlcl9jb2x1bW4pOworICAgICAgICAgICAgfQorICAgICAgICAgICAgJHF1
ZXJ5IC49ICcgT1JERVIgQlkgJyAuIGpvaW4oJywgJywgJG9yZGVyX2NvbHVtbnMpOwogICAgICAg
ICB9CiAgICAgICAgIGlmICgkb2Zmc2V0ICE9PSBOVUxMKQogICAgICAgICAgICAgJHF1ZXJ5IC49
ICcgT0ZGU0VUICcgLiBpbnR2YWwoJG9mZnNldCk7CmRpZmYgLS1naXQgYS9XZWJzaXRlcy9wZXJm
LndlYmtpdC5vcmcvc2VydmVyLXRlc3RzL2FwaS1jb21taXRzLmpzIGIvV2Vic2l0ZXMvcGVyZi53
ZWJraXQub3JnL3NlcnZlci10ZXN0cy9hcGktY29tbWl0cy5qcwppbmRleCBhNDJjNjBkYzc2N2I4
ODBjNTQ3NTA4ZWM0Y2Q4NTUzNWQzOWE4Yjc5Li40YzdjMDA2NmQ1ODcyZTU2N2Y0OTVhYWM5OGE1
OTI1ODRjNTQ0NDNhIDEwMDY0NAotLS0gYS9XZWJzaXRlcy9wZXJmLndlYmtpdC5vcmcvc2VydmVy
LXRlc3RzL2FwaS1jb21taXRzLmpzCisrKyBiL1dlYnNpdGVzL3BlcmYud2Via2l0Lm9yZy9zZXJ2
ZXItdGVzdHMvYXBpLWNvbW1pdHMuanMKQEAgLTM5LDYgKzM5LDQzIEBAIGRlc2NyaWJlKCIvYXBp
L2NvbW1pdHMvIiwgKCkgPT4gewogICAgICAgICBdCiAgICAgfQogCisgICAgY29uc3Qgc3lzdGVt
VmVyc2lvbkNvbW1pdHMgPSB7CisgICAgICAgICJzbGF2ZU5hbWUiOiAic29tZVNsYXZlIiwKKyAg
ICAgICAgInNsYXZlUGFzc3dvcmQiOiAic29tZVBhc3N3b3JkIiwKKyAgICAgICAgImNvbW1pdHMi
OiBbCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgInJlcG9zaXRvcnkiOiAiT1NYIiwK
KyAgICAgICAgICAgICAgICAicmV2aXNpb24iOiAiMTZEMzIiLAorICAgICAgICAgICAgICAgICJv
cmRlciI6IDYKKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
InJlcG9zaXRvcnkiOiAiT1NYIiwKKyAgICAgICAgICAgICAgICAicmV2aXNpb24iOiAiMTZDNjgi
LAorICAgICAgICAgICAgICAgICJvcmRlciI6IDUKKyAgICAgICAgICAgIH0sCisgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgInJlcG9zaXRvcnkiOiAiT1NYIiwKKyAgICAgICAgICAgICAg
ICAicmV2aXNpb24iOiAiMTZDNjciLAorICAgICAgICAgICAgICAgICJvcmRlciI6IDQKKyAgICAg
ICAgICAgIH0sCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgInJlcG9zaXRvcnkiOiAi
T1NYIiwKKyAgICAgICAgICAgICAgICAicmV2aXNpb24iOiAiMTZCMjY1NyIsCisgICAgICAgICAg
ICAgICAgIm9yZGVyIjogMworICAgICAgICAgICAgfSwKKyAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAicmVwb3NpdG9yeSI6ICJPU1giLAorICAgICAgICAgICAgICAgICJyZXZpc2lvbiI6
ICIxNkIyNTU1IiwKKyAgICAgICAgICAgICAgICAib3JkZXIiOiAyCisgICAgICAgICAgICB9LAor
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICJyZXBvc2l0b3J5IjogIk9TWCIsCisgICAg
ICAgICAgICAgICAgInJldmlzaW9uIjogIjE2QTMyMyIsCisgICAgICAgICAgICAgICAgIm9yZGVy
IjogMQorICAgICAgICAgICAgfQorICAgICAgICBdCisgICAgfQorCiAgICAgY29uc3Qgbm90WWV0
UmVwb3J0ZWRDb21taXQgPSB7CiAgICAgICAgIHJldmlzaW9uOiAnMjEwOTUxJywKICAgICAgICAg
dGltZTogJzIwMTctMDEtMjBUMDM6NTY6MjAuMDQ1WicKQEAgLTk2LDYgKzEzMywyNiBAQCBkZXNj
cmliZSgiL2FwaS9jb21taXRzLyIsICgpID0+IHsKICAgICAgICAgICAgICAgICBhc3NlcnQuZXF1
YWwoY29tbWl0c1syXVsncHJldmlvdXNDb21taXQnXSwgY29tbWl0c1sxXVsnaWQnXSk7CiAgICAg
ICAgICAgICB9KTsKICAgICAgICAgfSk7CisKKyAgICAgICAgaXQoInNob3VsZCByZXR1cm4gdGhl
IGxpc3Qgb2Ygb3JkZXJlZCBjb21taXRzIGZvciBhIGdpdmVuIHJlcG9zaXRvcnkiLCAoKSA9PiB7
CisgICAgICAgICAgICByZXR1cm4gYWRkU2xhdmVGb3JSZXBvcnQoc3VidmVyc2lvbkNvbW1pdHMp
LnRoZW4oKCkgPT4geworICAgICAgICAgICAgICAgIHJldHVybiBUZXN0U2VydmVyLnJlbW90ZUFQ
SSgpLnBvc3RKU09OKCcvYXBpL3JlcG9ydC1jb21taXRzLycsIHN5c3RlbVZlcnNpb25Db21taXRz
KTsKKyAgICAgICAgICAgIH0pLnRoZW4oZnVuY3Rpb24gKHJlc3BvbnNlKSB7CisgICAgICAgICAg
ICAgICAgYXNzZXJ0LmVxdWFsKHJlc3BvbnNlWydzdGF0dXMnXSwgJ09LJyk7CisgICAgICAgICAg
ICAgICAgcmV0dXJuIFRlc3RTZXJ2ZXIucmVtb3RlQVBJKCkuZ2V0SlNPTignL2FwaS9jb21taXRz
L09TWC8nKTsKKyAgICAgICAgICAgIH0pLnRoZW4oZnVuY3Rpb24gKHJlc3VsdCkgeworICAgICAg
ICAgICAgICAgIGFzc2VydC5lcXVhbChyZXN1bHRbJ3N0YXR1cyddLCAnT0snKTsKKyAgICAgICAg
ICAgICAgICBjb25zdCBjb21taXRzID0gcmVzdWx0Wydjb21taXRzJ107CisgICAgICAgICAgICAg
ICAgY29uc3Qgc3VibWl0dGVkQ29tbWl0cyA9IHN5c3RlbVZlcnNpb25Db21taXRzWydjb21taXRz
J107CisgICAgICAgICAgICAgICAgYXNzZXJ0LmVxdWFsKGNvbW1pdHMubGVuZ3RoLCBzdWJtaXR0
ZWRDb21taXRzLmxlbmd0aCk7CisgICAgICAgICAgICAgICAgYXNzZXJ0LmVxdWFsKGNvbW1pdHNb
MF1bJ3JldmlzaW9uJ10sIHN1Ym1pdHRlZENvbW1pdHNbNV1bJ3JldmlzaW9uJ10pOworICAgICAg
ICAgICAgICAgIGFzc2VydC5lcXVhbChjb21taXRzWzFdWydyZXZpc2lvbiddLCBzdWJtaXR0ZWRD
b21taXRzWzRdWydyZXZpc2lvbiddKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQuZXF1YWwoY29t
bWl0c1syXVsncmV2aXNpb24nXSwgc3VibWl0dGVkQ29tbWl0c1szXVsncmV2aXNpb24nXSk7Cisg
ICAgICAgICAgICAgICAgYXNzZXJ0LmVxdWFsKGNvbW1pdHNbM11bJ3JldmlzaW9uJ10sIHN1Ym1p
dHRlZENvbW1pdHNbMl1bJ3JldmlzaW9uJ10pOworICAgICAgICAgICAgICAgIGFzc2VydC5lcXVh
bChjb21taXRzWzRdWydyZXZpc2lvbiddLCBzdWJtaXR0ZWRDb21taXRzWzFdWydyZXZpc2lvbidd
KTsKKyAgICAgICAgICAgICAgICBhc3NlcnQuZXF1YWwoY29tbWl0c1s1XVsncmV2aXNpb24nXSwg
c3VibWl0dGVkQ29tbWl0c1swXVsncmV2aXNpb24nXSk7CisgICAgICAgICAgICB9KTsKKyAgICAg
ICAgfSk7CiAgICAgfSk7CiAKICAgICBkZXNjcmliZSgnL2FwaS9jb21taXRzLzxyZXBvc2l0b3J5
Pi9vbGRlc3QnLCAoKSA9PiB7CkBAIC0xMjYsNiArMTgzLDE5IEBAIGRlc2NyaWJlKCIvYXBpL2Nv
bW1pdHMvIiwgKCkgPT4gewogICAgICAgICAgICAgICAgIGFzc2VydENvbW1pdElzU2FtZUFzT25l
U3VibWl0dGVkKHJlc3VsdFsnY29tbWl0cyddWzBdLCBzdWJ2ZXJzaW9uQ29tbWl0c1snY29tbWl0
cyddWzBdKTsKICAgICAgICAgICAgIH0pOwogICAgICAgICB9KTsKKworICAgICAgICBpdCgic2hv
dWxkIHJldHVybiB0aGUgb2xkZXN0IGNvbW1pdCBiYXNlZCBvbiAnY29tbWl0X29yZGVyJyB3aGVu
ICdjb21taXRfdGltZScgaXMgbWlzc2luZyIsICgpID0+IHsKKyAgICAgICAgICAgIGNvbnN0IHJl
bW90ZSA9IFRlc3RTZXJ2ZXIucmVtb3RlQVBJKCk7CisgICAgICAgICAgICByZXR1cm4gYWRkU2xh
dmVGb3JSZXBvcnQoc3lzdGVtVmVyc2lvbkNvbW1pdHMpLnRoZW4oKCkgPT4geworICAgICAgICAg
ICAgICAgIHJldHVybiByZW1vdGUucG9zdEpTT05XaXRoU3RhdHVzKCcvYXBpL3JlcG9ydC1jb21t
aXRzLycsIHN5c3RlbVZlcnNpb25Db21taXRzKTsKKyAgICAgICAgICAgIH0pLnRoZW4oKCkgPT4g
eworICAgICAgICAgICAgICAgIHJldHVybiByZW1vdGUuZ2V0SlNPTignL2FwaS9jb21taXRzL09T
WC9vbGRlc3QnKTsKKyAgICAgICAgICAgIH0pLnRoZW4oZnVuY3Rpb24gKHJlc3VsdCkgeworICAg
ICAgICAgICAgICAgIGFzc2VydC5lcXVhbChyZXN1bHRbJ3N0YXR1cyddLCAnT0snKTsKKyAgICAg
ICAgICAgICAgICBhc3NlcnQuZXF1YWwocmVzdWx0Wydjb21taXRzJ10ubGVuZ3RoLCAxKTsKKyAg
ICAgICAgICAgICAgICBhc3NlcnQuZXF1YWwocmVzdWx0Wydjb21taXRzJ11bMF1bJ3JldmlzaW9u
J10sIHN5c3RlbVZlcnNpb25Db21taXRzWydjb21taXRzJ11bNV1bJ3JldmlzaW9uJ10pOworICAg
ICAgICAgICAgfSk7CisgICAgICAgIH0pOwogICAgIH0pOwogCiAgICAgZGVzY3JpYmUoJy9hcGkv
Y29tbWl0cy88cmVwb3NpdG9yeT4vbGF0ZXN0JywgKCkgPT4gewpAQCAtMTU2LDYgKzIyNiwxOSBA
QCBkZXNjcmliZSgiL2FwaS9jb21taXRzLyIsICgpID0+IHsKICAgICAgICAgICAgICAgICBhc3Nl
cnRDb21taXRJc1NhbWVBc09uZVN1Ym1pdHRlZChyZXN1bHRbJ2NvbW1pdHMnXVswXSwgc3VidmVy
c2lvbkNvbW1pdHNbJ2NvbW1pdHMnXS5zbGljZSgpLnBvcCgpKTsKICAgICAgICAgICAgIH0pOwog
ICAgICAgICB9KTsKKworICAgICAgICBpdCgic2hvdWxkIHJldHVybiB0aGUgbGF0ZXN0IGNvbW1p
dCBiYXNlZCBvbiAnY29tbWl0X29yZGVyJyB3aGVuICdjb21taXRfdGltZScgaXMgbWlzc2luZyIs
ICgpID0+IHsKKyAgICAgICAgICAgIGNvbnN0IHJlbW90ZSA9IFRlc3RTZXJ2ZXIucmVtb3RlQVBJ
KCk7CisgICAgICAgICAgICByZXR1cm4gYWRkU2xhdmVGb3JSZXBvcnQoc3lzdGVtVmVyc2lvbkNv
bW1pdHMpLnRoZW4oKCkgPT4geworICAgICAgICAgICAgICAgIHJldHVybiByZW1vdGUucG9zdEpT
T05XaXRoU3RhdHVzKCcvYXBpL3JlcG9ydC1jb21taXRzLycsIHN5c3RlbVZlcnNpb25Db21taXRz
KTsKKyAgICAgICAgICAgIH0pLnRoZW4oKCkgPT4geworICAgICAgICAgICAgICAgIHJldHVybiBy
ZW1vdGUuZ2V0SlNPTignL2FwaS9jb21taXRzL09TWC9sYXRlc3QnKTsKKyAgICAgICAgICAgIH0p
LnRoZW4oZnVuY3Rpb24gKHJlc3VsdCkgeworICAgICAgICAgICAgICAgIGFzc2VydC5lcXVhbChy
ZXN1bHRbJ3N0YXR1cyddLCAnT0snKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQuZXF1YWwocmVz
dWx0Wydjb21taXRzJ10ubGVuZ3RoLCAxKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQuZXF1YWwo
cmVzdWx0Wydjb21taXRzJ11bMF1bJ3JldmlzaW9uJ10sIHN5c3RlbVZlcnNpb25Db21taXRzWydj
b21taXRzJ11bMF1bJ3JldmlzaW9uJ10pOworICAgICAgICAgICAgfSk7CisgICAgICAgIH0pOwog
ICAgIH0pOwogCiAgICAgZGVzY3JpYmUoJy9hcGkvY29tbWl0cy88cmVwb3NpdG9yeT4vbGFzdC1y
ZXBvcnRlZCcsICgpID0+IHsKQEAgLTIwNCw2ICsyODcsMTkgQEAgZGVzY3JpYmUoIi9hcGkvY29t
bWl0cy8iLCAoKSA9PiB7CiAgICAgICAgICAgICAgICAgYXNzZXJ0Q29tbWl0SXNTYW1lQXNPbmVT
dWJtaXR0ZWQocmVzdWx0Wydjb21taXRzJ11bMF0sIHN1YnZlcnNpb25Db21taXRzWydjb21taXRz
J10uc2xpY2UoKS5wb3AoKSk7CiAgICAgICAgICAgICB9KTsKICAgICAgICAgfSk7CisKKyAgICAg
ICAgaXQoInNob3VsZCByZXR1cm4gdGhlIGxhc3QgcmVwb3J0ZWQgY29tbWl0IGJhc2VkIG9uICdj
b21taXRfb3JkZXInIHdoZW4gJ2NvbW1pdF90aW1lJyBpcyBtaXNzaW5nIiwgKCkgPT4geworICAg
ICAgICAgICAgY29uc3QgcmVtb3RlID0gVGVzdFNlcnZlci5yZW1vdGVBUEkoKTsKKyAgICAgICAg
ICAgIHJldHVybiBhZGRTbGF2ZUZvclJlcG9ydChzeXN0ZW1WZXJzaW9uQ29tbWl0cykudGhlbigo
KSA9PiB7CisgICAgICAgICAgICAgICAgcmV0dXJuIHJlbW90ZS5wb3N0SlNPTldpdGhTdGF0dXMo
Jy9hcGkvcmVwb3J0LWNvbW1pdHMvJywgc3lzdGVtVmVyc2lvbkNvbW1pdHMpOworICAgICAgICAg
ICAgfSkudGhlbigoKSA9PiB7CisgICAgICAgICAgICAgICAgcmV0dXJuIHJlbW90ZS5nZXRKU09O
KCcvYXBpL2NvbW1pdHMvT1NYL2xhc3QtcmVwb3J0ZWQnKTsKKyAgICAgICAgICAgIH0pLnRoZW4o
ZnVuY3Rpb24gKHJlc3VsdCkgeworICAgICAgICAgICAgICAgIGFzc2VydC5lcXVhbChyZXN1bHRb
J3N0YXR1cyddLCAnT0snKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQuZXF1YWwocmVzdWx0Wydj
b21taXRzJ10ubGVuZ3RoLCAxKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQuZXF1YWwocmVzdWx0
Wydjb21taXRzJ11bMF1bJ3JldmlzaW9uJ10sIHN5c3RlbVZlcnNpb25Db21taXRzWydjb21taXRz
J11bMF1bJ3JldmlzaW9uJ10pOworICAgICAgICAgICAgfSk7CisgICAgICAgIH0pOwogICAgIH0p
OwogCiAgICAgZGVzY3JpYmUoJy9hcGkvY29tbWl0cy88cmVwb3NpdG9yeT4vPGNvbW1pdD4nLCAo
KSA9PiB7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>