<?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>27082</bug_id>
          
          <creation_ts>2009-07-08 10:34:07 -0700</creation_ts>
          <short_desc>bugzilla-tool: Add --no-close switch to land-patches</short_desc>
          <delta_ts>2009-07-29 16:48:32 -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>Other</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="David Kilzer (:ddkilzer)">ddkilzer</reporter>
          <assigned_to name="David Kilzer (:ddkilzer)">ddkilzer</assigned_to>
          <cc>eric</cc>
    
    <cc>levin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>130455</commentid>
    <comment_count>0</comment_count>
      <attachid>32458</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-07-08 10:34:07 -0700</bug_when>
    <thetext>Created attachment 32458
Patch v1

Reviewed by NOBODY (OOPS!).

        * Scripts/bugzilla-tool:
        (LandPatchesFromBugs.__init__): Added --no-close switch.
        (LandPatchesFromBugs.land_patches): Don&apos;t close the bug if the
        --no-close switch was used.
---
 2 files changed, 15 insertions(+), 2 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>130456</commentid>
    <comment_count>1</comment_count>
      <attachid>32458</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2009-07-08 10:36:45 -0700</bug_when>
    <thetext>Comment on attachment 32458
Patch v1

rs=me -- I&apos;m not a total expert on this, but it looks fine</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>130461</commentid>
    <comment_count>2</comment_count>
      <attachid>32458</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-07-08 10:55:54 -0700</bug_when>
    <thetext>Comment on attachment 32458
Patch v1

Looks fine.  It should obsolete the one patch it landed instead of closing though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>130463</commentid>
    <comment_count>3</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-07-08 10:58:28 -0700</bug_when>
    <thetext>This current change will just cause it to leave the attachment r+&apos;d after landing the bug, and leave it open.  In the --no-close we can unconditionally obsolete first patch as we go, instead of trying to close the bug in that case.

                # If we&apos;re commiting more than one patch, update the bug as we go.
                if len(patches) &gt; 1:
                    tool.bugs.obsolete_attachment(patch[&apos;id&apos;], comment_text)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>130503</commentid>
    <comment_count>4</comment_count>
      <attachid>32458</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-07-08 14:10:51 -0700</bug_when>
    <thetext>Comment on attachment 32458
Patch v1

(In reply to comment #2)
&gt; (From update of attachment 32458 [details])
&gt; Looks fine.  It should obsolete the one patch it landed instead of closing
&gt; though.

The current practice is to clear the review flag, not obsolete the patch.   I&apos;ll make it do that instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>130506</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-07-08 14:15:37 -0700</bug_when>
    <thetext>Seems odd to not obsolete the patch as well.  But OK.  We should document these &quot;practices&quot; somewhere. ;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>130522</commentid>
    <comment_count>6</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-07-08 14:37:03 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Seems odd to not obsolete the patch as well.  But OK.  We should document these
&gt; &quot;practices&quot; somewhere. ;)

When you&apos;re done committing all the patches, you&apos;re left with a set of patches that are obsolete (which means they were superseded by another patch attached), and a list of patches that have been committed with their review flags cleared (and maybe the last one set to r+).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>130588</commentid>
    <comment_count>7</comment_count>
      <attachid>32495</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-07-08 18:12:06 -0700</bug_when>
    <thetext>Created attachment 32495
Patch v2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>130589</commentid>
    <comment_count>8</comment_count>
      <attachid>32495</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-07-08 18:14:04 -0700</bug_when>
    <thetext>Comment on attachment 32495
Patch v2

Changes since v1:

- Clear review+ flag on attachments after they&apos;ve landed if the --no-close switch is used so they won&apos;t show up in the commit queue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>131078</commentid>
    <comment_count>9</comment_count>
      <attachid>32495</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-07-10 22:54:38 -0700</bug_when>
    <thetext>Comment on attachment 32495
Patch v2

So I&apos;m confused by why we obsolete patches one at a time when landing them when there is more than one to land. But we don&apos;t obsolete them when landing with the --no-close option.

I guess I would prefer we always obsoleted the patch after landing.  But I think you and I have different personal preferences here. :)

Either way, we should make them consistent, no?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>131083</commentid>
    <comment_count>10</comment_count>
      <attachid>32495</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-07-10 23:10:15 -0700</bug_when>
    <thetext>Comment on attachment 32495
Patch v2

(In reply to comment #9)
&gt; (From update of attachment 32495 [details])
&gt; So I&apos;m confused by why we obsolete patches one at a time when landing them when
&gt; there is more than one to land. But we don&apos;t obsolete them when landing with
&gt; the --no-close option.
&gt; 
&gt; I guess I would prefer we always obsoleted the patch after landing.  But I
&gt; think you and I have different personal preferences here. :)
&gt; 
&gt; Either way, we should make them consistent, no?

My view of the world:

Obsolete patch:  A patch that has never and will never land.
Patch with cleared review flag:  A patch that has landed on a bug with more than one patch up for review (which must necessarily stay open until all patches have landed).

What&apos;s your view?

I&apos;ll make the change to be consistent in behavior and post another patch.  Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>131096</commentid>
    <comment_count>11</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-07-10 23:31:56 -0700</bug_when>
    <thetext>(In reply to comment #10)
&gt; My view of the world:
&gt; 
&gt; Obsolete patch:  A patch that has never and will never land.
&gt; Patch with cleared review flag:  A patch that has landed on a bug with more
&gt; than one patch up for review (which must necessarily stay open until all
&gt; patches have landed).
&gt; 
&gt; What&apos;s your view?

I guess &quot;obsolete&quot; to me means &quot;we&apos;re done with this&quot;, it &quot;no longer applies&quot;.  where as the non-obsolete stuff is stuff I have to take action with.  I think it would be a mixed of flagged, obsolete, and unflagged patches on a bug, the unflagged indicating that they had landed, the obsolete that they were bad/never landed.

But honestly I don&apos;t feel strongly about this in either case.  We can always change it later. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135638</commentid>
    <comment_count>12</comment_count>
      <attachid>33728</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-07-29 12:02:18 -0700</bug_when>
    <thetext>Created attachment 33728
Patch v3

Reviewed by NOBODY (OOPS!).

* Scripts/bugzilla-tool:
(LandPatchesFromBugs.__init__): Added --no-close switch.
(LandPatchesFromBugs.land_patches): Don&apos;t close the bug if the
--no-close switch was used, but call
Bugzilla.clear_attachment_review_flag() on the attachment so it
no longer shows up in the commit queue.  Also changed the
behavior when landing multiple patches from obsoleting patches
to clearing each patch&apos;s review flag.
* Scripts/modules/bugzilla.py:
(Bugzilla.clear_attachment_review_flag): Added.
---
 3 files changed, 38 insertions(+), 6 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135674</commentid>
    <comment_count>13</comment_count>
      <attachid>33728</attachid>
    <who name="David Levin">levin</who>
    <bug_when>2009-07-29 13:38:31 -0700</bug_when>
    <thetext>Comment on attachment 33728
Patch v3




&gt; diff --git a/WebKitTools/Scripts/bugzilla-tool b/WebKitTools/Scripts/bugzilla-tool


&gt; @@ -314,20 +315,21 @@ class LandPatchesFromBugs(Command):
&gt;      @classmethod
&gt;      def land_patches(cls, bug_id, patches, options, tool):
&gt;          try:
&gt; +            # Clear the review flag on each bug if we&apos;re not closing the bug or if there is more than one patch.

Consider:
 # Clear the review flag on patches when needed for adding the commit revision number and/or moving out of the commit queue.

&gt; +            should_clear_review_flag = not options.close_bug or len(patches) &gt; 1
...
&gt; +                if should_clear_review_flag:
&gt; +                    tool.bugs.clear_attachment_review_flag(patch[&apos;id&apos;])

Why isn&apos;t comment_text passed in?

I really like the practice of putting the revision # corresponding to the patch commitment in the bug.



&gt; diff --git a/WebKitTools/Scripts/modules/bugzilla.py b/WebKitTools/Scripts/modules/bugzilla.py
&gt; +    def clear_attachment_review_flag(self, attachment_id):
...
&gt; +        self.browser[&apos;comment&apos;] = &quot;Clearing review+ flag.&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135692</commentid>
    <comment_count>14</comment_count>
      <attachid>33744</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-07-29 14:44:47 -0700</bug_when>
    <thetext>Created attachment 33744
Patch v4</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135731</commentid>
    <comment_count>15</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-07-29 16:48:32 -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/bugzilla.py
Committed r46563
	M	WebKitTools/ChangeLog
	M	WebKitTools/Scripts/modules/bugzilla.py
	M	WebKitTools/Scripts/bugzilla-tool
r46563 = 5477449a50731e3e4b6637af4cd8943fe46cf5d9 (trunk)
No changes between current HEAD and refs/remotes/trunk
Resetting to the latest refs/remotes/trunk
http://trac.webkit.org/changeset/46563</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>32458</attachid>
            <date>2009-07-08 10:34:07 -0700</date>
            <delta_ts>2009-07-08 18:12:04 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>20090708103406.patch</filename>
            <type>text/plain</type>
            <size>2299</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBkZWM4MzUwLi5hYmJlZTRiIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMDktMDct
MDggIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KKworICAgICAgICBidWd6aWxs
YS10b29sOiBBZGQgLS1uby1jbG9zZSBzd2l0Y2ggdG8gbGFuZC1wYXRjaGVzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTY3JpcHRzL2J1Z3ppbGxh
LXRvb2w6CisgICAgICAgIChMYW5kUGF0Y2hlc0Zyb21CdWdzLl9faW5pdF9fKTogQWRkZWQgLS1u
by1jbG9zZSBzd2l0Y2guCisgICAgICAgIChMYW5kUGF0Y2hlc0Zyb21CdWdzLmxhbmRfcGF0Y2hl
cyk6IERvbid0IGNsb3NlIHRoZSBidWcgaWYgdGhlCisgICAgICAgIC0tbm8tY2xvc2Ugc3dpdGNo
IHdhcyB1c2VkLgorCiAyMDA5LTA3LTA3ICBCcmFkeSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNv
bT4KIAogICAgICAgICBUaWdlciBidWlsZCBmaXgsIHdvcmsgYXJvdW5kIG1pc3NpbmcgTlNTdHJp
bmcgQVBJLgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2NyaXB0cy9idWd6aWxsYS10b29sIGIv
V2ViS2l0VG9vbHMvU2NyaXB0cy9idWd6aWxsYS10b29sCmluZGV4IGJmZDViYmEuLjIxNWYwOWEg
MTAwNzU1Ci0tLSBhL1dlYktpdFRvb2xzL1NjcmlwdHMvYnVnemlsbGEtdG9vbAorKysgYi9XZWJL
aXRUb29scy9TY3JpcHRzL2J1Z3ppbGxhLXRvb2wKQEAgLTI3MCw2ICsyNzAsNyBAQCBjbGFzcyBM
YW5kUGF0Y2hlc0Zyb21CdWdzKENvbW1hbmQpOgogICAgICAgICBvcHRpb25zID0gWwogICAgICAg
ICAgICAgbWFrZV9vcHRpb24oIi0tZm9yY2UtY2xlYW4iLCBhY3Rpb249InN0b3JlX3RydWUiLCBk
ZXN0PSJmb3JjZV9jbGVhbiIsIGRlZmF1bHQ9RmFsc2UsIGhlbHA9IkNsZWFuIHdvcmtpbmcgZGly
ZWN0b3J5IGJlZm9yZSBhcHBseWluZyBwYXRjaGVzIChyZW1vdmVzIGxvY2FsIGNoYW5nZXMgYW5k
IGNvbW1pdHMpIiksCiAgICAgICAgICAgICBtYWtlX29wdGlvbigiLS1uby1jbGVhbiIsIGFjdGlv
bj0ic3RvcmVfZmFsc2UiLCBkZXN0PSJjbGVhbiIsIGRlZmF1bHQ9VHJ1ZSwgaGVscD0iRG9uJ3Qg
Y2hlY2sgaWYgdGhlIHdvcmtpbmcgZGlyZWN0b3J5IGlzIGNsZWFuIGJlZm9yZSBhcHBseWluZyBw
YXRjaGVzIiksCisgICAgICAgICAgICBtYWtlX29wdGlvbigiLS1uby1jbG9zZSIsIGFjdGlvbj0i
c3RvcmVfZmFsc2UiLCBkZXN0PSJjbG9zZV9idWciLCBkZWZhdWx0PVRydWUsIGhlbHA9IkxlYXZl
IGJ1ZyBvcGVuIGFmdGVyIGxhbmRpbmcuIiksCiAgICAgICAgICAgICBtYWtlX29wdGlvbigiLS1u
by1idWlsZCIsIGFjdGlvbj0ic3RvcmVfZmFsc2UiLCBkZXN0PSJidWlsZCIsIGRlZmF1bHQ9VHJ1
ZSwgaGVscD0iQ29tbWl0IHdpdGhvdXQgYnVpbGRpbmcgZmlyc3QsIGltcGxpZXMgLS1uby10ZXN0
LiIpLAogICAgICAgICAgICAgbWFrZV9vcHRpb24oIi0tbm8tdGVzdCIsIGFjdGlvbj0ic3RvcmVf
ZmFsc2UiLCBkZXN0PSJ0ZXN0IiwgZGVmYXVsdD1UcnVlLCBoZWxwPSJDb21taXQgd2l0aG91dCBy
dW5uaW5nIHJ1bi13ZWJraXQtdGVzdHMuIiksCiAgICAgICAgIF0KQEAgLTMyNiw5ICszMjcsMTAg
QEAgY2xhc3MgTGFuZFBhdGNoZXNGcm9tQnVncyhDb21tYW5kKToKICAgICAgICAgICAgICAgICAg
ICAgdG9vbC5idWdzLm9ic29sZXRlX2F0dGFjaG1lbnQocGF0Y2hbJ2lkJ10sIGNvbW1lbnRfdGV4
dCkKIAogICAgICAgICAgICAgaWYgbGVuKHBhdGNoZXMpID4gMToKLSAgICAgICAgICAgICAgICBj
b21tZW50X3RleHQgPSAiQWxsIHJldmlld2VkIHBhdGNoZXMgbGFuZGVkLCBjbG9zaW5nLiIKKyAg
ICAgICAgICAgICAgICBjb21tZW50X3RleHQgPSAiQWxsIHJldmlld2VkIHBhdGNoZXMgbGFuZGVk
LiIKIAotICAgICAgICAgICAgdG9vbC5idWdzLmNsb3NlX2J1Z19hc19maXhlZChidWdfaWQsIGNv
bW1lbnRfdGV4dCkKKyAgICAgICAgICAgIGlmIG9wdGlvbnMuY2xvc2VfYnVnOgorICAgICAgICAg
ICAgICAgIHRvb2wuYnVncy5jbG9zZV9idWdfYXNfZml4ZWQoYnVnX2lkLCBjb21tZW50X3RleHQp
CiAgICAgICAgIGV4Y2VwdCBTY3JpcHRFcnJvciwgZToKICAgICAgICAgICAgICMgV2Ugc2hvdWxk
IGFkZCBhIGNvbW1lbnQgdG8gdGhlIGJ1ZywgYW5kIHItIHRoZSBwYXRjaCBvbiBmYWlsdXJlCiAg
ICAgICAgICAgICBlcnJvcihlKQ==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>32495</attachid>
            <date>2009-07-08 18:12:06 -0700</date>
            <delta_ts>2009-07-29 12:02:15 -0700</delta_ts>
            <desc>Patch v2</desc>
            <filename>bug-27082-20090708181205.patch</filename>
            <type>text/plain</type>
            <size>3884</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBhYTg5NjU5Li40NGFkMTUzIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjIgQEAKIDIwMDktMDct
MDggIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAorICAgICAgICBCdWcgMjcw
ODI6IGJ1Z3ppbGxhLXRvb2w6IEFkZCAtLW5vLWNsb3NlIHN3aXRjaCB0byBsYW5kLXBhdGNoZXMK
KworICAgICAgICA8aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI3MDgy
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2Ny
aXB0cy9idWd6aWxsYS10b29sOgorICAgICAgICAoTGFuZFBhdGNoZXNGcm9tQnVncy5fX2luaXRf
Xyk6IEFkZGVkIC0tbm8tY2xvc2Ugc3dpdGNoLgorICAgICAgICAoTGFuZFBhdGNoZXNGcm9tQnVn
cy5sYW5kX3BhdGNoZXMpOiBEb24ndCBjbG9zZSB0aGUgYnVnIGlmIHRoZQorICAgICAgICAtLW5v
LWNsb3NlIHN3aXRjaCB3YXMgdXNlZCwgYnV0IGNhbGwKKyAgICAgICAgQnVnemlsbGEuY2xlYXJf
YXR0YWNobWVudF9yZXZpZXdfZmxhZygpIG9uIHRoZSBhdHRhY2htZW50IHNvIGl0CisgICAgICAg
IG5vIGxvbmdlciBzaG93cyB1cCBpbiB0aGUgY29tbWl0IHF1ZXVlLgorICAgICAgICAqIFNjcmlw
dHMvbW9kdWxlcy9idWd6aWxsYS5weToKKyAgICAgICAgKEJ1Z3ppbGxhLmNsZWFyX2F0dGFjaG1l
bnRfcmV2aWV3X2ZsYWcpOiBBZGRlZC4KKworMjAwOS0wNy0wOCAgRGF2aWQgS2lsemVyICA8ZGRr
aWx6ZXJAYXBwbGUuY29tPgorCiAgICAgICAgIEJ1ZyAyNzA4MzogYnVnemlsbGEucHk6IENsZWFu
IHVwIGJ1Z19zZXJ2ZXIgdXNlCiAKICAgICAgICAgPGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yNzA4Mz4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvYnVn
emlsbGEtdG9vbCBiL1dlYktpdFRvb2xzL1NjcmlwdHMvYnVnemlsbGEtdG9vbAppbmRleCBiZmQ1
YmJhLi44MjkwYzI1IDEwMDc1NQotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL2J1Z3ppbGxhLXRv
b2wKKysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy9idWd6aWxsYS10b29sCkBAIC0yNzAsNiArMjcw
LDcgQEAgY2xhc3MgTGFuZFBhdGNoZXNGcm9tQnVncyhDb21tYW5kKToKICAgICAgICAgb3B0aW9u
cyA9IFsKICAgICAgICAgICAgIG1ha2Vfb3B0aW9uKCItLWZvcmNlLWNsZWFuIiwgYWN0aW9uPSJz
dG9yZV90cnVlIiwgZGVzdD0iZm9yY2VfY2xlYW4iLCBkZWZhdWx0PUZhbHNlLCBoZWxwPSJDbGVh
biB3b3JraW5nIGRpcmVjdG9yeSBiZWZvcmUgYXBwbHlpbmcgcGF0Y2hlcyAocmVtb3ZlcyBsb2Nh
bCBjaGFuZ2VzIGFuZCBjb21taXRzKSIpLAogICAgICAgICAgICAgbWFrZV9vcHRpb24oIi0tbm8t
Y2xlYW4iLCBhY3Rpb249InN0b3JlX2ZhbHNlIiwgZGVzdD0iY2xlYW4iLCBkZWZhdWx0PVRydWUs
IGhlbHA9IkRvbid0IGNoZWNrIGlmIHRoZSB3b3JraW5nIGRpcmVjdG9yeSBpcyBjbGVhbiBiZWZv
cmUgYXBwbHlpbmcgcGF0Y2hlcyIpLAorICAgICAgICAgICAgbWFrZV9vcHRpb24oIi0tbm8tY2xv
c2UiLCBhY3Rpb249InN0b3JlX2ZhbHNlIiwgZGVzdD0iY2xvc2VfYnVnIiwgZGVmYXVsdD1UcnVl
LCBoZWxwPSJMZWF2ZSBidWcgb3BlbiBhZnRlciBsYW5kaW5nLiIpLAogICAgICAgICAgICAgbWFr
ZV9vcHRpb24oIi0tbm8tYnVpbGQiLCBhY3Rpb249InN0b3JlX2ZhbHNlIiwgZGVzdD0iYnVpbGQi
LCBkZWZhdWx0PVRydWUsIGhlbHA9IkNvbW1pdCB3aXRob3V0IGJ1aWxkaW5nIGZpcnN0LCBpbXBs
aWVzIC0tbm8tdGVzdC4iKSwKICAgICAgICAgICAgIG1ha2Vfb3B0aW9uKCItLW5vLXRlc3QiLCBh
Y3Rpb249InN0b3JlX2ZhbHNlIiwgZGVzdD0idGVzdCIsIGRlZmF1bHQ9VHJ1ZSwgaGVscD0iQ29t
bWl0IHdpdGhvdXQgcnVubmluZyBydW4td2Via2l0LXRlc3RzLiIpLAogICAgICAgICBdCkBAIC0z
MjUsMTAgKzMyNiwxNSBAQCBjbGFzcyBMYW5kUGF0Y2hlc0Zyb21CdWdzKENvbW1hbmQpOgogICAg
ICAgICAgICAgICAgIGlmIGxlbihwYXRjaGVzKSA+IDE6CiAgICAgICAgICAgICAgICAgICAgIHRv
b2wuYnVncy5vYnNvbGV0ZV9hdHRhY2htZW50KHBhdGNoWydpZCddLCBjb21tZW50X3RleHQpCiAK
KyAgICAgICAgICAgICAgICAjIElmIHdlJ3JlIG5vdCBjbG9zaW5nIHRoZSBidWcsIGNsZWFyIHRo
ZSByZXZpZXcgZmxhZyBhZnRlciBjb21taXR0aW5nIGl0LgorICAgICAgICAgICAgICAgIGlmIG5v
dCBvcHRpb25zLmNsb3NlX2J1ZzoKKyAgICAgICAgICAgICAgICAgICAgdG9vbC5idWdzLmNsZWFy
X2F0dGFjaG1lbnRfcmV2aWV3X2ZsYWcocGF0Y2hbJ2lkJ10pCisKICAgICAgICAgICAgIGlmIGxl
bihwYXRjaGVzKSA+IDE6Ci0gICAgICAgICAgICAgICAgY29tbWVudF90ZXh0ID0gIkFsbCByZXZp
ZXdlZCBwYXRjaGVzIGxhbmRlZCwgY2xvc2luZy4iCisgICAgICAgICAgICAgICAgY29tbWVudF90
ZXh0ID0gIkFsbCByZXZpZXdlZCBwYXRjaGVzIGxhbmRlZC4iCiAKLSAgICAgICAgICAgIHRvb2wu
YnVncy5jbG9zZV9idWdfYXNfZml4ZWQoYnVnX2lkLCBjb21tZW50X3RleHQpCisgICAgICAgICAg
ICBpZiBvcHRpb25zLmNsb3NlX2J1ZzoKKyAgICAgICAgICAgICAgICB0b29sLmJ1Z3MuY2xvc2Vf
YnVnX2FzX2ZpeGVkKGJ1Z19pZCwgY29tbWVudF90ZXh0KQogICAgICAgICBleGNlcHQgU2NyaXB0
RXJyb3IsIGU6CiAgICAgICAgICAgICAjIFdlIHNob3VsZCBhZGQgYSBjb21tZW50IHRvIHRoZSBi
dWcsIGFuZCByLSB0aGUgcGF0Y2ggb24gZmFpbHVyZQogICAgICAgICAgICAgZXJyb3IoZSkKZGlm
ZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvbW9kdWxlcy9idWd6aWxsYS5weSBiL1dlYktp
dFRvb2xzL1NjcmlwdHMvbW9kdWxlcy9idWd6aWxsYS5weQppbmRleCA3ZGQwN2U4Li45MjhkNzA2
IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL21vZHVsZXMvYnVnemlsbGEucHkKKysr
IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy9tb2R1bGVzL2J1Z3ppbGxhLnB5CkBAIC0yNDksNiArMjQ5
LDE5IEBAIGNsYXNzIEJ1Z3ppbGxhOgogICAgICAgICBzZWxmLmJyb3dzZXIuYWRkX2ZpbGUocGF0
Y2hfZmlsZV9vYmplY3QsICJ0ZXh0L3BsYWluIiwgImJ1Z3ppbGxhX3JlcXVpcmVzX2FfZmlsZW5h
bWUucGF0Y2giKQogICAgICAgICBzZWxmLmJyb3dzZXIuc3VibWl0KCkKIAorICAgIGRlZiBjbGVh
cl9hdHRhY2htZW50X3Jldmlld19mbGFnKHNlbGYsIGF0dGFjaG1lbnRfaWQpOgorICAgICAgICBz
ZWxmLmF1dGhlbnRpY2F0ZSgpCisKKyAgICAgICAgbG9nKCJDbGVhcmluZyByZXZpZXcgZmxhZyBv
biBhdHRhY2htZW50OiAlcyIgJSBhdHRhY2htZW50X2lkKQorICAgICAgICBpZiBzZWxmLmRyeXJ1
bjoKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIHNlbGYuYnJvd3Nlci5vcGVuKHNlbGYu
YXR0YWNobWVudF91cmxfZm9yX2lkKGF0dGFjaG1lbnRfaWQsICdlZGl0JykpCisgICAgICAgIHNl
bGYuYnJvd3Nlci5zZWxlY3RfZm9ybShucj0xKQorICAgICAgICBzZWxmLmJyb3dzZXJbJ2NvbW1l
bnQnXSA9ICJDbGVhcmluZyByZXZpZXcrIGZsYWcuIgorICAgICAgICBzZWxmLmJyb3dzZXIuZmlu
ZF9jb250cm9sKHR5cGU9J3NlbGVjdCcsIG5yPTApLnZhbHVlID0gKCJYIiwpCisgICAgICAgIHNl
bGYuYnJvd3Nlci5zdWJtaXQoKQorCiAgICAgZGVmIG9ic29sZXRlX2F0dGFjaG1lbnQoc2VsZiwg
YXR0YWNobWVudF9pZCwgY29tbWVudF90ZXh0ID0gTm9uZSk6CiAgICAgICAgIHNlbGYuYXV0aGVu
dGljYXRlKCk=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>33728</attachid>
            <date>2009-07-29 12:02:18 -0700</date>
            <delta_ts>2009-07-29 14:44:43 -0700</delta_ts>
            <desc>Patch v3</desc>
            <filename>bug-27082-20090729120217.patch</filename>
            <type>text/plain</type>
            <size>4499</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBiMTUxNmQ4Li45ZjRiMjU1IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjIgQEAKIDIwMDktMDct
MjkgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAorICAgICAgICA8aHR0cDov
L3dlYmtpdC5vcmcvYi8yNzA4Mj4gYnVnemlsbGEtdG9vbDogQWRkIC0tbm8tY2xvc2Ugc3dpdGNo
IHRvIGxhbmQtcGF0Y2hlcworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogU2NyaXB0cy9idWd6aWxsYS10b29sOgorICAgICAgICAoTGFuZFBhdGNoZXNG
cm9tQnVncy5fX2luaXRfXyk6IEFkZGVkIC0tbm8tY2xvc2Ugc3dpdGNoLgorICAgICAgICAoTGFu
ZFBhdGNoZXNGcm9tQnVncy5sYW5kX3BhdGNoZXMpOiBEb24ndCBjbG9zZSB0aGUgYnVnIGlmIHRo
ZQorICAgICAgICAtLW5vLWNsb3NlIHN3aXRjaCB3YXMgdXNlZCwgYnV0IGNhbGwKKyAgICAgICAg
QnVnemlsbGEuY2xlYXJfYXR0YWNobWVudF9yZXZpZXdfZmxhZygpIG9uIHRoZSBhdHRhY2htZW50
IHNvIGl0CisgICAgICAgIG5vIGxvbmdlciBzaG93cyB1cCBpbiB0aGUgY29tbWl0IHF1ZXVlLiAg
QWxzbyBjaGFuZ2VkIHRoZQorICAgICAgICBiZWhhdmlvciB3aGVuIGxhbmRpbmcgbXVsdGlwbGUg
cGF0Y2hlcyBmcm9tIG9ic29sZXRpbmcgcGF0Y2hlcworICAgICAgICB0byBjbGVhcmluZyBlYWNo
IHBhdGNoJ3MgcmV2aWV3IGZsYWcuCisgICAgICAgICogU2NyaXB0cy9tb2R1bGVzL2J1Z3ppbGxh
LnB5OgorICAgICAgICAoQnVnemlsbGEuY2xlYXJfYXR0YWNobWVudF9yZXZpZXdfZmxhZyk6IEFk
ZGVkLgorCisyMDA5LTA3LTI5ICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisK
ICAgICAgICAgPGh0dHA6Ly93ZWJraXQub3JnL2IvMjcxMTk+IGJ1Z3ppbGxhLXRvb2w6IEFkZCBj
cmVhdGUtYnVnIGNvbW1hbmQKIAogICAgICAgICBSZXZpZXdlZCBieSBEYXZpZCBMZXZpbi4KZGlm
ZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvYnVnemlsbGEtdG9vbCBiL1dlYktpdFRvb2xz
L1NjcmlwdHMvYnVnemlsbGEtdG9vbAppbmRleCA4YWEzN2YwLi5mOWIxMDNlIDEwMDc1NQotLS0g
YS9XZWJLaXRUb29scy9TY3JpcHRzL2J1Z3ppbGxhLXRvb2wKKysrIGIvV2ViS2l0VG9vbHMvU2Ny
aXB0cy9idWd6aWxsYS10b29sCkBAIC0yNjksNiArMjY5LDcgQEAgY2xhc3MgTGFuZFBhdGNoZXNG
cm9tQnVncyhDb21tYW5kKToKICAgICAgICAgb3B0aW9ucyA9IFsKICAgICAgICAgICAgIG1ha2Vf
b3B0aW9uKCItLWZvcmNlLWNsZWFuIiwgYWN0aW9uPSJzdG9yZV90cnVlIiwgZGVzdD0iZm9yY2Vf
Y2xlYW4iLCBkZWZhdWx0PUZhbHNlLCBoZWxwPSJDbGVhbiB3b3JraW5nIGRpcmVjdG9yeSBiZWZv
cmUgYXBwbHlpbmcgcGF0Y2hlcyAocmVtb3ZlcyBsb2NhbCBjaGFuZ2VzIGFuZCBjb21taXRzKSIp
LAogICAgICAgICAgICAgbWFrZV9vcHRpb24oIi0tbm8tY2xlYW4iLCBhY3Rpb249InN0b3JlX2Zh
bHNlIiwgZGVzdD0iY2xlYW4iLCBkZWZhdWx0PVRydWUsIGhlbHA9IkRvbid0IGNoZWNrIGlmIHRo
ZSB3b3JraW5nIGRpcmVjdG9yeSBpcyBjbGVhbiBiZWZvcmUgYXBwbHlpbmcgcGF0Y2hlcyIpLAor
ICAgICAgICAgICAgbWFrZV9vcHRpb24oIi0tbm8tY2xvc2UiLCBhY3Rpb249InN0b3JlX2ZhbHNl
IiwgZGVzdD0iY2xvc2VfYnVnIiwgZGVmYXVsdD1UcnVlLCBoZWxwPSJMZWF2ZSBidWcgb3BlbiBh
ZnRlciBsYW5kaW5nLiIpLAogICAgICAgICAgICAgbWFrZV9vcHRpb24oIi0tbm8tYnVpbGQiLCBh
Y3Rpb249InN0b3JlX2ZhbHNlIiwgZGVzdD0iYnVpbGQiLCBkZWZhdWx0PVRydWUsIGhlbHA9IkNv
bW1pdCB3aXRob3V0IGJ1aWxkaW5nIGZpcnN0LCBpbXBsaWVzIC0tbm8tdGVzdC4iKSwKICAgICAg
ICAgICAgIG1ha2Vfb3B0aW9uKCItLW5vLXRlc3QiLCBhY3Rpb249InN0b3JlX2ZhbHNlIiwgZGVz
dD0idGVzdCIsIGRlZmF1bHQ9VHJ1ZSwgaGVscD0iQ29tbWl0IHdpdGhvdXQgcnVubmluZyBydW4t
d2Via2l0LXRlc3RzLiIpLAogICAgICAgICBdCkBAIC0zMTQsMjAgKzMxNSwyMSBAQCBjbGFzcyBM
YW5kUGF0Y2hlc0Zyb21CdWdzKENvbW1hbmQpOgogICAgIEBjbGFzc21ldGhvZAogICAgIGRlZiBs
YW5kX3BhdGNoZXMoY2xzLCBidWdfaWQsIHBhdGNoZXMsIG9wdGlvbnMsIHRvb2wpOgogICAgICAg
ICB0cnk6CisgICAgICAgICAgICAjIENsZWFyIHRoZSByZXZpZXcgZmxhZyBvbiBlYWNoIGJ1ZyBp
ZiB3ZSdyZSBub3QgY2xvc2luZyB0aGUgYnVnIG9yIGlmIHRoZXJlIGlzIG1vcmUgdGhhbiBvbmUg
cGF0Y2guCisgICAgICAgICAgICBzaG91bGRfY2xlYXJfcmV2aWV3X2ZsYWcgPSBub3Qgb3B0aW9u
cy5jbG9zZV9idWcgb3IgbGVuKHBhdGNoZXMpID4gMQogICAgICAgICAgICAgY29tbWVudF90ZXh0
ID0gIiIKICAgICAgICAgICAgIGZvciBwYXRjaCBpbiBwYXRjaGVzOgogICAgICAgICAgICAgICAg
IHRvb2wuc2NtKCkudXBkYXRlX3dlYmtpdCgpICMgVXBkYXRlIGJlZm9yZSBldmVyeSBwYXRjaCBp
biBjYXNlIHRoZSB0cmVlIGhhcyBjaGFuZ2VkCiAgICAgICAgICAgICAgICAgdG9vbC5zY20oKS5h
cHBseV9wYXRjaChwYXRjaCkKICAgICAgICAgICAgICAgICBjb21tZW50X3RleHQgPSBjbHMuYnVp
bGRfYW5kX2NvbW1pdCh0b29sLnNjbSgpLCBvcHRpb25zKQotCi0gICAgICAgICAgICAgICAgIyBJ
ZiB3ZSdyZSBjb21taXRpbmcgbW9yZSB0aGFuIG9uZSBwYXRjaCwgdXBkYXRlIHRoZSBidWcgYXMg
d2UgZ28uCi0gICAgICAgICAgICAgICAgaWYgbGVuKHBhdGNoZXMpID4gMToKLSAgICAgICAgICAg
ICAgICAgICAgdG9vbC5idWdzLm9ic29sZXRlX2F0dGFjaG1lbnQocGF0Y2hbJ2lkJ10sIGNvbW1l
bnRfdGV4dCkKKyAgICAgICAgICAgICAgICBpZiBzaG91bGRfY2xlYXJfcmV2aWV3X2ZsYWc6Cisg
ICAgICAgICAgICAgICAgICAgIHRvb2wuYnVncy5jbGVhcl9hdHRhY2htZW50X3Jldmlld19mbGFn
KHBhdGNoWydpZCddKQogCiAgICAgICAgICAgICBpZiBsZW4ocGF0Y2hlcykgPiAxOgotICAgICAg
ICAgICAgICAgIGNvbW1lbnRfdGV4dCA9ICJBbGwgcmV2aWV3ZWQgcGF0Y2hlcyBsYW5kZWQsIGNs
b3NpbmcuIgorICAgICAgICAgICAgICAgIGNvbW1lbnRfdGV4dCA9ICJBbGwgcmV2aWV3ZWQgcGF0
Y2hlcyBsYW5kZWQuIgogCi0gICAgICAgICAgICB0b29sLmJ1Z3MuY2xvc2VfYnVnX2FzX2ZpeGVk
KGJ1Z19pZCwgY29tbWVudF90ZXh0KQorICAgICAgICAgICAgaWYgb3B0aW9ucy5jbG9zZV9idWc6
CisgICAgICAgICAgICAgICAgdG9vbC5idWdzLmNsb3NlX2J1Z19hc19maXhlZChidWdfaWQsIGNv
bW1lbnRfdGV4dCkKICAgICAgICAgZXhjZXB0IFNjcmlwdEVycm9yLCBlOgogICAgICAgICAgICAg
IyBXZSBzaG91bGQgYWRkIGEgY29tbWVudCB0byB0aGUgYnVnLCBhbmQgci0gdGhlIHBhdGNoIG9u
IGZhaWx1cmUKICAgICAgICAgICAgIGVycm9yKGUpCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9T
Y3JpcHRzL21vZHVsZXMvYnVnemlsbGEucHkgYi9XZWJLaXRUb29scy9TY3JpcHRzL21vZHVsZXMv
YnVnemlsbGEucHkKaW5kZXggN2E5MjdhMS4uYTZiZjA0MSAxMDA2NDQKLS0tIGEvV2ViS2l0VG9v
bHMvU2NyaXB0cy9tb2R1bGVzL2J1Z3ppbGxhLnB5CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMv
bW9kdWxlcy9idWd6aWxsYS5weQpAQCAtMzUwLDYgKzM1MCwxOSBAQCBjbGFzcyBCdWd6aWxsYToK
ICAgICAgICAgbG9nKHNlbGYuYnVnX3NlcnZlcl91cmwgKyAic2hvd19idWcuY2dpP2lkPSIgKyBi
dWdfaWQpCiAgICAgICAgIHJldHVybiBidWdfaWQKIAorICAgIGRlZiBjbGVhcl9hdHRhY2htZW50
X3Jldmlld19mbGFnKHNlbGYsIGF0dGFjaG1lbnRfaWQpOgorICAgICAgICBzZWxmLmF1dGhlbnRp
Y2F0ZSgpCisKKyAgICAgICAgbG9nKCJDbGVhcmluZyByZXZpZXcgZmxhZyBvbiBhdHRhY2htZW50
OiAlcyIgJSBhdHRhY2htZW50X2lkKQorICAgICAgICBpZiBzZWxmLmRyeXJ1bjoKKyAgICAgICAg
ICAgIHJldHVybgorCisgICAgICAgIHNlbGYuYnJvd3Nlci5vcGVuKHNlbGYuYXR0YWNobWVudF91
cmxfZm9yX2lkKGF0dGFjaG1lbnRfaWQsICdlZGl0JykpCisgICAgICAgIHNlbGYuYnJvd3Nlci5z
ZWxlY3RfZm9ybShucj0xKQorICAgICAgICBzZWxmLmJyb3dzZXJbJ2NvbW1lbnQnXSA9ICJDbGVh
cmluZyByZXZpZXcrIGZsYWcuIgorICAgICAgICBzZWxmLmJyb3dzZXIuZmluZF9jb250cm9sKHR5
cGU9J3NlbGVjdCcsIG5yPTApLnZhbHVlID0gKCJYIiwpCisgICAgICAgIHNlbGYuYnJvd3Nlci5z
dWJtaXQoKQorCiAgICAgZGVmIG9ic29sZXRlX2F0dGFjaG1lbnQoc2VsZiwgYXR0YWNobWVudF9p
ZCwgY29tbWVudF90ZXh0ID0gTm9uZSk6CiAgICAgICAgIHNlbGYuYXV0aGVudGljYXRlKCk=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>33744</attachid>
            <date>2009-07-29 14:44:47 -0700</date>
            <delta_ts>2009-07-29 14:50:45 -0700</delta_ts>
            <desc>Patch v4</desc>
            <filename>bug-27082-20090729144446.patch</filename>
            <type>text/plain</type>
            <size>4218</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBiMTUxNmQ4Li43NTlmZmNkIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjEgQEAKIDIwMDktMDct
MjkgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAorICAgICAgICA8aHR0cDov
L3dlYmtpdC5vcmcvYi8yNzA4Mj4gYnVnemlsbGEtdG9vbDogQWRkIC0tbm8tY2xvc2Ugc3dpdGNo
IHRvIGxhbmQtcGF0Y2hlcworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogU2NyaXB0cy9idWd6aWxsYS10b29sOgorICAgICAgICAoTGFuZFBhdGNoZXNG
cm9tQnVncy5fX2luaXRfXyk6IEFkZGVkIC0tbm8tY2xvc2Ugc3dpdGNoLgorICAgICAgICAoTGFu
ZFBhdGNoZXNGcm9tQnVncy5sYW5kX3BhdGNoZXMpOiBEb24ndCBjbG9zZSB0aGUgYnVnIGlmIHRo
ZQorICAgICAgICAtLW5vLWNsb3NlIHN3aXRjaCB3YXMgdXNlZC4gIEFsd2F5cyBjbGVhciB0aGUg
cmV2aWV3KyBmbGFnIG9uCisgICAgICAgIGV2ZXJ5IGxhbmRlZCBwYXRjaCB1c2luZyB0aGUgY29t
bWl0X3RleHQgbWVzc2FnZSB3aGVuIGNsZWFyZWQuCisgICAgICAgIFRoaXMgcHJldmVudHMgcGF0
Y2hlcyBmcm9tIHNob3dpbmcgdXAgaW4gdGhlIGNvbW1pdCBxdWV1ZSBpZgorICAgICAgICByZW9w
ZW5lZCBhbmQgcHJvdmlkZXMgY29uc2lzdGVuY3kgd2l0aCBhbGwgbGFuZGVkIHBhdGNoZXMuCisg
ICAgICAgICogU2NyaXB0cy9tb2R1bGVzL2J1Z3ppbGxhLnB5OgorICAgICAgICAoQnVnemlsbGEu
Y2xlYXJfYXR0YWNobWVudF9yZXZpZXdfZmxhZyk6IEFkZGVkLgorCisyMDA5LTA3LTI5ICBEYXZp
ZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisKICAgICAgICAgPGh0dHA6Ly93ZWJraXQu
b3JnL2IvMjcxMTk+IGJ1Z3ppbGxhLXRvb2w6IEFkZCBjcmVhdGUtYnVnIGNvbW1hbmQKIAogICAg
ICAgICBSZXZpZXdlZCBieSBEYXZpZCBMZXZpbi4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1Nj
cmlwdHMvYnVnemlsbGEtdG9vbCBiL1dlYktpdFRvb2xzL1NjcmlwdHMvYnVnemlsbGEtdG9vbApp
bmRleCA4YWEzN2YwLi4xZDY3OTI1IDEwMDc1NQotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL2J1
Z3ppbGxhLXRvb2wKKysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy9idWd6aWxsYS10b29sCkBAIC0y
NjksNiArMjY5LDcgQEAgY2xhc3MgTGFuZFBhdGNoZXNGcm9tQnVncyhDb21tYW5kKToKICAgICAg
ICAgb3B0aW9ucyA9IFsKICAgICAgICAgICAgIG1ha2Vfb3B0aW9uKCItLWZvcmNlLWNsZWFuIiwg
YWN0aW9uPSJzdG9yZV90cnVlIiwgZGVzdD0iZm9yY2VfY2xlYW4iLCBkZWZhdWx0PUZhbHNlLCBo
ZWxwPSJDbGVhbiB3b3JraW5nIGRpcmVjdG9yeSBiZWZvcmUgYXBwbHlpbmcgcGF0Y2hlcyAocmVt
b3ZlcyBsb2NhbCBjaGFuZ2VzIGFuZCBjb21taXRzKSIpLAogICAgICAgICAgICAgbWFrZV9vcHRp
b24oIi0tbm8tY2xlYW4iLCBhY3Rpb249InN0b3JlX2ZhbHNlIiwgZGVzdD0iY2xlYW4iLCBkZWZh
dWx0PVRydWUsIGhlbHA9IkRvbid0IGNoZWNrIGlmIHRoZSB3b3JraW5nIGRpcmVjdG9yeSBpcyBj
bGVhbiBiZWZvcmUgYXBwbHlpbmcgcGF0Y2hlcyIpLAorICAgICAgICAgICAgbWFrZV9vcHRpb24o
Ii0tbm8tY2xvc2UiLCBhY3Rpb249InN0b3JlX2ZhbHNlIiwgZGVzdD0iY2xvc2VfYnVnIiwgZGVm
YXVsdD1UcnVlLCBoZWxwPSJMZWF2ZSBidWcgb3BlbiBhZnRlciBsYW5kaW5nLiIpLAogICAgICAg
ICAgICAgbWFrZV9vcHRpb24oIi0tbm8tYnVpbGQiLCBhY3Rpb249InN0b3JlX2ZhbHNlIiwgZGVz
dD0iYnVpbGQiLCBkZWZhdWx0PVRydWUsIGhlbHA9IkNvbW1pdCB3aXRob3V0IGJ1aWxkaW5nIGZp
cnN0LCBpbXBsaWVzIC0tbm8tdGVzdC4iKSwKICAgICAgICAgICAgIG1ha2Vfb3B0aW9uKCItLW5v
LXRlc3QiLCBhY3Rpb249InN0b3JlX2ZhbHNlIiwgZGVzdD0idGVzdCIsIGRlZmF1bHQ9VHJ1ZSwg
aGVscD0iQ29tbWl0IHdpdGhvdXQgcnVubmluZyBydW4td2Via2l0LXRlc3RzLiIpLAogICAgICAg
ICBdCkBAIC0zMTksMTUgKzMyMCwxMCBAQCBjbGFzcyBMYW5kUGF0Y2hlc0Zyb21CdWdzKENvbW1h
bmQpOgogICAgICAgICAgICAgICAgIHRvb2wuc2NtKCkudXBkYXRlX3dlYmtpdCgpICMgVXBkYXRl
IGJlZm9yZSBldmVyeSBwYXRjaCBpbiBjYXNlIHRoZSB0cmVlIGhhcyBjaGFuZ2VkCiAgICAgICAg
ICAgICAgICAgdG9vbC5zY20oKS5hcHBseV9wYXRjaChwYXRjaCkKICAgICAgICAgICAgICAgICBj
b21tZW50X3RleHQgPSBjbHMuYnVpbGRfYW5kX2NvbW1pdCh0b29sLnNjbSgpLCBvcHRpb25zKQor
ICAgICAgICAgICAgICAgIHRvb2wuYnVncy5jbGVhcl9hdHRhY2htZW50X3Jldmlld19mbGFnKHBh
dGNoWydpZCddLCBjb21tZW50X3RleHQpCiAKLSAgICAgICAgICAgICAgICAjIElmIHdlJ3JlIGNv
bW1pdGluZyBtb3JlIHRoYW4gb25lIHBhdGNoLCB1cGRhdGUgdGhlIGJ1ZyBhcyB3ZSBnby4KLSAg
ICAgICAgICAgICAgICBpZiBsZW4ocGF0Y2hlcykgPiAxOgotICAgICAgICAgICAgICAgICAgICB0
b29sLmJ1Z3Mub2Jzb2xldGVfYXR0YWNobWVudChwYXRjaFsnaWQnXSwgY29tbWVudF90ZXh0KQot
Ci0gICAgICAgICAgICBpZiBsZW4ocGF0Y2hlcykgPiAxOgotICAgICAgICAgICAgICAgIGNvbW1l
bnRfdGV4dCA9ICJBbGwgcmV2aWV3ZWQgcGF0Y2hlcyBsYW5kZWQsIGNsb3NpbmcuIgotCi0gICAg
ICAgICAgICB0b29sLmJ1Z3MuY2xvc2VfYnVnX2FzX2ZpeGVkKGJ1Z19pZCwgY29tbWVudF90ZXh0
KQorICAgICAgICAgICAgaWYgb3B0aW9ucy5jbG9zZV9idWc6CisgICAgICAgICAgICAgICAgdG9v
bC5idWdzLmNsb3NlX2J1Z19hc19maXhlZChidWdfaWQsICJBbGwgcmV2aWV3ZWQgcGF0Y2hlcyBo
YXZlIGJlZW4gbGFuZGVkLiAgQ2xvc2luZyBidWcuIikKICAgICAgICAgZXhjZXB0IFNjcmlwdEVy
cm9yLCBlOgogICAgICAgICAgICAgIyBXZSBzaG91bGQgYWRkIGEgY29tbWVudCB0byB0aGUgYnVn
LCBhbmQgci0gdGhlIHBhdGNoIG9uIGZhaWx1cmUKICAgICAgICAgICAgIGVycm9yKGUpCmRpZmYg
LS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL21vZHVsZXMvYnVnemlsbGEucHkgYi9XZWJLaXRU
b29scy9TY3JpcHRzL21vZHVsZXMvYnVnemlsbGEucHkKaW5kZXggN2E5MjdhMS4uNzZkMzIzNCAx
MDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy9tb2R1bGVzL2J1Z3ppbGxhLnB5CisrKyBi
L1dlYktpdFRvb2xzL1NjcmlwdHMvbW9kdWxlcy9idWd6aWxsYS5weQpAQCAtMzUwLDYgKzM1MCwy
MyBAQCBjbGFzcyBCdWd6aWxsYToKICAgICAgICAgbG9nKHNlbGYuYnVnX3NlcnZlcl91cmwgKyAi
c2hvd19idWcuY2dpP2lkPSIgKyBidWdfaWQpCiAgICAgICAgIHJldHVybiBidWdfaWQKIAorICAg
IGRlZiBjbGVhcl9hdHRhY2htZW50X3Jldmlld19mbGFnKHNlbGYsIGF0dGFjaG1lbnRfaWQsIGFk
ZGl0aW9uYWxfY29tbWVudF90ZXh0PU5vbmUpOgorICAgICAgICBzZWxmLmF1dGhlbnRpY2F0ZSgp
CisKKyAgICAgICAgY29tbWVudF90ZXh0ID0gIkNsZWFyaW5nIHJldmlldyBmbGFnIG9uIGF0dGFj
aG1lbnQ6ICVzIiAlIGF0dGFjaG1lbnRfaWQKKyAgICAgICAgaWYgYWRkaXRpb25hbF9jb21tZW50
X3RleHQ6CisgICAgICAgICAgICBjb21tZW50X3RleHQgKz0gIlxuIiArIGFkZGl0aW9uYWxfY29t
bWVudF90ZXh0CisgICAgICAgIGxvZyhjb21tZW50X3RleHQpCisKKyAgICAgICAgaWYgc2VsZi5k
cnlydW46CisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICBzZWxmLmJyb3dzZXIub3Blbihz
ZWxmLmF0dGFjaG1lbnRfdXJsX2Zvcl9pZChhdHRhY2htZW50X2lkLCAnZWRpdCcpKQorICAgICAg
ICBzZWxmLmJyb3dzZXIuc2VsZWN0X2Zvcm0obnI9MSkKKyAgICAgICAgc2VsZi5icm93c2VyWydj
b21tZW50J10gPSBjb21tZW50X3RleHQKKyAgICAgICAgc2VsZi5icm93c2VyLmZpbmRfY29udHJv
bCh0eXBlPSdzZWxlY3QnLCBucj0wKS52YWx1ZSA9ICgiWCIsKQorICAgICAgICBzZWxmLmJyb3dz
ZXIuc3VibWl0KCkKKwogICAgIGRlZiBvYnNvbGV0ZV9hdHRhY2htZW50KHNlbGYsIGF0dGFjaG1l
bnRfaWQsIGNvbW1lbnRfdGV4dCA9IE5vbmUpOgogICAgICAgICBzZWxmLmF1dGhlbnRpY2F0ZSgp
</data>
<flag name="review"
          id="17952"
          type_id="1"
          status="+"
          setter="levin"
    />
          </attachment>
      

    </bug>

</bugzilla>