<?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>26914</bug_id>
          
          <creation_ts>2009-07-01 19:13:21 -0700</creation_ts>
          <short_desc>bugzilla-tool fails for SVN users</short_desc>
          <delta_ts>2009-07-02 00:21:11 -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>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.5</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 name="Eric Seidel (no email)">eric</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>aroben</cc>
    
    <cc>levin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>129445</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-07-01 19:13:21 -0700</bug_when>
    <thetext>bugzilla-tool fails for SVN users

svn is dumb:
svn ci -F -
svn: Reading from stdin is disallowed

Earlier versions of svn have some message about -F - being broken, thus disabled. :)  Now they&apos;ve just disallowed it.  Sigh.

Either we could write out the message to a file, or we could pass it via -m.  If we pass it via -m we need to not use shell=True.  Since Mark would like us to move off of shell=True anyway, I&quot;ll do that.

The first successful commit with this fix:
http://trac.webkit.org/changeset/45463
(Even though the author of that patch had changed NOBODY(OOPS!) to &quot;NOBODY&quot; so my reviewer update code failed to update the reviewer. :(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>129446</commentid>
    <comment_count>1</comment_count>
      <attachid>32168</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-07-01 19:17:07 -0700</bug_when>
    <thetext>Created attachment 32168
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>129447</commentid>
    <comment_count>2</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2009-07-01 19:20:56 -0700</bug_when>
    <thetext>STOP IT.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>129452</commentid>
    <comment_count>3</comment_count>
      <attachid>32168</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-07-01 21:41:19 -0700</bug_when>
    <thetext>Comment on attachment 32168
patch

I&apos;m no python expert, but this looks reasonable to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>129456</commentid>
    <comment_count>4</comment_count>
    <who name="David Levin">levin</who>
    <bug_when>2009-07-01 22:01:37 -0700</bug_when>
    <thetext>I&apos;ll let Adam&apos;s r+ stand, but here are some comments to consider:

&gt; diff --git a/WebKitTools/Scripts/modules/scm.py b/WebKitTools/Scripts/modules/scm.py
&gt;  # All git-specific logic should go here.
&gt; @@ -224,51 +234,56 @@ class Git(SCM):
&gt; +    @staticmethod
&gt; +    def commit_success_regexp():
&gt; +        return &quot;^Committed r(?P&lt;svn_revision&gt;\d+)\.$&quot;

This shouldn&apos;t have a \. in it.

Here&apos;s a sample git svn dcommit message:

Committing to http://svn.webkit.org/repository/webkit/trunk ...
	M	WebCore/ChangeLog
...
Committed r45448
	M	WebCore/ChangeLog
...
r45448 = 97e3c9608ffcf1f67fe127a738e043e2db154d7e (trunk)


&gt;      def files_changed_summary_for_commit(self, commit_id):
&gt; -        return self.run_command(&quot;git diff-tree --shortstat --no-commit-id &quot; + commit_id)
&gt; +        return self.run_command([&apos;git&apos;, &apos;diff-tree&apos;, &apos;--short-stat&apos;, &apos;--no-commit-id&apos;, commit_id])

Why did the parameter change to from &quot;--shortstat&quot; to &quot;--short-stat&quot;?  (I didn&apos;t see --short-stat listed as a valid option for &quot;git diff-tree&quot;.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>129463</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-07-01 22:57:12 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; I&apos;ll let Adam&apos;s r+ stand, but here are some comments to consider:

Thank you for the very careful review.  I really really really need testing for this script.  I&apos;ve filed bug 26916 about that.

I&apos;ve fixed both of the issues you mentioned.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>129470</commentid>
    <comment_count>6</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-07-01 23:54:44 -0700</bug_when>
    <thetext>Committing to http://svn.webkit.org/repository/webkit/trunk ...
	M	WebKitTools/ChangeLog
	M	WebKitTools/Scripts/bugzilla-tool
	M	WebKitTools/Scripts/modules/scm.py
Committed r45469
	M	WebCore/dom/MessageChannel.cpp
	M	WebCore/dom/MessagePortChannel.cpp
	M	WebCore/dom/default/PlatformMessagePortChannel.cpp
	M	WebCore/dom/MessagePortChannel.h
	M	WebCore/ChangeLog
r45467 = a08d526b1bd9d60aa510e837f37ef18283db029a (trunk)
	M	WebCore/ChangeLog
	M	WebCore/rendering/RenderLayerBacking.cpp
	A	LayoutTests/platform/mac/compositing/geometry/root-layer-update-expected.png
	A	LayoutTests/platform/mac/compositing/geometry/root-layer-update-expected.txt
	A	LayoutTests/platform/mac/compositing/geometry/root-layer-update-expected.checksum
	M	LayoutTests/ChangeLog
	A	LayoutTests/compositing/geometry/root-layer-update.html
r45468 = 25496daa3193049bc58b8c6255dbdba7af72f00a (trunk)
	M	WebKitTools/ChangeLog
	M	WebKitTools/Scripts/modules/scm.py
	M	WebKitTools/Scripts/bugzilla-tool
r45469 = 21a28c8eebc35fcfe1b6453a264f3e208128e89c (trunk)
First, rewinding head to replay your work on top of it...
Nothing to do.
http://trac.webkit.org/changeset/45469</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>129472</commentid>
    <comment_count>7</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-07-02 00:21:11 -0700</bug_when>
    <thetext>Sigh.  I need to teach bugzilla-tool how to strip excess junk from the commit message.

https://bugs.webkit.org/show_bug.cgi?id=26920

Sorry. :(</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>32168</attachid>
            <date>2009-07-01 19:17:07 -0700</date>
            <delta_ts>2009-07-01 21:41:19 -0700</delta_ts>
            <desc>patch</desc>
            <filename>bugzilla_requires_a_filename.patch</filename>
            <type>text/plain</type>
            <size>10968</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCA3NjE5ZjkxLi5lYTY0NWVlIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjMgQEAKIDIwMDktMDct
MDEgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgogCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGJ1Z3ppbGxhLXRvb2wgZmFpbHMgZm9yIFNWTiB1
c2VycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjY5
MTQKKworICAgICAgICBUbyBmaXggdGhpcyBJIG1vdmVkIHN2biBmcm9tIC1GIC0gdG8gdXNpbmcg
LW0KKyAgICAgICAgSW4gb3JkZXIgZm9yIC1tIHRvIHdvcmsgSSBoYWQgdG8gbW92ZSB1cyBvZmYg
b2Ygc2hlbGw9VHJ1ZQorICAgICAgICBUbyBtb3ZlIG9mZiBvZiBzaGVsbD1UcnVlIGFsbCBjYWxs
IHNpdGVzIGZvciBydW5fY29tbWFuZAorICAgICAgICB3aGljaCB0YWtlIGFyZ3MsIG5lZWQgdG8g
cGFzcyB0aGVpciBhcmdzIGFzIGFuIGxpc3QgaW5zdGVhZCBvZiBhIHN0cmluZy4KKworICAgICAg
ICBJbiBvcmRlciBmb3IgdGhlIGZpbmFsIGJ1ZyB1cGRhdGUgdG8gd29yayBjb3JyZWN0bHksIEkg
aGFkIHRvCisgICAgICAgIGFic3RyYWN0IHRoZSB3YXkgdGhhdCB3ZSBwYXJzZSBvdXQgcmV2aXNp
b24gbnVtYmVycyBmcm9tIHRoZSBjb21taXQgdGV4dC4KKworICAgICAgICAqIFNjcmlwdHMvYnVn
emlsbGEtdG9vbDoKKyAgICAgICAgKiBTY3JpcHRzL21vZHVsZXMvc2NtLnB5OgorCisyMDA5LTA3
LTAxICBFcmljIFNlaWRlbCAgPGVyaWNAd2Via2l0Lm9yZz4KKwogICAgICAgICBSZXZpZXdlZCBi
eSBBZGFtIFJvYmVuLgogCiAgICAgICAgIHByZXBhcmUtQ2hhbmdlTG9nIHNob3VsZCBmYWlsIHdo
ZW4gRU1BSUxfQUREUkVTUyBvciBSRUFMX05BTUUgYXJlIG1pc3Npbmc6CmRpZmYgLS1naXQgYS9X
ZWJLaXRUb29scy9TY3JpcHRzL2J1Z3ppbGxhLXRvb2wgYi9XZWJLaXRUb29scy9TY3JpcHRzL2J1
Z3ppbGxhLXRvb2wKaW5kZXggNTE5ZTQ5OC4uYmZkNWJiYSAxMDA3NTUKLS0tIGEvV2ViS2l0VG9v
bHMvU2NyaXB0cy9idWd6aWxsYS10b29sCisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvYnVnemls
bGEtdG9vbApAQCAtMjA1LDE4ICsyMDUsMTEgQEAgY2xhc3MgQXBwbHlQYXRjaGVzRnJvbUJ1ZyhD
b21tYW5kKToKICAgICAgICAgCiAgICAgICAgIHNlbGYuYXBwbHlfcGF0Y2hlcyhwYXRjaGVzLCB0
b29sLnNjbSgpLCBvcHRpb25zLmxvY2FsX2NvbW1pdCkKIAotZGVmIGJ1Z19jb21tZW50X2Zyb21f
Y29tbWl0X3RleHQoY29tbWl0X3RleHQpOgotICAgIGNvbW1lbnRfbGluZXMgPSBbXQotICAgIGNv
bW1pdF9saW5lcyA9IGNvbW1pdF90ZXh0LnNwbGl0bGluZXMoKQotICAgIGZvciBsaW5lIGluIGNv
bW1pdF9saW5lczoKLSAgICAgICAgY29tbWVudF9saW5lcy5hcHBlbmQobGluZSkKLSAgICAgICAg
bWF0Y2ggPSByZS5tYXRjaCgiXkNvbW1pdHRlZCByKFxkKykkIiwgbGluZSkKLSAgICAgICAgaWYg
bWF0Y2g6Ci0gICAgICAgICAgICByZXZpc2lvbiA9IG1hdGNoLmdyb3VwKDEpCi0gICAgICAgICAg
ICBjb21tZW50X2xpbmVzLmFwcGVuZCgiaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQv
IiArIHJldmlzaW9uKQotICAgICAgICAgICAgYnJlYWsKLSAgICByZXR1cm4gIlxuIi5qb2luKGNv
bW1lbnRfbGluZXMpCi0KK2RlZiBidWdfY29tbWVudF9mcm9tX2NvbW1pdF90ZXh0KHNjbSwgY29t
bWl0X3RleHQpOgorICAgIG1hdGNoID0gcmUuc2VhcmNoKHNjbS5jb21taXRfc3VjY2Vzc19yZWdl
eHAoKSwgY29tbWl0X3RleHQsIHJlLk1VTFRJTElORSkKKyAgICBzdm5fcmV2aXNpb24gPSBtYXRj
aC5ncm91cCgnc3ZuX3JldmlzaW9uJykKKyAgICBjb21taXRfdGV4dCArPSAoIlxuaHR0cDovL3Ry
YWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvJXMiICUgc3ZuX3JldmlzaW9uKQorICAgIHJldHVybiBj
b21taXRfdGV4dAogCiBjbGFzcyBMYW5kQW5kVXBkYXRlQnVnKENvbW1hbmQpOgogICAgIGRlZiBf
X2luaXRfXyhzZWxmKToKQEAgLTMxNyw3ICszMTAsNyBAQCBjbGFzcyBMYW5kUGF0Y2hlc0Zyb21C
dWdzKENvbW1hbmQpOgogICAgICAgICAgICAgICAgIGNscy5ydW5fd2Via2l0X3Rlc3RzKCkKICAg
ICAgICAgY29tbWl0X21lc3NhZ2UgPSBjb21taXRfbWVzc2FnZV9mb3JfdGhpc19jb21taXQoc2Nt
KQogICAgICAgICBjb21taXRfbG9nID0gc2NtLmNvbW1pdF93aXRoX21lc3NhZ2UoY29tbWl0X21l
c3NhZ2UpCi0gICAgICAgIHJldHVybiBidWdfY29tbWVudF9mcm9tX2NvbW1pdF90ZXh0KGNvbW1p
dF9sb2cpCisgICAgICAgIHJldHVybiBidWdfY29tbWVudF9mcm9tX2NvbW1pdF90ZXh0KHNjbSwg
Y29tbWl0X2xvZykKIAogICAgIEBjbGFzc21ldGhvZAogICAgIGRlZiBsYW5kX3BhdGNoZXMoY2xz
LCBidWdfaWQsIHBhdGNoZXMsIG9wdGlvbnMsIHRvb2wpOgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9v
bHMvU2NyaXB0cy9tb2R1bGVzL3NjbS5weSBiL1dlYktpdFRvb2xzL1NjcmlwdHMvbW9kdWxlcy9z
Y20ucHkKaW5kZXggZDliYjJmMy4uMTEzZWU4NyAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvU2Ny
aXB0cy9tb2R1bGVzL3NjbS5weQorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL21vZHVsZXMvc2Nt
LnB5CkBAIC01OSw5ICs1OSw5IEBAIGNsYXNzIFNDTToKICAgICAgICAgc2VsZi5kcnlydW4gPSBk
cnlydW4KIAogICAgIEBzdGF0aWNtZXRob2QKLSAgICBkZWYgcnVuX2NvbW1hbmQoY29tbWFuZCwg
Y3dkPU5vbmUsIGlucHV0PU5vbmUsIHJhaXNlX29uX2ZhaWx1cmU9VHJ1ZSwgcmV0dXJuX2V4aXRf
Y29kZT1GYWxzZSk6CisgICAgZGVmIHJ1bl9jb21tYW5kKGFyZ3MsIGN3ZD1Ob25lLCBpbnB1dD1O
b25lLCByYWlzZV9vbl9mYWlsdXJlPVRydWUsIHJldHVybl9leGl0X2NvZGU9RmFsc2UpOgogICAg
ICAgICBzdGRpbiA9IHN1YnByb2Nlc3MuUElQRSBpZiBpbnB1dCBlbHNlIE5vbmUKLSAgICAgICAg
cHJvY2VzcyA9IHN1YnByb2Nlc3MuUG9wZW4oY29tbWFuZCwgc3Rkb3V0PXN1YnByb2Nlc3MuUElQ
RSwgc3RkaW49c3RkaW4sIHNoZWxsPVRydWUsIGN3ZD1jd2QpCisgICAgICAgIHByb2Nlc3MgPSBz
dWJwcm9jZXNzLlBvcGVuKGFyZ3MsIHN0ZG91dD1zdWJwcm9jZXNzLlBJUEUsIHN0ZGluPXN0ZGlu
LCBjd2Q9Y3dkKQogICAgICAgICBvdXRwdXQgPSBwcm9jZXNzLmNvbW11bmljYXRlKGlucHV0KVsw
XS5yc3RyaXAoKQogICAgICAgICBleGl0X2NvZGUgPSBwcm9jZXNzLndhaXQoKQogICAgICAgICBp
ZiByYWlzZV9vbl9mYWlsdXJlIGFuZCBleGl0X2NvZGU6CkBAIC0xMjAsNiArMTIwLDEwIEBAIGNs
YXNzIFNDTToKICAgICBkZWYgZmluZF9jaGVja291dF9yb290KHBhdGgpOgogICAgICAgICByYWlz
ZSBOb3RJbXBsZW1lbnRlZEVycm9yLCAic3ViY2xhc3NlcyBtdXN0IGltcGxlbWVudCIKIAorICAg
IEBzdGF0aWNtZXRob2QKKyAgICBkZWYgY29tbWl0X3N1Y2Nlc3NfcmVnZXhwKCk6CisgICAgICAg
IHJhaXNlIE5vdEltcGxlbWVudGVkRXJyb3IsICJzdWJjbGFzc2VzIG11c3QgaW1wbGVtZW50Igor
CiAgICAgZGVmIHdvcmtpbmdfZGlyZWN0b3J5X2lzX2NsZWFuKHNlbGYpOgogICAgICAgICByYWlz
ZSBOb3RJbXBsZW1lbnRlZEVycm9yLCAic3ViY2xhc3NlcyBtdXN0IGltcGxlbWVudCIKIApAQCAt
MTQ2LDcgKzE1MCw4IEBAIGNsYXNzIFNDTToKICAgICAKICAgICAjIFN1YmNsYXNzZXMgbXVzdCBp
bmRpY2F0ZSBpZiB0aGV5IHN1cHBvcnQgbG9jYWwgY29tbWl0cywKICAgICAjIGJ1dCB0aGUgU0NN
IGJhc2VjbGFzcyB3aWxsIG9ubHkgY2FsbCBsb2NhbF9jb21taXRzIG1ldGhvZHMgd2hlbiB0aGlz
IGlzIHRydWUuCi0gICAgZGVmIHN1cHBvcnRzX2xvY2FsX2NvbW1pdHMoc2VsZik6CisgICAgQHN0
YXRpY21ldGhvZAorICAgIGRlZiBzdXBwb3J0c19sb2NhbF9jb21taXRzKCk6CiAgICAgICAgIHJh
aXNlIE5vdEltcGxlbWVudGVkRXJyb3IsICJzdWJjbGFzc2VzIG11c3QgaW1wbGVtZW50IgogCiAg
ICAgZGVmIGNvbW1pdF9sb2NhbGx5X3dpdGhfbWVzc2FnZShzZWxmLCBtZXNzYWdlKToKQEAgLTE3
OCwyMyArMTgzLDI3IEBAIGNsYXNzIFNWTihTQ00pOgogICAgICAgICAgICAgaWYgbGFzdF9wYXRo
ID09IHBhdGg6CiAgICAgICAgICAgICAgICAgcmV0dXJuIE5vbmUKICAgICAKKyAgICBAc3RhdGlj
bWV0aG9kCisgICAgZGVmIGNvbW1pdF9zdWNjZXNzX3JlZ2V4cCgpOgorICAgICAgICByZXR1cm4g
Il5Db21taXR0ZWQgcmV2aXNpb24gKD9QPHN2bl9yZXZpc2lvbj5cZCspXC4kIgorICAgIAogICAg
IGRlZiBzdm5fdmVyc2lvbihzZWxmKToKICAgICAgICAgaWYgbm90IHNlbGYuY2FjaGVkX3ZlcnNp
b246Ci0gICAgICAgICAgICBzZWxmLmNhY2hlZF92ZXJzaW9uID0gc2VsZi5ydW5fY29tbWFuZCgi
c3ZuIC0tdmVyc2lvbiAtLXF1aWV0IikKKyAgICAgICAgICAgIHNlbGYuY2FjaGVkX3ZlcnNpb24g
PSBzZWxmLnJ1bl9jb21tYW5kKFsnc3ZuJywgJy0tdmVyc2lvbicsICctLXF1aWV0J10pCiAgICAg
ICAgIAogICAgICAgICByZXR1cm4gc2VsZi5jYWNoZWRfdmVyc2lvbgogCiAgICAgZGVmIHdvcmtp
bmdfZGlyZWN0b3J5X2lzX2NsZWFuKHNlbGYpOgotICAgICAgICByZXR1cm4gc2VsZi5ydW5fY29t
bWFuZCgic3ZuIGRpZmYiKSA9PSAiIgorICAgICAgICByZXR1cm4gc2VsZi5ydW5fY29tbWFuZChb
J3N2bicsICdkaWZmJ10pID09ICIiCiAKICAgICBkZWYgY2xlYW5fd29ya2luZ19kaXJlY3Rvcnko
c2VsZik6Ci0gICAgICAgIHNlbGYucnVuX2NvbW1hbmQoInN2biByZXZlcnQgLVIgLiIpCisgICAg
ICAgIHNlbGYucnVuX2NvbW1hbmQoWydzdm4nLCAncmV2ZXJ0JywgJy1SJywgJy4nXSkKIAogICAg
IGRlZiB1cGRhdGVfd2Via2l0KHNlbGYpOgogICAgICAgICBzZWxmLnJ1bl9jb21tYW5kKHNlbGYu
c2NyaXB0X3BhdGgoInVwZGF0ZS13ZWJraXQiKSkKIAogICAgIGRlZiBzdGF0dXNfY29tbWFuZChz
ZWxmKToKLSAgICAgICAgcmV0dXJuICdzdm4gc3RhdHVzJworICAgICAgICByZXR1cm4gWydzdm4n
LCAnc3RhdHVzJ10KIAogICAgIGRlZiBjaGFuZ2VkX2ZpbGVzKHNlbGYpOgogICAgICAgICBpZiBz
ZWxmLnN2bl92ZXJzaW9uKCkgPiAiMS42IjoKQEAgLTIwMyw3ICsyMTIsOCBAQCBjbGFzcyBTVk4o
U0NNKToKICAgICAgICAgICAgIHN0YXR1c19yZWdleHAgPSAiXig/UDxzdGF0dXM+W0FDRE1SXSku
ezV9ICg/UDxmaWxlbmFtZT4uKykkIgogICAgICAgICByZXR1cm4gc2VsZi5ydW5fc3RhdHVzX2Fu
ZF9leHRyYWN0X2ZpbGVuYW1lcyhzZWxmLnN0YXR1c19jb21tYW5kKCksIHN0YXR1c19yZWdleHAp
CiAKLSAgICBkZWYgc3VwcG9ydHNfbG9jYWxfY29tbWl0cyhzZWxmKToKKyAgICBAc3RhdGljbWV0
aG9kCisgICAgZGVmIHN1cHBvcnRzX2xvY2FsX2NvbW1pdHMoKToKICAgICAgICAgcmV0dXJuIEZh
bHNlCiAKICAgICBkZWYgZGlzcGxheV9uYW1lKHNlbGYpOgpAQCAtMjE1LDcgKzIyNSw3IEBAIGNs
YXNzIFNWTihTQ00pOgogICAgIGRlZiBjb21taXRfd2l0aF9tZXNzYWdlKHNlbGYsIG1lc3NhZ2Up
OgogICAgICAgICBpZiBzZWxmLmRyeXJ1bjoKICAgICAgICAgICAgIHJldHVybiAiRHJ5IHJ1biwg
bm8gcmVtb3RlIGNvbW1pdC4iCi0gICAgICAgIHJldHVybiBzZWxmLnJ1bl9jb21tYW5kKCdzdm4g
Y29tbWl0IC1GIC0nLCBpbnB1dD1tZXNzYWdlKQorICAgICAgICByZXR1cm4gc2VsZi5ydW5fY29t
bWFuZChbJ3N2bicsICdjb21taXQnLCAnLW0nLCBtZXNzYWdlXSkKIAogIyBBbGwgZ2l0LXNwZWNp
ZmljIGxvZ2ljIHNob3VsZCBnbyBoZXJlLgogY2xhc3MgR2l0KFNDTSk6CkBAIC0yMjQsNTEgKzIz
NCw1NiBAQCBjbGFzcyBHaXQoU0NNKToKICAgICAKICAgICBAY2xhc3NtZXRob2QKICAgICBkZWYg
aW5fd29ya2luZ19kaXJlY3RvcnkoY2xzLCBwYXRoKToKLSAgICAgICAgcmV0dXJuIGNscy5ydW5f
Y29tbWFuZCgiZ2l0IHJldi1wYXJzZSAtLWlzLWluc2lkZS13b3JrLXRyZWUgMj4mMSIsIGN3ZD1w
YXRoKSA9PSAidHJ1ZSIKKyAgICAgICAgcmV0dXJuIGNscy5ydW5fY29tbWFuZChbJ2dpdCcsICdy
ZXYtcGFyc2UnLCAnLS1pcy1pbnNpZGUtd29yay10cmVlJ10sIGN3ZD1wYXRoKSA9PSAidHJ1ZSIK
IAogICAgIEBjbGFzc21ldGhvZAogICAgIGRlZiBmaW5kX2NoZWNrb3V0X3Jvb3QoY2xzLCBwYXRo
KToKICAgICAgICAgIyAiZ2l0IHJldi1wYXJzZSAtLXNob3ctY2R1cCIgd291bGQgYmUgYW5vdGhl
ciB3YXkgdG8gZ2V0IHRvIHRoZSByb290Ci0gICAgICAgIChjaGVja291dF9yb290LCBkb3RfZ2l0
KSA9IG9zLnBhdGguc3BsaXQoY2xzLnJ1bl9jb21tYW5kKCJnaXQgcmV2LXBhcnNlIC0tZ2l0LWRp
ciIsIGN3ZD1wYXRoKSkKKyAgICAgICAgKGNoZWNrb3V0X3Jvb3QsIGRvdF9naXQpID0gb3MucGF0
aC5zcGxpdChjbHMucnVuX2NvbW1hbmQoWydnaXQnLCAncmV2LXBhcnNlJywgJy0tZ2l0LWRpcidd
LCBjd2Q9cGF0aCkpCiAgICAgICAgICMgSWYgd2Ugd2VyZSB1c2luZyAyLjYgIyBjaGVja291dF9y
b290ID0gb3MucGF0aC5yZWxwYXRoKGNoZWNrb3V0X3Jvb3QsIHBhdGgpCiAgICAgICAgIGlmIG5v
dCBvcy5wYXRoLmlzYWJzKGNoZWNrb3V0X3Jvb3QpOiAjIFNvbWV0aW1lcyBnaXQgcmV0dXJucyBy
ZWxhdGl2ZSBwYXRocwogICAgICAgICAgICAgY2hlY2tvdXRfcm9vdCA9IG9zLnBhdGguam9pbihw
YXRoLCBjaGVja291dF9yb290KQogICAgICAgICByZXR1cm4gY2hlY2tvdXRfcm9vdAogICAgIAor
ICAgIEBzdGF0aWNtZXRob2QKKyAgICBkZWYgY29tbWl0X3N1Y2Nlc3NfcmVnZXhwKCk6CisgICAg
ICAgIHJldHVybiAiXkNvbW1pdHRlZCByKD9QPHN2bl9yZXZpc2lvbj5cZCspXC4kIgorICAgIAog
ICAgIGRlZiBkaXNjYXJkX2xvY2FsX2NvbW1pdHMoc2VsZik6Ci0gICAgICAgIHNlbGYucnVuX2Nv
bW1hbmQoImdpdCByZXNldCAtLWhhcmQgdHJ1bmsiKQorICAgICAgICBzZWxmLnJ1bl9jb21tYW5k
KFsnZ2l0JywgJ3Jlc2V0JywgJy0taGFyZCcsICd0cnVuayddKQogICAgIAogICAgIGRlZiBsb2Nh
bF9jb21taXRzKHNlbGYpOgotICAgICAgICByZXR1cm4gc2VsZi5ydW5fY29tbWFuZCgiZ2l0IGxv
ZyAtLXByZXR0eT1vbmVsaW5lIGhlYWQuLi50cnVuayIpLnNwbGl0bGluZXMoKQotICAgIAorICAg
ICAgICByZXR1cm4gc2VsZi5ydW5fY29tbWFuZCgnZ2l0JywgJ2xvZycsICctLXByZXR0eT1vbmVs
aW5lJywgJ0hFQUQuLi50cnVuaycpLnNwbGl0bGluZXMoKQorCiAgICAgZGVmIHdvcmtpbmdfZGly
ZWN0b3J5X2lzX2NsZWFuKHNlbGYpOgotICAgICAgICByZXR1cm4gc2VsZi5ydW5fY29tbWFuZCgi
Z2l0IGRpZmYtaW5kZXggSEVBRCIpID09ICIiCisgICAgICAgIHJldHVybiBzZWxmLnJ1bl9jb21t
YW5kKFsnZ2l0JywgJ2RpZmYtaW5kZXgnLCAnSEVBRCddKSA9PSAiIgogICAgIAogICAgIGRlZiBj
bGVhbl93b3JraW5nX2RpcmVjdG9yeShzZWxmKToKICAgICAgICAgIyBDb3VsZCBydW4gZ2l0IGNs
ZWFuIGhlcmUgdG9vLCBidXQgdGhhdCB3b3VsZG4ndCBtYXRjaCB3b3JraW5nX2RpcmVjdG9yeV9p
c19jbGVhbgotICAgICAgICBzZWxmLnJ1bl9jb21tYW5kKCJnaXQgcmVzZXQgLS1oYXJkIEhFQUQi
KQorICAgICAgICBzZWxmLnJ1bl9jb21tYW5kKFsnZ2l0JywgJ3Jlc2V0JywgJy0taGFyZCcsICdI
RUFEJ10pCiAgICAgCiAgICAgZGVmIHVwZGF0ZV93ZWJraXQoc2VsZik6CiAgICAgICAgICMgRklY
TUU6IFNob3VsZCBwcm9iYWJseSBjYWxsIHVwZGF0ZS13ZWJraXQsIG5vPwogICAgICAgICBsb2co
IlVwZGF0aW5nIHdvcmtpbmcgZGlyZWN0b3J5IikKLSAgICAgICAgc2VsZi5ydW5fY29tbWFuZCgi
Z2l0IHN2biByZWJhc2UiKQorICAgICAgICBzZWxmLnJ1bl9jb21tYW5kKFsnZ2l0JywgJ3N2bics
ICdyZWJhc2UnXSkKIAogICAgIGRlZiBzdGF0dXNfY29tbWFuZChzZWxmKToKLSAgICAgICAgcmV0
dXJuICdnaXQgc3RhdHVzJworICAgICAgICByZXR1cm4gWydnaXQnLCAnc3RhdHVzJ10KIAogICAg
IGRlZiBjaGFuZ2VkX2ZpbGVzKHNlbGYpOgogICAgICAgICBzdGF0dXNfY29tbWFuZCA9ICdnaXQg
ZGlmZiAtciAtLW5hbWUtc3RhdHVzIC1DIC1NIEhFQUQnCiAgICAgICAgIHN0YXR1c19yZWdleHAg
PSAnXig/UDxzdGF0dXM+W0FETV0pXHQoP1A8ZmlsZW5hbWU+LispJCcKICAgICAgICAgcmV0dXJu
IHNlbGYucnVuX3N0YXR1c19hbmRfZXh0cmFjdF9maWxlbmFtZXMoc3RhdHVzX2NvbW1hbmQsIHN0
YXR1c19yZWdleHApCiAgICAgCi0gICAgZGVmIHN1cHBvcnRzX2xvY2FsX2NvbW1pdHMoc2VsZik6
CisgICAgQHN0YXRpY21ldGhvZAorICAgIGRlZiBzdXBwb3J0c19sb2NhbF9jb21taXRzKCk6CiAg
ICAgICAgIHJldHVybiBUcnVlCiAKICAgICBkZWYgZGlzcGxheV9uYW1lKHNlbGYpOgogICAgICAg
ICByZXR1cm4gImdpdCIKIAogICAgIGRlZiBjcmVhdGVfcGF0Y2goc2VsZik6Ci0gICAgICAgIHJl
dHVybiBzZWxmLnJ1bl9jb21tYW5kKCJnaXQgZGlmZiBIRUFEIikKKyAgICAgICAgcmV0dXJuIHNl
bGYucnVuX2NvbW1hbmQoWydnaXQnLCAnZGlmZicsICdIRUFEJ10pCiAKICAgICBkZWYgY29tbWl0
X3dpdGhfbWVzc2FnZShzZWxmLCBtZXNzYWdlKToKICAgICAgICAgc2VsZi5jb21taXRfbG9jYWxs
eV93aXRoX21lc3NhZ2UobWVzc2FnZSkKQEAgLTI3NywzMSArMjkyLDI5IEBAIGNsYXNzIEdpdChT
Q00pOgogICAgICMgR2l0LXNwZWNpZmljIG1ldGhvZHM6CiAgICAgCiAgICAgZGVmIGNvbW1pdF9s
b2NhbGx5X3dpdGhfbWVzc2FnZShzZWxmLCBtZXNzYWdlKToKLSAgICAgICAgc2VsZi5ydW5fY29t
bWFuZCgnZ2l0IGNvbW1pdCAtYSAtRiAtJywgaW5wdXQ9bWVzc2FnZSkKKyAgICAgICAgc2VsZi5y
dW5fY29tbWFuZChbJ2dpdCcsICdjb21taXQnLCAnLS1hbGwnLCAnLUYnLCAnLSddLCBpbnB1dD1t
ZXNzYWdlKQogICAgICAgICAKICAgICBkZWYgcHVzaF9sb2NhbF9jb21taXRzX3RvX3NlcnZlcihz
ZWxmKToKICAgICAgICAgaWYgc2VsZi5kcnlydW46CiAgICAgICAgICAgICByZXR1cm4gIkRyeSBy
dW4sIG5vIHJlbW90ZSBjb21taXQuIgotICAgICAgICByZXR1cm4gc2VsZi5ydW5fY29tbWFuZCgn
Z2l0IHN2biBkY29tbWl0JykKKyAgICAgICAgcmV0dXJuIHNlbGYucnVuX2NvbW1hbmQoWydnaXQn
LCAnc3ZuJywgJ2Rjb21taXQnXSkKIAogICAgIGRlZiBjb21taXRfaWRzX2Zyb21fcmFuZ2VfYXJn
dW1lbnRzKHNlbGYsIGFyZ3MsIGNoZXJyeV9waWNrPUZhbHNlKToKICAgICAgICAgIyBGaXJzdCBn
ZXQgdGhlIGNvbW1pdC1pZHMgZm9yIHRoZSBwYXNzZWQgaW4gcmV2aXNpb25zLgotICAgICAgICBy
ZXZfcGFyc2VfYXJncyA9IFsnZ2l0JywgJ3Jldi1wYXJzZScsICctLXJldnMtb25seSddICsgYXJn
cwotICAgICAgICByZXZpc2lvbnMgPSBzZWxmLnJ1bl9jb21tYW5kKCIgIi5qb2luKHJldl9wYXJz
ZV9hcmdzKSkuc3BsaXRsaW5lcygpCi0gICAgICAgIAorICAgICAgICByZXZpc2lvbnMgPSBzZWxm
LnJ1bl9jb21tYW5kKFsnZ2l0JywgJ3Jldi1wYXJzZScsICctLXJldnMtb25seSddICsgYXJncyku
c3BsaXRsaW5lcygpCisKICAgICAgICAgaWYgY2hlcnJ5X3BpY2s6CiAgICAgICAgICAgICByZXR1
cm4gcmV2aXNpb25zCi0gICAgICAgIAorCiAgICAgICAgICMgSWYgd2UncmUgbm90IGNoZXJyeSBw
aWNraW5nIGFuZCB3ZXJlIG9ubHkgcGFzc2VkIG9uZSByZXZpc2lvbiwgYXNzdW1lICJecmV2aXNp
b24gaGVhZCIgYWthICJyZXZpc2lvbi4uaGVhZCIuCiAgICAgICAgIGlmIGxlbihyZXZpc2lvbnMp
IDwgMjoKICAgICAgICAgICAgIHJldmlzaW9uc1swXSA9ICJeIiArIHJldmlzaW9uc1swXQogICAg
ICAgICAgICAgcmV2aXNpb25zLmFwcGVuZCgiSEVBRCIpCi0gICAgICAgIAotICAgICAgICByZXZf
bGlzdF9hcmdzID0gWydnaXQnLCAncmV2LWxpc3QnXSArIHJldmlzaW9ucwotICAgICAgICByZXR1
cm4gc2VsZi5ydW5fY29tbWFuZCgiICIuam9pbihyZXZfbGlzdF9hcmdzKSkuc3BsaXRsaW5lcygp
CisKKyAgICAgICAgcmV0dXJuIHNlbGYucnVuX2NvbW1hbmQoWydnaXQnLCAncmV2LWxpc3QnXSAr
IHJldmlzaW9ucykuc3BsaXRsaW5lcygpCiAKICAgICBkZWYgY29tbWl0X21lc3NhZ2VfZm9yX2Nv
bW1pdChzZWxmLCBjb21taXRfaWQpOgotICAgICAgICBjb21taXRfbGluZXMgPSBzZWxmLnJ1bl9j
b21tYW5kKCJnaXQgY2F0LWZpbGUgY29tbWl0ICIgKyBjb21taXRfaWQpLnNwbGl0bGluZXMoKQor
ICAgICAgICBjb21taXRfbGluZXMgPSBzZWxmLnJ1bl9jb21tYW5kKFsnZ2l0JywgJ2NhdC1maWxl
JywgJ2NvbW1pdCcsIGNvbW1pdF9pZF0pLnNwbGl0bGluZXMoKQogCiAgICAgICAgICMgU2tpcCB0
aGUgZ2l0IGhlYWRlcnMuCiAgICAgICAgIGZpcnN0X2xpbmVfYWZ0ZXJfaGVhZGVycyA9IDAKQEAg
LTMxMSw4ICszMjQsNSBAQCBjbGFzcyBHaXQoU0NNKToKICAgICAgICAgICAgICAgICBicmVhawog
ICAgICAgICByZXR1cm4gIlxuIi5qb2luKGNvbW1pdF9saW5lc1tmaXJzdF9saW5lX2FmdGVyX2hl
YWRlcnM6XSkKIAotICAgIGRlZiBzaG93X2RpZmZfY29tbWFuZF9mb3JfY29tbWl0KHNlbGYsIGNv
bW1pdF9pZCk6Ci0gICAgICAgIHJldHVybiAiZ2l0IGRpZmYtdHJlZSAtcCAiICsgY29tbWl0X2lk
Ci0KICAgICBkZWYgZmlsZXNfY2hhbmdlZF9zdW1tYXJ5X2Zvcl9jb21taXQoc2VsZiwgY29tbWl0
X2lkKToKLSAgICAgICAgcmV0dXJuIHNlbGYucnVuX2NvbW1hbmQoImdpdCBkaWZmLXRyZWUgLS1z
aG9ydHN0YXQgLS1uby1jb21taXQtaWQgIiArIGNvbW1pdF9pZCkKKyAgICAgICAgcmV0dXJuIHNl
bGYucnVuX2NvbW1hbmQoWydnaXQnLCAnZGlmZi10cmVlJywgJy0tc2hvcnQtc3RhdCcsICctLW5v
LWNvbW1pdC1pZCcsIGNvbW1pdF9pZF0p
</data>
<flag name="review"
          id="16665"
          type_id="1"
          status="+"
          setter="abarth"
    />
          </attachment>
      

    </bug>

</bugzilla>