<?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>29206</bug_id>
          
          <creation_ts>2009-09-11 13:09:35 -0700</creation_ts>
          <short_desc>post-diff and post-commits should be able to find bug urls in ChangeLogs.</short_desc>
          <delta_ts>2009-09-21 17:58:17 -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>PC</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>ddkilzer</cc>
    
    <cc>levin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>146722</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-11 13:09:35 -0700</bug_when>
    <thetext>post-diff and post-commits should be able to find bug urls in ChangeLogs.

I also cleaned up the code a little.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146724</commentid>
    <comment_count>1</comment_count>
      <attachid>39470</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-11 13:10:47 -0700</bug_when>
    <thetext>Created attachment 39470
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146725</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-11 13:12:24 -0700</bug_when>
    <thetext>I&apos;m going to test this locally for a bit longer before marking for review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147643</commentid>
    <comment_count>3</comment_count>
      <attachid>39662</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-16 15:26:24 -0700</bug_when>
    <thetext>Created attachment 39662
post-diff cleanups</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148368</commentid>
    <comment_count>4</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-18 13:46:10 -0700</bug_when>
    <thetext>Dave or Dave might be interested in reviewing this.  Eventually we should make land-diff also have this magical &quot;find the bug number&quot; behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148431</commentid>
    <comment_count>5</comment_count>
      <attachid>39662</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-09-18 15:45:07 -0700</bug_when>
    <thetext>Comment on attachment 39662
post-diff cleanups

&gt;+         - Fallback to bug urls in commit diffs, instead of just in commit messages,
&gt;+           meaning post-commits will now find bug urls in ChangeLogs.

Why do this?  By providing fallback behavior, we don&apos;t encourage developers to put the bug number in the commit message.  (Or is this because svn doesn&apos;t have the concept of a commit log within its patches?)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148433</commentid>
    <comment_count>6</comment_count>
      <attachid>39662</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-09-18 15:54:26 -0700</bug_when>
    <thetext>Comment on attachment 39662
post-diff cleanups

&gt; +         - Fallback to bug urls in commit diffs, instead of just in commit messages,
&gt; +           meaning post-commits will now find bug urls in ChangeLogs.

If this is for svn support, then it&apos;s fine.  Otherwise, I&apos;d rather enforce using the ChangeLog entries for commit logs.

&gt; @@ -459,11 +459,17 @@ class ObsoleteAttachmentsOnBug(Command):
&gt;  class PostDiffAsPatchToBug(Command):
&gt;      def __init__(self):
&gt;          options = [
&gt; +            make_option(&quot;-m&quot;, &quot;--description&quot;, action=&quot;store&quot;, type=&quot;string&quot;, dest=&quot;description&quot;, help=&quot;Description string for the attachment (default: &apos;patch&apos;)&quot;),
&gt; +        ]
&gt; +        options += self.posting_options()
&gt; +        Command.__init__(self, &apos;Attaches the current working directory diff to a bug as a patch file.&apos;, &apos;[BUGID]&apos;, options=options)
&gt; +
&gt; +    @staticmethod
&gt; +    def posting_options():
&gt; +        return [
&gt;              make_option(&quot;--no-obsolete&quot;, action=&quot;store_false&quot;, dest=&quot;obsolete_patches&quot;, default=True, help=&quot;Do not obsolete old patches before posting this one.&quot;),
&gt;              make_option(&quot;--no-review&quot;, action=&quot;store_false&quot;, dest=&quot;review&quot;, default=True, help=&quot;Do not mark the patch for review.&quot;),
&gt; -            make_option(&quot;-m&quot;, &quot;--description&quot;, action=&quot;store&quot;, type=&quot;string&quot;, dest=&quot;description&quot;, help=&quot;Description string for the attachment (default: &apos;patch&apos;)&quot;),
&gt;          ]
&gt; -        Command.__init__(self, &apos;Attaches the current working directory diff to a bug as a patch file.&apos;, &apos;BUGID&apos;, options=options)

Why is the -m|--description option listed separately?  It&apos;s also included separately in PostCommitsAsPatchesToBug, so it should be included with posting_options().

&gt; +            # Perfer --bug-id=, then a bug url in the commit message, then a bug url in the entire commit diff (i.e. ChangeLogs).

Typo: &quot;Perfer&quot; should be &quot;Prefer&quot;.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148436</commentid>
    <comment_count>7</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-18 16:01:26 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 39662 [details])
&gt; &gt;+         - Fallback to bug urls in commit diffs, instead of just in commit messages,
&gt; &gt;+           meaning post-commits will now find bug urls in ChangeLogs.
&gt; 
&gt; Why do this?  By providing fallback behavior, we don&apos;t encourage developers to
&gt; put the bug number in the commit message.  (Or is this because svn doesn&apos;t have
&gt; the concept of a commit log within its patches?)

When I&apos;m writing a change in Git to post to bugzilla I don&apos;t put the ChangeLog in teh commit log.  Only when I&apos;m landing do I do that.  I don&apos;t use commit-log-editor, and perhaps that explains this habit of mine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148438</commentid>
    <comment_count>8</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-09-18 16:20:45 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; (In reply to comment #5)
&gt; &gt; (From update of attachment 39662 [details] [details])
&gt; &gt; &gt;+         - Fallback to bug urls in commit diffs, instead of just in commit messages,
&gt; &gt; &gt;+           meaning post-commits will now find bug urls in ChangeLogs.
&gt; &gt; 
&gt; &gt; Why do this?  By providing fallback behavior, we don&apos;t encourage developers to
&gt; &gt; put the bug number in the commit message.  (Or is this because svn doesn&apos;t have
&gt; &gt; the concept of a commit log within its patches?)
&gt; 
&gt; When I&apos;m writing a change in Git to post to bugzilla I don&apos;t put the ChangeLog
&gt; in teh commit log.  Only when I&apos;m landing do I do that.  I don&apos;t use
&gt; commit-log-editor, and perhaps that explains this habit of mine.

I realized after posting this that if people use bzt to commit (or the commit-queue), it won&apos;t really matter, so this is really a moot point.

BTW bugzilla-tool still differs from commit-log-editor (see &lt;http://trac.webkit.org/changeset/48503&gt;):

- bzt does&apos;t strip spaces to the left of the commit log.
- bzt doesn&apos;t change date/name/email lines to subdirectory names.
- bzt puts the LayoutTest/ChangeLog entry first (not last).
- bzt is not putting a blank line between ChangeLog entries.
- bzt doesn&apos;t consolidate common lines from each ChangeLog entry to the top of the commit log.

Having said that, I don&apos;t like how commit-log-editor squishes the &quot;WebCore:&quot; headings into the first line of text after it (see &lt;http://trac.webkit.org/changeset/48492&gt; for example).

I guess I should file a bug about these differences?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148472</commentid>
    <comment_count>9</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-19 00:38:21 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; BTW bugzilla-tool still differs from commit-log-editor (see
&gt; &lt;http://trac.webkit.org/changeset/48503&gt;):
&gt; 
&gt; - bzt does&apos;t strip spaces to the left of the commit log.
&gt; - bzt doesn&apos;t change date/name/email lines to subdirectory names.
&gt; - bzt puts the LayoutTest/ChangeLog entry first (not last).
&gt; - bzt is not putting a blank line between ChangeLog entries.
&gt; - bzt doesn&apos;t consolidate common lines from each ChangeLog entry to the top of
&gt; the commit log.
&gt; 
&gt; Having said that, I don&apos;t like how commit-log-editor squishes the &quot;WebCore:&quot;
&gt; headings into the first line of text after it (see
&gt; &lt;http://trac.webkit.org/changeset/48492&gt; for example).
&gt; 
&gt; I guess I should file a bug about these differences?

Yes, this is awful.  No it&apos;s not intentional.  bzt&apos;s current behavior is simply the easiest thing I could hack together.  I would much rather have them be identical in behavior and share commit-log-editor code between the script and bugzilla-tool.

Eventually we should either find a way to make bugzilla-tool call commit-log-editor to produce the ChangeLog entry, or re-write commit-log-editor as a python module which can be shared by both bugzilla-tool and the script/editor-launcher-thingy.

bug 26755 already covers fixing this, but you should feel encouraged to add more comments there and/or post patches to improve the situation. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148907</commentid>
    <comment_count>10</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-21 17:10:56 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 39662 [details])
&gt; Why is the -m|--description option listed separately?  It&apos;s also included
&gt; separately in PostCommitsAsPatchesToBug, so it should be included with
&gt; posting_options().

They have different default behaviors, which are documented in separate messages.  I could have made a slightly different abstraction, but that&apos;s what I came up with for now.

&gt; &gt; +            # Perfer --bug-id=, then a bug url in the commit message, then a bug url in the entire commit diff (i.e. ChangeLogs).
&gt; 
&gt; Typo: &quot;Perfer&quot; should be &quot;Prefer&quot;.

Will fix and land.

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148918</commentid>
    <comment_count>11</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-21 17:58:17 -0700</bug_when>
    <thetext>Committed r48614: &lt;http://trac.webkit.org/changeset/48614&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39470</attachid>
            <date>2009-09-11 13:10:47 -0700</date>
            <delta_ts>2009-09-16 15:26:20 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>bug-29206-20090911131046.patch</filename>
            <type>text/plain</type>
            <size>7888</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBhZmFlYTFjLi5mODg1NDViIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMDktMDkt
MTEgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIHBvc3QtZGlmZiBhbmQgcG9zdC1jb21taXRzIHNo
b3VsZCBiZSBhYmxlIHRvIGZpbmQgYnVnIHVybHMgaW4gQ2hhbmdlTG9ncy4KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5MjA2CisKKyAgICAgICAgKiBT
Y3JpcHRzL2J1Z3ppbGxhLXRvb2w6CisgICAgICAgICAtIFNoYXJlIGNvbW1vbiBvcHRpb25zIGJ5
IGFkZGluZyBhIFBvc3REaWZmQXNQYXRjaFRvQnVnLnBvc3Rpbmdfb3B0aW9ucygpIG1ldGhvZC4K
KyAgICAgICAgIC0gUmVuYW1lIC0tbm8tY29tbWVudCB0byAtLWFkZC1sb2ctYXMtY29tbWVudCBh
bmQgcmV2ZXJzZSBiZWhhdmlvci4KKyAgICAgICAgICAgQ29tbWVudHMgdGVuZCB0byBqdXN0IGJl
IG5vaXNlLiAgSSdsbCBldmVudHVhbGx5IHJlbW92ZSB0aGlzIGFyZ3VtZW50IGlmIG5vIG9uZSB1
c2VzIGl0LgorICAgICAgICAgLSBTcGxpdCBvdXQgY29kZSBpbnRvIGhlbHBlciBmdW5jdGlvbnMg
dG8gdHJ5IGFuZCBtYWtlIGV4ZWN1dGUoKSBtb3JlIGxlZ2libGUuCisgICAgICAgICAtIE1ha2Ug
cG9zdC1kaWZmIGZpbmQgdGhlIGJ1ZyB1cmwgaW4gdGhlIENoYW5nZUxvZ3MgaWYgbm90IHBhc3Nl
ZCBhcyBhbiBhcmd1bWVudC4KKyAgICAgICAgIC0gRmFsbGJhY2sgdG8gYnVnIHVybHMgaW4gY29t
bWl0IGRpZmZzLCBpbnN0ZWFkIG9mIGp1c3QgaW4gY29tbWl0IG1lc3NhZ2VzLAorICAgICAgICAg
ICBtZWFuaW5nIHBvc3QtY29tbWl0cyB3aWxsIG5vdyBmaW5kIGJ1ZyB1cmxzIGluIENoYW5nZUxv
Z3MuCisKIDIwMDktMDktMTEgIEFkYW0gUm9iZW4gIDxhcm9iZW5AYXBwbGUuY29tPgogCiAgICAg
ICAgIE1ha2UgY29tbWl0LWxvZy1lZGl0b3IgbW92ZSBjb21tb24gcHJlZml4ZXMgdG8gdGhlIHRv
cCBvZiB0aGUgbG9nCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL2J1Z3ppbGxhLXRv
b2wgYi9XZWJLaXRUb29scy9TY3JpcHRzL2J1Z3ppbGxhLXRvb2wKaW5kZXggZmNmOTVmMy4uN2Iy
NTMwYyAxMDA3NTUKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy9idWd6aWxsYS10b29sCisrKyBi
L1dlYktpdFRvb2xzL1NjcmlwdHMvYnVnemlsbGEtdG9vbApAQCAtNDU4LDExICs0NTgsMTcgQEAg
Y2xhc3MgT2Jzb2xldGVBdHRhY2htZW50c09uQnVnKENvbW1hbmQpOgogY2xhc3MgUG9zdERpZmZB
c1BhdGNoVG9CdWcoQ29tbWFuZCk6CiAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgogICAgICAgICBv
cHRpb25zID0gWworICAgICAgICAgICAgbWFrZV9vcHRpb24oIi1tIiwgIi0tZGVzY3JpcHRpb24i
LCBhY3Rpb249InN0b3JlIiwgdHlwZT0ic3RyaW5nIiwgZGVzdD0iZGVzY3JpcHRpb24iLCBoZWxw
PSJEZXNjcmlwdGlvbiBzdHJpbmcgZm9yIHRoZSBhdHRhY2htZW50IChkZWZhdWx0OiAncGF0Y2gn
KSIpLAorICAgICAgICBdCisgICAgICAgIG9wdGlvbnMgKz0gc2VsZi5wb3N0aW5nX29wdGlvbnMo
KQorICAgICAgICBDb21tYW5kLl9faW5pdF9fKHNlbGYsICdBdHRhY2hlcyB0aGUgY3VycmVudCB3
b3JraW5nIGRpcmVjdG9yeSBkaWZmIHRvIGEgYnVnIGFzIGEgcGF0Y2ggZmlsZS4nLCAnW0JVR0lE
XScsIG9wdGlvbnM9b3B0aW9ucykKKworICAgIEBzdGF0aWNtZXRob2QKKyAgICBkZWYgcG9zdGlu
Z19vcHRpb25zKCk6CisgICAgICAgIHJldHVybiBbCiAgICAgICAgICAgICBtYWtlX29wdGlvbigi
LS1uby1vYnNvbGV0ZSIsIGFjdGlvbj0ic3RvcmVfZmFsc2UiLCBkZXN0PSJvYnNvbGV0ZV9wYXRj
aGVzIiwgZGVmYXVsdD1UcnVlLCBoZWxwPSJEbyBub3Qgb2Jzb2xldGUgb2xkIHBhdGNoZXMgYmVm
b3JlIHBvc3RpbmcgdGhpcyBvbmUuIiksCiAgICAgICAgICAgICBtYWtlX29wdGlvbigiLS1uby1y
ZXZpZXciLCBhY3Rpb249InN0b3JlX2ZhbHNlIiwgZGVzdD0icmV2aWV3IiwgZGVmYXVsdD1UcnVl
LCBoZWxwPSJEbyBub3QgbWFyayB0aGUgcGF0Y2ggZm9yIHJldmlldy4iKSwKLSAgICAgICAgICAg
IG1ha2Vfb3B0aW9uKCItbSIsICItLWRlc2NyaXB0aW9uIiwgYWN0aW9uPSJzdG9yZSIsIHR5cGU9
InN0cmluZyIsIGRlc3Q9ImRlc2NyaXB0aW9uIiwgaGVscD0iRGVzY3JpcHRpb24gc3RyaW5nIGZv
ciB0aGUgYXR0YWNobWVudCAoZGVmYXVsdDogJ3BhdGNoJykiKSwKICAgICAgICAgXQotICAgICAg
ICBDb21tYW5kLl9faW5pdF9fKHNlbGYsICdBdHRhY2hlcyB0aGUgY3VycmVudCB3b3JraW5nIGRp
cmVjdG9yeSBkaWZmIHRvIGEgYnVnIGFzIGEgcGF0Y2ggZmlsZS4nLCAnQlVHSUQnLCBvcHRpb25z
PW9wdGlvbnMpCiAKICAgICBAc3RhdGljbWV0aG9kCiAgICAgZGVmIG9ic29sZXRlX3BhdGNoZXNf
b25fYnVnKGJ1Z19pZCwgYnVncyk6CkBAIC00NzMsNyArNDc5LDEwIEBAIGNsYXNzIFBvc3REaWZm
QXNQYXRjaFRvQnVnKENvbW1hbmQpOgogICAgICAgICAgICAgICAgIGJ1Z3Mub2Jzb2xldGVfYXR0
YWNobWVudChwYXRjaFsnaWQnXSkKIAogICAgIGRlZiBleGVjdXRlKHNlbGYsIG9wdGlvbnMsIGFy
Z3MsIHRvb2wpOgotICAgICAgICBidWdfaWQgPSBhcmdzWzBdCisgICAgICAgICMgUGVyZmVyIGEg
YnVnIGlkIHBhc3NlZCBhcyBhbiBhcmd1bWVudCBvdmVyIGEgYnVnIHVybCBpbiB0aGUgZGlmZiAo
aS5lLiBDaGFuZ2VMb2dzKS4KKyAgICAgICAgYnVnX2lkID0gKGFyZ3MgYW5kIGFyZ3NbMF0pIG9y
IHBhcnNlX2J1Z19pZCh0b29sLnNjbSgpLmNyZWF0ZV9wYXRjaCgpKQorICAgICAgICBpZiBub3Qg
YnVnX2lkOgorICAgICAgICAgICAgZXJyb3IoIk5vIGJ1ZyBpZCBwYXNzZWQgYW5kIG5vIGJ1ZyB1
cmwgZm91bmQgaW4gZGlmZiwgY2FuJ3QgcG9zdC4iKQogCiAgICAgICAgIGlmIG9wdGlvbnMub2Jz
b2xldGVfcGF0Y2hlczoKICAgICAgICAgICAgIHNlbGYub2Jzb2xldGVfcGF0Y2hlc19vbl9idWco
YnVnX2lkLCB0b29sLmJ1Z3MpCkBAIC00ODksNDYgKzQ5OCw0OSBAQCBjbGFzcyBQb3N0Q29tbWl0
c0FzUGF0Y2hlc1RvQnVnKENvbW1hbmQpOgogICAgIGRlZiBfX2luaXRfXyhzZWxmKToKICAgICAg
ICAgb3B0aW9ucyA9IFsKICAgICAgICAgICAgIG1ha2Vfb3B0aW9uKCItYiIsICItLWJ1Zy1pZCIs
IGFjdGlvbj0ic3RvcmUiLCB0eXBlPSJzdHJpbmciLCBkZXN0PSJidWdfaWQiLCBoZWxwPSJTcGVj
aWZ5IGJ1ZyBpZCBpZiBubyBVUkwgaXMgcHJvdmlkZWQgaW4gdGhlIGNvbW1pdCBsb2cuIiksCi0g
ICAgICAgICAgICBtYWtlX29wdGlvbigiLS1uby1jb21tZW50IiwgYWN0aW9uPSJzdG9yZV9mYWxz
ZSIsIGRlc3Q9ImNvbW1lbnQiLCBkZWZhdWx0PVRydWUsIGhlbHA9IkRvIG5vdCB1c2UgY29tbWl0
IGxvZyBtZXNzYWdlIGFzIGEgY29tbWVudCBmb3IgdGhlIHBhdGNoLiIpLAotICAgICAgICAgICAg
bWFrZV9vcHRpb24oIi0tbm8tb2Jzb2xldGUiLCBhY3Rpb249InN0b3JlX2ZhbHNlIiwgZGVzdD0i
b2Jzb2xldGVfcGF0Y2hlcyIsIGRlZmF1bHQ9VHJ1ZSwgaGVscD0iRG8gbm90IG9ic29sZXRlIG9s
ZCBwYXRjaGVzIGJlZm9yZSBwb3N0aW5nIG5ldyBvbmVzLiIpLAotICAgICAgICAgICAgbWFrZV9v
cHRpb24oIi0tbm8tcmV2aWV3IiwgYWN0aW9uPSJzdG9yZV9mYWxzZSIsIGRlc3Q9InJldmlldyIs
IGRlZmF1bHQ9VHJ1ZSwgaGVscD0iRG8gbm90IG1hcmsgdGhlIHBhdGNoIGZvciByZXZpZXcuIiks
Ci0gICAgICAgICAgICBtYWtlX29wdGlvbigiLW0iLCAiLS1kZXNjcmlwdGlvbiIsIGFjdGlvbj0i
c3RvcmUiLCB0eXBlPSJzdHJpbmciLCBkZXN0PSJkZXNjcmlwdGlvbiIsIGhlbHA9IkRlc2NyaXB0
aW9uIHN0cmluZyBmb3IgdGhlIGF0dGFjaG1lbnQgKGRlZmF1bHQ6ICdwYXRjaCcpIiksCisgICAg
ICAgICAgICBtYWtlX29wdGlvbigiLS1hZGQtbG9nLWFzLWNvbW1lbnQiLCBhY3Rpb249InN0b3Jl
X3RydWUiLCBkZXN0PSJhZGRfbG9nX2FzX2NvbW1lbnQiLCBkZWZhdWx0PUZhbHNlLCBoZWxwPSJB
ZGQgY29tbWl0IGxvZyBtZXNzYWdlIGFzIGEgY29tbWVudCB3aGVuIHVwbG9hZGluZyB0aGUgcGF0
Y2guIiksCisgICAgICAgICAgICBtYWtlX29wdGlvbigiLW0iLCAiLS1kZXNjcmlwdGlvbiIsIGFj
dGlvbj0ic3RvcmUiLCB0eXBlPSJzdHJpbmciLCBkZXN0PSJkZXNjcmlwdGlvbiIsIGhlbHA9IkRl
c2NyaXB0aW9uIHN0cmluZyBmb3IgdGhlIGF0dGFjaG1lbnQgKGRlZmF1bHQ6IGRlc2NyaXB0aW9u
IGZyb20gY29tbWl0IG1lc3NhZ2UpIiksCiAgICAgICAgIF0KKyAgICAgICAgb3B0aW9ucyArPSBQ
b3N0RGlmZkFzUGF0Y2hUb0J1Zy5wb3N0aW5nX29wdGlvbnMoKQogICAgICAgICBDb21tYW5kLl9f
aW5pdF9fKHNlbGYsICdBdHRhY2hlcyBhIHJhbmdlIG9mIGxvY2FsIGNvbW1pdHMgdG8gYnVncyBh
cyBwYXRjaCBmaWxlcy4nLCAnQ09NTUlUSVNIJywgb3B0aW9ucz1vcHRpb25zLCByZXF1aXJlc19s
b2NhbF9jb21taXRzPVRydWUpCiAKKyAgICBkZWYgX2NvbW1lbnRfdGV4dF9mb3JfY29tbWl0KHNl
bGYsIG9wdGlvbnMsIGNvbW1pdF9tZXNzYWdlLCB0b29sLCBjb21taXRfaWQpOgorICAgICAgICBj
b21tZW50X3RleHQgPSBOb25lCisgICAgICAgIGlmIChvcHRpb25zLmFkZF9sb2dfYXNfY29tbWVu
dCk6CisgICAgICAgICAgICBjb21tZW50X3RleHQgPSBjb21taXRfbWVzc2FnZS5ib2R5KGxzdHJp
cD1UcnVlKQorICAgICAgICAgICAgY29tbWVudF90ZXh0ICs9ICItLS1cbiIKKyAgICAgICAgICAg
IGNvbW1lbnRfdGV4dCArPSB0b29sLnNjbSgpLmZpbGVzX2NoYW5nZWRfc3VtbWFyeV9mb3JfY29t
bWl0KGNvbW1pdF9pZCkKKyAgICAgICAgcmV0dXJuIGNvbW1lbnRfdGV4dAorCisgICAgZGVmIF9k
aWZmX2ZpbGVfZm9yX2NvbW1pdChzZWxmLCB0b29sLCBjb21taXRfaWQpOgorICAgICAgICBkaWZm
ID0gdG9vbC5zY20oKS5jcmVhdGVfcGF0Y2hfZnJvbV9sb2NhbF9jb21taXQoY29tbWl0X2lkKQor
ICAgICAgICByZXR1cm4gU3RyaW5nSU8uU3RyaW5nSU8oZGlmZikgIyBhZGRfcGF0Y2hfdG9fYnVn
IGV4cGVjdHMgYSBmaWxlLWxpa2Ugb2JqZWN0CisKICAgICBkZWYgZXhlY3V0ZShzZWxmLCBvcHRp
b25zLCBhcmdzLCB0b29sKToKICAgICAgICAgaWYgbm90IGFyZ3M6CiAgICAgICAgICAgICBlcnJv
cigiJXMgYXJndW1lbnQgaXMgcmVxdWlyZWQiICUgc2VsZi5hcmd1bWVudF9uYW1lcykKIAogICAg
ICAgICBjb21taXRfaWRzID0gdG9vbC5zY20oKS5jb21taXRfaWRzX2Zyb21fY29tbWl0aXNoX2Fy
Z3VtZW50cyhhcmdzKQotICAgICAgICBpZiBsZW4oY29tbWl0X2lkcykgPiAxMDoKLSAgICAgICAg
ICAgIGVycm9yKCJBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gYXR0YWNoICVzIHBhdGNoZXM/IiAl
IChwbHVyYWxpemUoJ3BhdGNoJywgbGVuKGNvbW1pdF9pZHMpKSkpCi0gICAgICAgICAgICAjIENv
dWxkIGFkZCBhIC0tcGF0Y2hlcy1saW1pdCBvcHRpb24uCisgICAgICAgIGlmIGxlbihjb21taXRf
aWRzKSA+IDEwOiAjIFdlIGNvdWxkIGxvd2VyIHRoaXMgbGltaXQsIDEwIGlzIHRvbyBtYW55IGZv
ciBvbmUgYnVnIGFzLWlzLgorICAgICAgICAgICAgZXJyb3IoImJ1Z3ppbGxhLXRvb2wgZG9lcyBu
b3Qgc3VwcG9ydCBhdHRhY2hpbmcgJXMgYXQgb25jZS4gIEFyZSB5b3Ugc3VyZSB5b3UgcGFzc2Vk
IHRoZSByaWdodCBjb21taXQgcmFuZ2U/IiAlIChwbHVyYWxpemUoJ3BhdGNoJywgbGVuKGNvbW1p
dF9pZHMpKSkpCiAKICAgICAgICAgaGF2ZV9vYnNvbGV0ZWRfcGF0Y2hlcyA9IHNldCgpCiAgICAg
ICAgIGZvciBjb21taXRfaWQgaW4gY29tbWl0X2lkczoKLSAgICAgICAgICAgICMgRklYTUU6IGNv
bW1pdF9tZXNzYWdlIGlzIHRoZSB3cm9uZyBwbGFjZSB0byBsb29rIGZvciB0aGUgYnVnX2lkCi0g
ICAgICAgICAgICAjIHRoZSBDaGFuZ2VMb2dzIHNob3VsZCBoYXZlIHRoZSBidWcgaWQsIGJ1dCB0
aGUgbG9jYWwgY29tbWl0IG1lc3NhZ2UgbWlnaHQgbm90LgogICAgICAgICAgICAgY29tbWl0X21l
c3NhZ2UgPSB0b29sLnNjbSgpLmNvbW1pdF9tZXNzYWdlX2Zvcl9sb2NhbF9jb21taXQoY29tbWl0
X2lkKQogCi0gICAgICAgICAgICBidWdfaWQgPSBvcHRpb25zLmJ1Z19pZCBvciBwYXJzZV9idWdf
aWQoY29tbWl0X21lc3NhZ2UubWVzc2FnZSgpKQorICAgICAgICAgICAgIyBQZXJmZXIgLS1idWct
aWQ9LCB0aGVuIGEgYnVnIHVybCBpbiB0aGUgY29tbWl0IG1lc3NhZ2UsIHRoZW4gYSBidWcgdXJs
IGluIHRoZSBlbnRpcmUgY29tbWl0IGRpZmYgKGkuZS4gQ2hhbmdlTG9ncykuCisgICAgICAgICAg
ICBidWdfaWQgPSBvcHRpb25zLmJ1Z19pZCBvciBwYXJzZV9idWdfaWQoY29tbWl0X21lc3NhZ2Uu
bWVzc2FnZSgpKSBvciBwYXJzZV9idWdfaWQodG9vbC5zY20oKS5jcmVhdGVfcGF0Y2hfZnJvbV9s
b2NhbF9jb21taXQoY29tbWl0X2lkKSkKICAgICAgICAgICAgIGlmIG5vdCBidWdfaWQ6Ci0gICAg
ICAgICAgICAgICAgbG9nKCJTa2lwcGluZyAlczogTm8gYnVnIGlkIGZvdW5kIGluIGNvbW1pdCBs
b2cgb3Igc3BlY2lmaWVkIHdpdGggLS1idWctaWQuIiAlIGNvbW1pdF9pZCkKKyAgICAgICAgICAg
ICAgICBsb2coIlNraXBwaW5nICVzOiBObyBidWcgdXJsIGZvdW5kIGluIGNvbW1pdCBvciBzcGVj
aWZpZWQgd2l0aCAtLWJ1Zy1pZC4iICUgY29tbWl0X2lkKQogICAgICAgICAgICAgICAgIGNvbnRp
bnVlCiAKICAgICAgICAgICAgIGlmIG9wdGlvbnMub2Jzb2xldGVfcGF0Y2hlcyBhbmQgYnVnX2lk
IG5vdCBpbiBoYXZlX29ic29sZXRlZF9wYXRjaGVzOgogICAgICAgICAgICAgICAgIFBvc3REaWZm
QXNQYXRjaFRvQnVnLm9ic29sZXRlX3BhdGNoZXNfb25fYnVnKGJ1Z19pZCwgdG9vbC5idWdzKQog
ICAgICAgICAgICAgICAgIGhhdmVfb2Jzb2xldGVkX3BhdGNoZXMuYWRkKGJ1Z19pZCkKIAorICAg
ICAgICAgICAgZGlmZl9maWxlID0gc2VsZi5fZGlmZl9maWxlX2Zvcl9jb21taXQodG9vbCwgY29t
bWl0X2lkKQogICAgICAgICAgICAgZGVzY3JpcHRpb24gPSBvcHRpb25zLmRlc2NyaXB0aW9uIG9y
IGNvbW1pdF9tZXNzYWdlLmRlc2NyaXB0aW9uKGxzdHJpcD1UcnVlLCBzdHJpcF91cmw9VHJ1ZSkK
LSAgICAgICAgICAgIGNvbW1lbnRfdGV4dCA9IE5vbmUKLSAgICAgICAgICAgIGlmIChvcHRpb25z
LmNvbW1lbnQpOgotICAgICAgICAgICAgICAgIGNvbW1lbnRfdGV4dCA9IGNvbW1pdF9tZXNzYWdl
LmJvZHkobHN0cmlwPVRydWUpCi0gICAgICAgICAgICAgICAgY29tbWVudF90ZXh0ICs9ICItLS1c
biIKLSAgICAgICAgICAgICAgICBjb21tZW50X3RleHQgKz0gdG9vbC5zY20oKS5maWxlc19jaGFu
Z2VkX3N1bW1hcnlfZm9yX2NvbW1pdChjb21taXRfaWQpCi0KLSAgICAgICAgICAgIGRpZmYgPSB0
b29sLnNjbSgpLmNyZWF0ZV9wYXRjaF9mcm9tX2xvY2FsX2NvbW1pdChjb21taXRfaWQpCi0gICAg
ICAgICAgICBkaWZmX2ZpbGUgPSBTdHJpbmdJTy5TdHJpbmdJTyhkaWZmKSAjIGFkZF9wYXRjaF90
b19idWcgZXhwZWN0cyBhIGZpbGUtbGlrZSBvYmplY3QKKyAgICAgICAgICAgIGNvbW1lbnRfdGV4
dCA9IHNlbGYuX2NvbW1lbnRfdGV4dF9mb3JfY29tbWl0KG9wdGlvbnMsIGNvbW1pdF9tZXNzYWdl
LCB0b29sLCBjb21taXRfaWQpCiAgICAgICAgICAgICB0b29sLmJ1Z3MuYWRkX3BhdGNoX3RvX2J1
ZyhidWdfaWQsIGRpZmZfZmlsZSwgZGVzY3JpcHRpb24sIGNvbW1lbnRfdGV4dCwgbWFya19mb3Jf
cmV2aWV3PW9wdGlvbnMucmV2aWV3KQ==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39662</attachid>
            <date>2009-09-16 15:26:24 -0700</date>
            <delta_ts>2009-09-18 15:54:26 -0700</delta_ts>
            <desc>post-diff cleanups</desc>
            <filename>bug-29206-20090916152622.patch</filename>
            <type>text/plain</type>
            <size>7892</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCA5MDgwNDNiLi45OTZmYTJiIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMDktMDkt
MTEgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIHBvc3QtZGlmZiBhbmQgcG9zdC1jb21taXRzIHNo
b3VsZCBiZSBhYmxlIHRvIGZpbmQgYnVnIHVybHMgaW4gQ2hhbmdlTG9ncy4KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5MjA2CisKKyAgICAgICAgKiBT
Y3JpcHRzL2J1Z3ppbGxhLXRvb2w6CisgICAgICAgICAtIFNoYXJlIGNvbW1vbiBvcHRpb25zIGJ5
IGFkZGluZyBhIFBvc3REaWZmQXNQYXRjaFRvQnVnLnBvc3Rpbmdfb3B0aW9ucygpIG1ldGhvZC4K
KyAgICAgICAgIC0gUmVuYW1lIC0tbm8tY29tbWVudCB0byAtLWFkZC1sb2ctYXMtY29tbWVudCBh
bmQgcmV2ZXJzZSBiZWhhdmlvci4KKyAgICAgICAgICAgQ29tbWVudHMgdGVuZCB0byBqdXN0IGJl
IG5vaXNlLiAgSSdsbCBldmVudHVhbGx5IHJlbW92ZSB0aGlzIGFyZ3VtZW50IGlmIG5vIG9uZSB1
c2VzIGl0LgorICAgICAgICAgLSBTcGxpdCBvdXQgY29kZSBpbnRvIGhlbHBlciBmdW5jdGlvbnMg
dG8gdHJ5IGFuZCBtYWtlIGV4ZWN1dGUoKSBtb3JlIGxlZ2libGUuCisgICAgICAgICAtIE1ha2Ug
cG9zdC1kaWZmIGZpbmQgdGhlIGJ1ZyB1cmwgaW4gdGhlIENoYW5nZUxvZ3MgaWYgbm90IHBhc3Nl
ZCBhcyBhbiBhcmd1bWVudC4KKyAgICAgICAgIC0gRmFsbGJhY2sgdG8gYnVnIHVybHMgaW4gY29t
bWl0IGRpZmZzLCBpbnN0ZWFkIG9mIGp1c3QgaW4gY29tbWl0IG1lc3NhZ2VzLAorICAgICAgICAg
ICBtZWFuaW5nIHBvc3QtY29tbWl0cyB3aWxsIG5vdyBmaW5kIGJ1ZyB1cmxzIGluIENoYW5nZUxv
Z3MuCisKIDIwMDktMDktMTYgIEtldmluIE9sbGl2aWVyICA8a2V2aW5vQHRoZW9sbGl2aWVycy5j
b20+CiAKICAgICAgICAgd3ggYnVpbGQgZml4LCBpbXByb3ZlIGRlYnVnIHN1cHBvcnQgYW5kIDIu
OSBzdXBwb3J0IG9uIE1TVy4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvYnVnemls
bGEtdG9vbCBiL1dlYktpdFRvb2xzL1NjcmlwdHMvYnVnemlsbGEtdG9vbAppbmRleCA0NmIxYmQ5
Li4zYmNjNTQ5IDEwMDc1NQotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL2J1Z3ppbGxhLXRvb2wK
KysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy9idWd6aWxsYS10b29sCkBAIC00NTksMTEgKzQ1OSwx
NyBAQCBjbGFzcyBPYnNvbGV0ZUF0dGFjaG1lbnRzT25CdWcoQ29tbWFuZCk6CiBjbGFzcyBQb3N0
RGlmZkFzUGF0Y2hUb0J1ZyhDb21tYW5kKToKICAgICBkZWYgX19pbml0X18oc2VsZik6CiAgICAg
ICAgIG9wdGlvbnMgPSBbCisgICAgICAgICAgICBtYWtlX29wdGlvbigiLW0iLCAiLS1kZXNjcmlw
dGlvbiIsIGFjdGlvbj0ic3RvcmUiLCB0eXBlPSJzdHJpbmciLCBkZXN0PSJkZXNjcmlwdGlvbiIs
IGhlbHA9IkRlc2NyaXB0aW9uIHN0cmluZyBmb3IgdGhlIGF0dGFjaG1lbnQgKGRlZmF1bHQ6ICdw
YXRjaCcpIiksCisgICAgICAgIF0KKyAgICAgICAgb3B0aW9ucyArPSBzZWxmLnBvc3Rpbmdfb3B0
aW9ucygpCisgICAgICAgIENvbW1hbmQuX19pbml0X18oc2VsZiwgJ0F0dGFjaGVzIHRoZSBjdXJy
ZW50IHdvcmtpbmcgZGlyZWN0b3J5IGRpZmYgdG8gYSBidWcgYXMgYSBwYXRjaCBmaWxlLicsICdb
QlVHSURdJywgb3B0aW9ucz1vcHRpb25zKQorCisgICAgQHN0YXRpY21ldGhvZAorICAgIGRlZiBw
b3N0aW5nX29wdGlvbnMoKToKKyAgICAgICAgcmV0dXJuIFsKICAgICAgICAgICAgIG1ha2Vfb3B0
aW9uKCItLW5vLW9ic29sZXRlIiwgYWN0aW9uPSJzdG9yZV9mYWxzZSIsIGRlc3Q9Im9ic29sZXRl
X3BhdGNoZXMiLCBkZWZhdWx0PVRydWUsIGhlbHA9IkRvIG5vdCBvYnNvbGV0ZSBvbGQgcGF0Y2hl
cyBiZWZvcmUgcG9zdGluZyB0aGlzIG9uZS4iKSwKICAgICAgICAgICAgIG1ha2Vfb3B0aW9uKCIt
LW5vLXJldmlldyIsIGFjdGlvbj0ic3RvcmVfZmFsc2UiLCBkZXN0PSJyZXZpZXciLCBkZWZhdWx0
PVRydWUsIGhlbHA9IkRvIG5vdCBtYXJrIHRoZSBwYXRjaCBmb3IgcmV2aWV3LiIpLAotICAgICAg
ICAgICAgbWFrZV9vcHRpb24oIi1tIiwgIi0tZGVzY3JpcHRpb24iLCBhY3Rpb249InN0b3JlIiwg
dHlwZT0ic3RyaW5nIiwgZGVzdD0iZGVzY3JpcHRpb24iLCBoZWxwPSJEZXNjcmlwdGlvbiBzdHJp
bmcgZm9yIHRoZSBhdHRhY2htZW50IChkZWZhdWx0OiAncGF0Y2gnKSIpLAogICAgICAgICBdCi0g
ICAgICAgIENvbW1hbmQuX19pbml0X18oc2VsZiwgJ0F0dGFjaGVzIHRoZSBjdXJyZW50IHdvcmtp
bmcgZGlyZWN0b3J5IGRpZmYgdG8gYSBidWcgYXMgYSBwYXRjaCBmaWxlLicsICdCVUdJRCcsIG9w
dGlvbnM9b3B0aW9ucykKIAogICAgIEBzdGF0aWNtZXRob2QKICAgICBkZWYgb2Jzb2xldGVfcGF0
Y2hlc19vbl9idWcoYnVnX2lkLCBidWdzKToKQEAgLTQ3NCw3ICs0ODAsMTAgQEAgY2xhc3MgUG9z
dERpZmZBc1BhdGNoVG9CdWcoQ29tbWFuZCk6CiAgICAgICAgICAgICAgICAgYnVncy5vYnNvbGV0
ZV9hdHRhY2htZW50KHBhdGNoWydpZCddKQogCiAgICAgZGVmIGV4ZWN1dGUoc2VsZiwgb3B0aW9u
cywgYXJncywgdG9vbCk6Ci0gICAgICAgIGJ1Z19pZCA9IGFyZ3NbMF0KKyAgICAgICAgIyBQZXJm
ZXIgYSBidWcgaWQgcGFzc2VkIGFzIGFuIGFyZ3VtZW50IG92ZXIgYSBidWcgdXJsIGluIHRoZSBk
aWZmIChpLmUuIENoYW5nZUxvZ3MpLgorICAgICAgICBidWdfaWQgPSAoYXJncyBhbmQgYXJnc1sw
XSkgb3IgcGFyc2VfYnVnX2lkKHRvb2wuc2NtKCkuY3JlYXRlX3BhdGNoKCkpCisgICAgICAgIGlm
IG5vdCBidWdfaWQ6CisgICAgICAgICAgICBlcnJvcigiTm8gYnVnIGlkIHBhc3NlZCBhbmQgbm8g
YnVnIHVybCBmb3VuZCBpbiBkaWZmLCBjYW4ndCBwb3N0LiIpCiAKICAgICAgICAgaWYgb3B0aW9u
cy5vYnNvbGV0ZV9wYXRjaGVzOgogICAgICAgICAgICAgc2VsZi5vYnNvbGV0ZV9wYXRjaGVzX29u
X2J1ZyhidWdfaWQsIHRvb2wuYnVncykKQEAgLTQ5MCw0NiArNDk5LDQ5IEBAIGNsYXNzIFBvc3RD
b21taXRzQXNQYXRjaGVzVG9CdWcoQ29tbWFuZCk6CiAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgog
ICAgICAgICBvcHRpb25zID0gWwogICAgICAgICAgICAgbWFrZV9vcHRpb24oIi1iIiwgIi0tYnVn
LWlkIiwgYWN0aW9uPSJzdG9yZSIsIHR5cGU9InN0cmluZyIsIGRlc3Q9ImJ1Z19pZCIsIGhlbHA9
IlNwZWNpZnkgYnVnIGlkIGlmIG5vIFVSTCBpcyBwcm92aWRlZCBpbiB0aGUgY29tbWl0IGxvZy4i
KSwKLSAgICAgICAgICAgIG1ha2Vfb3B0aW9uKCItLW5vLWNvbW1lbnQiLCBhY3Rpb249InN0b3Jl
X2ZhbHNlIiwgZGVzdD0iY29tbWVudCIsIGRlZmF1bHQ9VHJ1ZSwgaGVscD0iRG8gbm90IHVzZSBj
b21taXQgbG9nIG1lc3NhZ2UgYXMgYSBjb21tZW50IGZvciB0aGUgcGF0Y2guIiksCi0gICAgICAg
ICAgICBtYWtlX29wdGlvbigiLS1uby1vYnNvbGV0ZSIsIGFjdGlvbj0ic3RvcmVfZmFsc2UiLCBk
ZXN0PSJvYnNvbGV0ZV9wYXRjaGVzIiwgZGVmYXVsdD1UcnVlLCBoZWxwPSJEbyBub3Qgb2Jzb2xl
dGUgb2xkIHBhdGNoZXMgYmVmb3JlIHBvc3RpbmcgbmV3IG9uZXMuIiksCi0gICAgICAgICAgICBt
YWtlX29wdGlvbigiLS1uby1yZXZpZXciLCBhY3Rpb249InN0b3JlX2ZhbHNlIiwgZGVzdD0icmV2
aWV3IiwgZGVmYXVsdD1UcnVlLCBoZWxwPSJEbyBub3QgbWFyayB0aGUgcGF0Y2ggZm9yIHJldmll
dy4iKSwKLSAgICAgICAgICAgIG1ha2Vfb3B0aW9uKCItbSIsICItLWRlc2NyaXB0aW9uIiwgYWN0
aW9uPSJzdG9yZSIsIHR5cGU9InN0cmluZyIsIGRlc3Q9ImRlc2NyaXB0aW9uIiwgaGVscD0iRGVz
Y3JpcHRpb24gc3RyaW5nIGZvciB0aGUgYXR0YWNobWVudCAoZGVmYXVsdDogJ3BhdGNoJykiKSwK
KyAgICAgICAgICAgIG1ha2Vfb3B0aW9uKCItLWFkZC1sb2ctYXMtY29tbWVudCIsIGFjdGlvbj0i
c3RvcmVfdHJ1ZSIsIGRlc3Q9ImFkZF9sb2dfYXNfY29tbWVudCIsIGRlZmF1bHQ9RmFsc2UsIGhl
bHA9IkFkZCBjb21taXQgbG9nIG1lc3NhZ2UgYXMgYSBjb21tZW50IHdoZW4gdXBsb2FkaW5nIHRo
ZSBwYXRjaC4iKSwKKyAgICAgICAgICAgIG1ha2Vfb3B0aW9uKCItbSIsICItLWRlc2NyaXB0aW9u
IiwgYWN0aW9uPSJzdG9yZSIsIHR5cGU9InN0cmluZyIsIGRlc3Q9ImRlc2NyaXB0aW9uIiwgaGVs
cD0iRGVzY3JpcHRpb24gc3RyaW5nIGZvciB0aGUgYXR0YWNobWVudCAoZGVmYXVsdDogZGVzY3Jp
cHRpb24gZnJvbSBjb21taXQgbWVzc2FnZSkiKSwKICAgICAgICAgXQorICAgICAgICBvcHRpb25z
ICs9IFBvc3REaWZmQXNQYXRjaFRvQnVnLnBvc3Rpbmdfb3B0aW9ucygpCiAgICAgICAgIENvbW1h
bmQuX19pbml0X18oc2VsZiwgJ0F0dGFjaGVzIGEgcmFuZ2Ugb2YgbG9jYWwgY29tbWl0cyB0byBi
dWdzIGFzIHBhdGNoIGZpbGVzLicsICdDT01NSVRJU0gnLCBvcHRpb25zPW9wdGlvbnMsIHJlcXVp
cmVzX2xvY2FsX2NvbW1pdHM9VHJ1ZSkKIAorICAgIGRlZiBfY29tbWVudF90ZXh0X2Zvcl9jb21t
aXQoc2VsZiwgb3B0aW9ucywgY29tbWl0X21lc3NhZ2UsIHRvb2wsIGNvbW1pdF9pZCk6CisgICAg
ICAgIGNvbW1lbnRfdGV4dCA9IE5vbmUKKyAgICAgICAgaWYgKG9wdGlvbnMuYWRkX2xvZ19hc19j
b21tZW50KToKKyAgICAgICAgICAgIGNvbW1lbnRfdGV4dCA9IGNvbW1pdF9tZXNzYWdlLmJvZHko
bHN0cmlwPVRydWUpCisgICAgICAgICAgICBjb21tZW50X3RleHQgKz0gIi0tLVxuIgorICAgICAg
ICAgICAgY29tbWVudF90ZXh0ICs9IHRvb2wuc2NtKCkuZmlsZXNfY2hhbmdlZF9zdW1tYXJ5X2Zv
cl9jb21taXQoY29tbWl0X2lkKQorICAgICAgICByZXR1cm4gY29tbWVudF90ZXh0CisKKyAgICBk
ZWYgX2RpZmZfZmlsZV9mb3JfY29tbWl0KHNlbGYsIHRvb2wsIGNvbW1pdF9pZCk6CisgICAgICAg
IGRpZmYgPSB0b29sLnNjbSgpLmNyZWF0ZV9wYXRjaF9mcm9tX2xvY2FsX2NvbW1pdChjb21taXRf
aWQpCisgICAgICAgIHJldHVybiBTdHJpbmdJTy5TdHJpbmdJTyhkaWZmKSAjIGFkZF9wYXRjaF90
b19idWcgZXhwZWN0cyBhIGZpbGUtbGlrZSBvYmplY3QKKwogICAgIGRlZiBleGVjdXRlKHNlbGYs
IG9wdGlvbnMsIGFyZ3MsIHRvb2wpOgogICAgICAgICBpZiBub3QgYXJnczoKICAgICAgICAgICAg
IGVycm9yKCIlcyBhcmd1bWVudCBpcyByZXF1aXJlZCIgJSBzZWxmLmFyZ3VtZW50X25hbWVzKQog
CiAgICAgICAgIGNvbW1pdF9pZHMgPSB0b29sLnNjbSgpLmNvbW1pdF9pZHNfZnJvbV9jb21taXRp
c2hfYXJndW1lbnRzKGFyZ3MpCi0gICAgICAgIGlmIGxlbihjb21taXRfaWRzKSA+IDEwOgotICAg
ICAgICAgICAgZXJyb3IoIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBhdHRhY2ggJXMgcGF0Y2hl
cz8iICUgKHBsdXJhbGl6ZSgncGF0Y2gnLCBsZW4oY29tbWl0X2lkcykpKSkKLSAgICAgICAgICAg
ICMgQ291bGQgYWRkIGEgLS1wYXRjaGVzLWxpbWl0IG9wdGlvbi4KKyAgICAgICAgaWYgbGVuKGNv
bW1pdF9pZHMpID4gMTA6ICMgV2UgY291bGQgbG93ZXIgdGhpcyBsaW1pdCwgMTAgaXMgdG9vIG1h
bnkgZm9yIG9uZSBidWcgYXMtaXMuCisgICAgICAgICAgICBlcnJvcigiYnVnemlsbGEtdG9vbCBk
b2VzIG5vdCBzdXBwb3J0IGF0dGFjaGluZyAlcyBhdCBvbmNlLiAgQXJlIHlvdSBzdXJlIHlvdSBw
YXNzZWQgdGhlIHJpZ2h0IGNvbW1pdCByYW5nZT8iICUgKHBsdXJhbGl6ZSgncGF0Y2gnLCBsZW4o
Y29tbWl0X2lkcykpKSkKIAogICAgICAgICBoYXZlX29ic29sZXRlZF9wYXRjaGVzID0gc2V0KCkK
ICAgICAgICAgZm9yIGNvbW1pdF9pZCBpbiBjb21taXRfaWRzOgotICAgICAgICAgICAgIyBGSVhN
RTogY29tbWl0X21lc3NhZ2UgaXMgdGhlIHdyb25nIHBsYWNlIHRvIGxvb2sgZm9yIHRoZSBidWdf
aWQKLSAgICAgICAgICAgICMgdGhlIENoYW5nZUxvZ3Mgc2hvdWxkIGhhdmUgdGhlIGJ1ZyBpZCwg
YnV0IHRoZSBsb2NhbCBjb21taXQgbWVzc2FnZSBtaWdodCBub3QuCiAgICAgICAgICAgICBjb21t
aXRfbWVzc2FnZSA9IHRvb2wuc2NtKCkuY29tbWl0X21lc3NhZ2VfZm9yX2xvY2FsX2NvbW1pdChj
b21taXRfaWQpCiAKLSAgICAgICAgICAgIGJ1Z19pZCA9IG9wdGlvbnMuYnVnX2lkIG9yIHBhcnNl
X2J1Z19pZChjb21taXRfbWVzc2FnZS5tZXNzYWdlKCkpCisgICAgICAgICAgICAjIFBlcmZlciAt
LWJ1Zy1pZD0sIHRoZW4gYSBidWcgdXJsIGluIHRoZSBjb21taXQgbWVzc2FnZSwgdGhlbiBhIGJ1
ZyB1cmwgaW4gdGhlIGVudGlyZSBjb21taXQgZGlmZiAoaS5lLiBDaGFuZ2VMb2dzKS4KKyAgICAg
ICAgICAgIGJ1Z19pZCA9IG9wdGlvbnMuYnVnX2lkIG9yIHBhcnNlX2J1Z19pZChjb21taXRfbWVz
c2FnZS5tZXNzYWdlKCkpIG9yIHBhcnNlX2J1Z19pZCh0b29sLnNjbSgpLmNyZWF0ZV9wYXRjaF9m
cm9tX2xvY2FsX2NvbW1pdChjb21taXRfaWQpKQogICAgICAgICAgICAgaWYgbm90IGJ1Z19pZDoK
LSAgICAgICAgICAgICAgICBsb2coIlNraXBwaW5nICVzOiBObyBidWcgaWQgZm91bmQgaW4gY29t
bWl0IGxvZyBvciBzcGVjaWZpZWQgd2l0aCAtLWJ1Zy1pZC4iICUgY29tbWl0X2lkKQorICAgICAg
ICAgICAgICAgIGxvZygiU2tpcHBpbmcgJXM6IE5vIGJ1ZyBpZCBmb3VuZCBpbiBjb21taXQgb3Ig
c3BlY2lmaWVkIHdpdGggLS1idWctaWQuIiAlIGNvbW1pdF9pZCkKICAgICAgICAgICAgICAgICBj
b250aW51ZQogCiAgICAgICAgICAgICBpZiBvcHRpb25zLm9ic29sZXRlX3BhdGNoZXMgYW5kIGJ1
Z19pZCBub3QgaW4gaGF2ZV9vYnNvbGV0ZWRfcGF0Y2hlczoKICAgICAgICAgICAgICAgICBQb3N0
RGlmZkFzUGF0Y2hUb0J1Zy5vYnNvbGV0ZV9wYXRjaGVzX29uX2J1ZyhidWdfaWQsIHRvb2wuYnVn
cykKICAgICAgICAgICAgICAgICBoYXZlX29ic29sZXRlZF9wYXRjaGVzLmFkZChidWdfaWQpCiAK
KyAgICAgICAgICAgIGRpZmZfZmlsZSA9IHNlbGYuX2RpZmZfZmlsZV9mb3JfY29tbWl0KHRvb2ws
IGNvbW1pdF9pZCkKICAgICAgICAgICAgIGRlc2NyaXB0aW9uID0gb3B0aW9ucy5kZXNjcmlwdGlv
biBvciBjb21taXRfbWVzc2FnZS5kZXNjcmlwdGlvbihsc3RyaXA9VHJ1ZSwgc3RyaXBfdXJsPVRy
dWUpCi0gICAgICAgICAgICBjb21tZW50X3RleHQgPSBOb25lCi0gICAgICAgICAgICBpZiAob3B0
aW9ucy5jb21tZW50KToKLSAgICAgICAgICAgICAgICBjb21tZW50X3RleHQgPSBjb21taXRfbWVz
c2FnZS5ib2R5KGxzdHJpcD1UcnVlKQotICAgICAgICAgICAgICAgIGNvbW1lbnRfdGV4dCArPSAi
LS0tXG4iCi0gICAgICAgICAgICAgICAgY29tbWVudF90ZXh0ICs9IHRvb2wuc2NtKCkuZmlsZXNf
Y2hhbmdlZF9zdW1tYXJ5X2Zvcl9jb21taXQoY29tbWl0X2lkKQotCi0gICAgICAgICAgICBkaWZm
ID0gdG9vbC5zY20oKS5jcmVhdGVfcGF0Y2hfZnJvbV9sb2NhbF9jb21taXQoY29tbWl0X2lkKQot
ICAgICAgICAgICAgZGlmZl9maWxlID0gU3RyaW5nSU8uU3RyaW5nSU8oZGlmZikgIyBhZGRfcGF0
Y2hfdG9fYnVnIGV4cGVjdHMgYSBmaWxlLWxpa2Ugb2JqZWN0CisgICAgICAgICAgICBjb21tZW50
X3RleHQgPSBzZWxmLl9jb21tZW50X3RleHRfZm9yX2NvbW1pdChvcHRpb25zLCBjb21taXRfbWVz
c2FnZSwgdG9vbCwgY29tbWl0X2lkKQogICAgICAgICAgICAgdG9vbC5idWdzLmFkZF9wYXRjaF90
b19idWcoYnVnX2lkLCBkaWZmX2ZpbGUsIGRlc2NyaXB0aW9uLCBjb21tZW50X3RleHQsIG1hcmtf
Zm9yX3Jldmlldz1vcHRpb25zLnJldmlldyk=
</data>
<flag name="review"
          id="20776"
          type_id="1"
          status="+"
          setter="ddkilzer"
    />
    <flag name="commit-queue"
          id="20938"
          type_id="3"
          status="-"
          setter="ddkilzer"
    />
          </attachment>
      

    </bug>

</bugzilla>