<?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>107092</bug_id>
          
          <creation_ts>2013-01-16 21:16:29 -0800</creation_ts>
          <short_desc>Sheriffbot should explain rollout failures in a human readable form.</short_desc>
          <delta_ts>2013-03-26 01:43:00 -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>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Review Bot">webkit.review.bot</reporter>
          <assigned_to name="Alan Cutter">alancutter</assigned_to>
          <cc>abarth</cc>
    
    <cc>alancutter</cc>
    
    <cc>dpranke</cc>
    
    <cc>eric</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>809053</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-16 21:16:29 -0800</bug_when>
    <thetext>Sheriffbot should explain rollout failures in a human readable form.
Requested by alancutter on #webkit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>809058</commentid>
    <comment_count>1</comment_count>
    <who name="Alan Cutter">alancutter</who>
    <bug_when>2013-01-16 21:21:18 -0800</bug_when>
    <thetext>IRC Log:

&gt; benjaminp  | sheriffbot: rollout 139947 139935 It causes 600 crashes on the WebKit2 bots
&gt; sheriffbot | benjaminp: Preparing rollout for http://trac.webkit.org/changeset/139947 and http://trac.webkit.org/changeset/139935 ...
&gt; sheriffbot | benjaminp, bradee-oh, mitzpettel, weinig: Failed to create rollout patch:
&gt; sheriffbot | Failed to run &quot;[&apos;/mnt/git/webkit-sheriff-bot/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--...&quot; exit_code: 2 cwd: /mnt/git/webkit-sheriff-bot


Sheriffbot Log:

&gt; Running: webkit-patch --status-host=queues.webkit.org --bot-id=gce-feeder-01 create-rollout --force-clean --parent-command=sheriff-bot 139947 139935 It causes 600 crashes on the WebKit2 bots (Requested by benjaminp on #webkit).
&gt; Failed to run &quot;[&apos;/mnt/git/webkit-sheriff-bot/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--...&quot; exit_code: 2 cwd: /mnt/git/webkit-sheriff-bot
&gt; 
&gt; Preparing rollout for bug 106826.
&gt; Updating working directory
&gt; Failed to apply reverse diff for revision 139935 because of the following conflicts:
&gt; Source/WebCore/WebCore.vcproj/WebCore.vcproj
&gt; Failed to apply reverse diff for revision 139935 because of the following conflicts:
&gt; Source/WebCore/WebCore.vcproj/WebCore.vcproj
&gt; Updating OpenSource
&gt; Current branch master is up to date.
&gt; 
&gt; No work item. Sleeping until 2013-01-17 04:48:54 (2 mins).
&gt; No work item. Sleeping until 2013-01-17 04:49:24 (2 mins).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>809085</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2013-01-16 22:25:13 -0800</bug_when>
    <thetext>Agreed!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>860208</commentid>
    <comment_count>3</comment_count>
      <attachid>194224</attachid>
    <who name="Alan Cutter">alancutter</who>
    <bug_when>2013-03-21 04:34:42 -0700</bug_when>
    <thetext>Created attachment 194224
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>860209</commentid>
    <comment_count>4</comment_count>
    <who name="Alan Cutter">alancutter</who>
    <bug_when>2013-03-21 04:36:53 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Created an attachment (id=194224) [details]
&gt; Patch

Sheriffbot will now respond like so:

&lt;alancutter&gt; sheriffbot: rollout 112776 Rollout failure testing.
&lt;sheriffbot&gt; alancutter: Preparing rollout for http://trac.webkit.org/changeset/112776 ...
&lt;sheriffbot&gt; alancutter, dpranke, rniwa: Failed to create rollout patch:
&lt;sheriffbot&gt; alancutter, dpranke, rniwa: Failed to apply reverse diff for file(s): Source/WebCore/rendering/RenderText.cpp, Source/WebCore/rendering/RenderText.h</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>860224</commentid>
    <comment_count>5</comment_count>
      <attachid>194231</attachid>
    <who name="Alan Cutter">alancutter</who>
    <bug_when>2013-03-21 04:58:27 -0700</bug_when>
    <thetext>Created attachment 194231
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>860226</commentid>
    <comment_count>6</comment_count>
    <who name="Alan Cutter">alancutter</who>
    <bug_when>2013-03-21 05:00:04 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Created an attachment (id=194231) [details]
&gt; Patch

 - Fixed issue where the new error would not be displayed if sheriffbot&apos;s working directory was not the repository.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>860303</commentid>
    <comment_count>7</comment_count>
      <attachid>194231</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2013-03-21 07:04:19 -0700</bug_when>
    <thetext>Comment on attachment 194231
Patch

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

&gt; Tools/Scripts/webkitpy/tool/bot/irc_command.py:249
&gt; +            if os.path.exists(tool.scm().absolute_path(line)):

Filesystem.exists</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>860792</commentid>
    <comment_count>8</comment_count>
      <attachid>194365</attachid>
    <who name="Alan Cutter">alancutter</who>
    <bug_when>2013-03-21 15:27:54 -0700</bug_when>
    <thetext>Created attachment 194365
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>860793</commentid>
    <comment_count>9</comment_count>
    <who name="Alan Cutter">alancutter</who>
    <bug_when>2013-03-21 15:30:06 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; (From update of attachment 194231 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=194231&amp;action=review
&gt; 
&gt; &gt; Tools/Scripts/webkitpy/tool/bot/irc_command.py:249
&gt; &gt; +            if os.path.exists(tool.scm().absolute_path(line)):
&gt; 
&gt; Filesystem.exists

For me this was one of those things you realise in the middle of the night that you should have done differently. Fixed in new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863304</commentid>
    <comment_count>10</comment_count>
      <attachid>194365</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-03-25 20:05:00 -0700</bug_when>
    <thetext>Comment on attachment 194365
Patch

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

Can&apos;t we add any test for this?

&gt; Tools/Scripts/webkitpy/tool/bot/irc_command.py:240
&gt; +        revert_failure_message = &quot;Failed to apply reverse diff for revision&quot;
&gt; +        index = error_log.find(revert_failure_message)

I would not have defined revert_failure_message since the semantics of the message is pretty self-evident from the code.
On the other hand, I don&apos;t like the variable name &quot;index&quot; as it&apos;s such a generic name.
What kind of index is it?

&gt; Tools/Scripts/webkitpy/tool/bot/irc_command.py:251
&gt; +        for line in lines:
&gt; +            if tool.filesystem.exists(tool.scm().absolute_path(line)):
&gt; +                files.append(line)
&gt; +            else:
&gt; +                break

Why don&apos;t we just use filter?

&gt; Tools/Scripts/webkitpy/tool/bot/irc_command.py:254
&gt; +        return

I&apos;d prefer explicitly returning None or &quot;&quot; here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863314</commentid>
    <comment_count>11</comment_count>
    <who name="Alan Cutter">alancutter</who>
    <bug_when>2013-03-25 20:26:42 -0700</bug_when>
    <thetext>(In reply to comment #10)
&gt; (From update of attachment 194365 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=194365&amp;action=review
&gt; 
&gt; Can&apos;t we add any test for this?
&gt; 
&gt; &gt; Tools/Scripts/webkitpy/tool/bot/irc_command.py:240
&gt; &gt; +        revert_failure_message = &quot;Failed to apply reverse diff for revision&quot;
&gt; &gt; +        index = error_log.find(revert_failure_message)
&gt; 
&gt; I would not have defined revert_failure_message since the semantics of the message is pretty self-evident from the code.
&gt; On the other hand, I don&apos;t like the variable name &quot;index&quot; as it&apos;s such a generic name.
&gt; What kind of index is it?
&gt; 

I&apos;ll take the variable revert_failure_message out, it&apos;s only used once anyway.
Will rename index to revert_failure_message_start as suggested in channel.

&gt; &gt; Tools/Scripts/webkitpy/tool/bot/irc_command.py:251
&gt; &gt; +        for line in lines:
&gt; &gt; +            if tool.filesystem.exists(tool.scm().absolute_path(line)):
&gt; &gt; +                files.append(line)
&gt; &gt; +            else:
&gt; &gt; +                break
&gt; 
&gt; Why don&apos;t we just use filter?

Filter will grab all paths in the list, I need this to stop once it hits. I could use itertools.takewhile instead to reduce the lines of code.

&gt; 
&gt; &gt; Tools/Scripts/webkitpy/tool/bot/irc_command.py:254
&gt; &gt; +        return
&gt; 
&gt; I&apos;d prefer explicitly returning None or &quot;&quot; here.

Will return None instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863407</commentid>
    <comment_count>12</comment_count>
      <attachid>195017</attachid>
    <who name="Alan Cutter">alancutter</who>
    <bug_when>2013-03-25 23:44:55 -0700</bug_when>
    <thetext>Created attachment 195017
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863409</commentid>
    <comment_count>13</comment_count>
    <who name="Alan Cutter">alancutter</who>
    <bug_when>2013-03-25 23:49:09 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; Created an attachment (id=195017) [details]
&gt; Patch

Made changes based on the review.

Tested this change on Linux and Mac.
Sheriffbot&apos;s rollout command doesn&apos;t seem to work on Windows and I don&apos;t anticipate sheriffbot to be hosted on Windows.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863410</commentid>
    <comment_count>14</comment_count>
      <attachid>195017</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-03-25 23:53:09 -0700</bug_when>
    <thetext>Comment on attachment 195017
Patch

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

&gt; Tools/Scripts/webkitpy/tool/bot/irc_command.py:243
&gt; +        # Pull out file paths after the error message.

I don&apos;t think this comment is helpful. Please remove.

&gt; Tools/Scripts/webkitpy/tool/bot/irc_command.py:248
&gt; +        if files:
&gt; +            return &quot;Failed to apply reverse diff for file(s): %s&quot; % &quot;, &quot;.join(files)
&gt; +        return None

I would have used tertiary here as in: return &quot;~&quot; if files else None but it&apos;s not a big deal.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863420</commentid>
    <comment_count>15</comment_count>
      <attachid>195021</attachid>
    <who name="Alan Cutter">alancutter</who>
    <bug_when>2013-03-26 00:30:36 -0700</bug_when>
    <thetext>Created attachment 195021
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863421</commentid>
    <comment_count>16</comment_count>
    <who name="Alan Cutter">alancutter</who>
    <bug_when>2013-03-26 00:33:15 -0700</bug_when>
    <thetext>(In reply to comment #15)
&gt; Created an attachment (id=195021) [details]
&gt; Patch

(In reply to comment #14)
&gt; (From update of attachment 195017 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=195017&amp;action=review
&gt; 
&gt; &gt; Tools/Scripts/webkitpy/tool/bot/irc_command.py:243
&gt; &gt; +        # Pull out file paths after the error message.
&gt; 
&gt; I don&apos;t think this comment is helpful. Please remove.
&gt; 

Removed comment.


Added a couple of unit tests for the function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863456</commentid>
    <comment_count>17</comment_count>
      <attachid>195021</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-26 01:42:55 -0700</bug_when>
    <thetext>Comment on attachment 195021
Patch

Clearing flags on attachment: 195021

Committed r146861: &lt;http://trac.webkit.org/changeset/146861&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863457</commentid>
    <comment_count>18</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-26 01:43:00 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>194224</attachid>
            <date>2013-03-21 04:34:42 -0700</date>
            <delta_ts>2013-03-21 04:58:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107092-20130321223030.patch</filename>
            <type>text/plain</type>
            <size>2756</size>
            <attacher name="Alan Cutter">alancutter</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ2NDUxCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMmEyYThiNjBhYjgxOTAxYmMzNDJiYTEyMzJjMDlhZThk
ZGI2MzNlYi4uMzYyNmE5NTU4NjI3YzhiNTgxMDMyMDM3ZmM1YjQ4N2Q5NDA5NjU0YiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2
IEBACisyMDEzLTAzLTIxICBBbGFuIEN1dHRlciAgPGFsYW5jdXR0ZXJAY2hyb21pdW0ub3JnPgor
CisgICAgICAgIFNoZXJpZmZib3Qgc2hvdWxkIGV4cGxhaW4gcm9sbG91dCBmYWlsdXJlcyBpbiBh
IGh1bWFuIHJlYWRhYmxlIGZvcm0uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMDcwOTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBJbXByb3ZlZCBzaGVyaWZmYm90J3MgZXJyb3IgcmVwb3J0aW5nIHdoZW4g
cm9sbG91dCBmYWlscyB0byByZXZlcnQgZmlsZXMuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtp
dHB5L3Rvb2wvYm90L2lyY19jb21tYW5kLnB5OgorICAgICAgICAoUm9sbG91dC5fY2hlY2tfZGlm
Zl9mYWlsdXJlKToKKyAgICAgICAgKFJvbGxvdXQuZXhlY3V0ZSk6CisKIDIwMTMtMDMtMjAgIFJ5
b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgRVdTIGJvdHMgaGF2ZSBz
dG9wcGVkIHVwbG9hZGluZyByZXN1bHRzIHRvIGJ1Z3ppbGxhCmRpZmYgLS1naXQgYS9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L2lyY19jb21tYW5kLnB5IGIvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS90b29sL2JvdC9pcmNfY29tbWFuZC5weQppbmRleCBjMTY4Mzc2NzQ4Nzg3ZDQ4NGE4
OWFhMzk3MTRhNzY5NWI4NGZmNjFlLi45Yjk1MGYyMjZlYjZmY2U1ZDBlMjQ3ZjA0NjEyMjNhYTFk
M2RmZTNlIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L2lyY19j
b21tYW5kLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvaXJjX2NvbW1h
bmQucHkKQEAgLTI5LDYgKzI5LDcgQEAKIGltcG9ydCBpdGVydG9vbHMKIGltcG9ydCByYW5kb20K
IGltcG9ydCByZQoraW1wb3J0IG9zCiAKIGZyb20gd2Via2l0cHkuY29tbW9uLmNvbmZpZyBpbXBv
cnQgaXJjIGFzIGNvbmZpZ19pcmMKIGZyb20gd2Via2l0cHkuY29tbW9uLmNvbmZpZyBpbXBvcnQg
dXJscwpAQCAtMjMyLDYgKzIzMywyNyBAQCBjbGFzcyBSb2xsb3V0KElSQ0NvbW1hbmQpOgogICAg
ICAgICB0b29sLnNjbSgpLmRpc2NhcmRfbG9jYWxfY2hhbmdlcygpCiAgICAgICAgIHRvb2wuZXhl
Y3V0aXZlLnJ1bl9hbmRfdGhyb3dfaWZfZmFpbCh0b29sLmRlcHJlY2F0ZWRfcG9ydCgpLnVwZGF0
ZV93ZWJraXRfY29tbWFuZCgpLCBxdWlldD1UcnVlLCBjd2Q9dG9vbC5zY20oKS5jaGVja291dF9y
b290KQogCisgICAgZGVmIF9jaGVja19kaWZmX2ZhaWx1cmUoc2VsZiwgZXJyb3JfbG9nKToKKyAg
ICAgICAgaWYgbm90IGVycm9yX2xvZzoKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIHJl
dmVydF9mYWlsdXJlX21lc3NhZ2UgPSAiRmFpbGVkIHRvIGFwcGx5IHJldmVyc2UgZGlmZiBmb3Ig
cmV2aXNpb24iCisgICAgICAgIGluZGV4ID0gZXJyb3JfbG9nLmZpbmQocmV2ZXJ0X2ZhaWx1cmVf
bWVzc2FnZSkKKyAgICAgICAgaWYgaW5kZXggPT0gLTE6CisgICAgICAgICAgICByZXR1cm4KKwor
ICAgICAgICAjIFB1bGwgb3V0IGZpbGUgcGF0aHMgYWZ0ZXIgdGhlIGVycm9yIG1lc3NhZ2UuCisg
ICAgICAgIGxpbmVzID0gZXJyb3JfbG9nW2luZGV4Ol0uc3BsaXQoJ1xuJylbMTpdCisgICAgICAg
IGZpbGVzID0gW10KKyAgICAgICAgZm9yIGxpbmUgaW4gbGluZXM6CisgICAgICAgICAgICBpZiBv
cy5wYXRoLmV4aXN0cyhsaW5lKToKKyAgICAgICAgICAgICAgICBmaWxlcy5hcHBlbmQobGluZSkK
KyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgaWYgZmls
ZXM6CisgICAgICAgICAgICByZXR1cm4gIkZhaWxlZCB0byBhcHBseSByZXZlcnNlIGRpZmYgZm9y
IGZpbGUocyk6ICVzIiAlICIsICIuam9pbihmaWxlcykKKyAgICAgICAgcmV0dXJuCisKICAgICBk
ZWYgZXhlY3V0ZShzZWxmLCBuaWNrLCBhcmdzLCB0b29sLCBzaGVyaWZmKToKICAgICAgICAgc3Zu
X3JldmlzaW9uX2xpc3QsIHJvbGxvdXRfcmVhc29uID0gc2VsZi5fcGFyc2VfYXJncyhhcmdzKQog
CkBAIC0yNTUsNiArMjc3LDkgQEAgY2xhc3MgUm9sbG91dChJUkNDb21tYW5kKToKICAgICAgICAg
ICAgIHRvb2wuaXJjKCkucG9zdCgiJXM6IENyZWF0ZWQgcm9sbG91dDogJXMiICUgKG5pY2tzX3N0
cmluZywgYnVnX3VybCkpCiAgICAgICAgIGV4Y2VwdCBTY3JpcHRFcnJvciwgZToKICAgICAgICAg
ICAgIHRvb2wuaXJjKCkucG9zdCgiJXM6IEZhaWxlZCB0byBjcmVhdGUgcm9sbG91dCBwYXRjaDoi
ICUgbmlja3Nfc3RyaW5nKQorICAgICAgICAgICAgZGlmZl9mYWlsdXJlID0gc2VsZi5fY2hlY2tf
ZGlmZl9mYWlsdXJlKGUub3V0cHV0KQorICAgICAgICAgICAgaWYgZGlmZl9mYWlsdXJlOgorICAg
ICAgICAgICAgICAgIHJldHVybiAiJXM6ICVzIiAlIChuaWNrc19zdHJpbmcsIGRpZmZfZmFpbHVy
ZSkKICAgICAgICAgICAgIF9wb3N0X2Vycm9yX2FuZF9jaGVja19mb3JfYnVnX3VybCh0b29sLCBu
aWNrc19zdHJpbmcsIGUpCiAKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>194231</attachid>
            <date>2013-03-21 04:58:27 -0700</date>
            <delta_ts>2013-03-21 15:27:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107092-20130321225415.patch</filename>
            <type>text/plain</type>
            <size>2836</size>
            <attacher name="Alan Cutter">alancutter</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ2NDUyCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMmEyYThiNjBhYjgxOTAxYmMzNDJiYTEyMzJjMDlhZThk
ZGI2MzNlYi4uNGUzNTZkYjhkYTExYjNlZjgzZGFhYzRjNzExNTY2YTkzZmE5OWM3MCAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2
IEBACisyMDEzLTAzLTIxICBBbGFuIEN1dHRlciAgPGFsYW5jdXR0ZXJAY2hyb21pdW0ub3JnPgor
CisgICAgICAgIFNoZXJpZmZib3Qgc2hvdWxkIGV4cGxhaW4gcm9sbG91dCBmYWlsdXJlcyBpbiBh
IGh1bWFuIHJlYWRhYmxlIGZvcm0uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMDcwOTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBJbXByb3ZlZCBzaGVyaWZmYm90J3MgZXJyb3IgcmVwb3J0aW5nIHdoZW4g
YSByb2xsb3V0IGNvbW1hbmQgZmFpbHMgdG8gcmV2ZXJzZSBkaWZmIGZpbGVzICh0aGUgbW9zdCBj
b21tb24gZmFpbHVyZSkuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L2ly
Y19jb21tYW5kLnB5OgorICAgICAgICAoUm9sbG91dC5fY2hlY2tfZGlmZl9mYWlsdXJlKToKKyAg
ICAgICAgKFJvbGxvdXQuZXhlY3V0ZSk6CisKIDIwMTMtMDMtMjAgIFJ5b3N1a2UgTml3YSAgPHJu
aXdhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgRVdTIGJvdHMgaGF2ZSBzdG9wcGVkIHVwbG9hZGlu
ZyByZXN1bHRzIHRvIGJ1Z3ppbGxhCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L3Rvb2wvYm90L2lyY19jb21tYW5kLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2Jv
dC9pcmNfY29tbWFuZC5weQppbmRleCBjMTY4Mzc2NzQ4Nzg3ZDQ4NGE4OWFhMzk3MTRhNzY5NWI4
NGZmNjFlLi5lMGI3ZWFjODJmMjg4NjU4OTVhYzRhNTNiOTFmMDY0YmViZTdmZTVlIDEwMDY0NAot
LS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L2lyY19jb21tYW5kLnB5CisrKyBi
L1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvaXJjX2NvbW1hbmQucHkKQEAgLTI5LDYg
KzI5LDcgQEAKIGltcG9ydCBpdGVydG9vbHMKIGltcG9ydCByYW5kb20KIGltcG9ydCByZQoraW1w
b3J0IG9zCiAKIGZyb20gd2Via2l0cHkuY29tbW9uLmNvbmZpZyBpbXBvcnQgaXJjIGFzIGNvbmZp
Z19pcmMKIGZyb20gd2Via2l0cHkuY29tbW9uLmNvbmZpZyBpbXBvcnQgdXJscwpAQCAtMjMyLDYg
KzIzMywyNyBAQCBjbGFzcyBSb2xsb3V0KElSQ0NvbW1hbmQpOgogICAgICAgICB0b29sLnNjbSgp
LmRpc2NhcmRfbG9jYWxfY2hhbmdlcygpCiAgICAgICAgIHRvb2wuZXhlY3V0aXZlLnJ1bl9hbmRf
dGhyb3dfaWZfZmFpbCh0b29sLmRlcHJlY2F0ZWRfcG9ydCgpLnVwZGF0ZV93ZWJraXRfY29tbWFu
ZCgpLCBxdWlldD1UcnVlLCBjd2Q9dG9vbC5zY20oKS5jaGVja291dF9yb290KQogCisgICAgZGVm
IF9jaGVja19kaWZmX2ZhaWx1cmUoc2VsZiwgZXJyb3JfbG9nLCB0b29sKToKKyAgICAgICAgaWYg
bm90IGVycm9yX2xvZzoKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIHJldmVydF9mYWls
dXJlX21lc3NhZ2UgPSAiRmFpbGVkIHRvIGFwcGx5IHJldmVyc2UgZGlmZiBmb3IgcmV2aXNpb24i
CisgICAgICAgIGluZGV4ID0gZXJyb3JfbG9nLmZpbmQocmV2ZXJ0X2ZhaWx1cmVfbWVzc2FnZSkK
KyAgICAgICAgaWYgaW5kZXggPT0gLTE6CisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICAj
IFB1bGwgb3V0IGZpbGUgcGF0aHMgYWZ0ZXIgdGhlIGVycm9yIG1lc3NhZ2UuCisgICAgICAgIGxp
bmVzID0gZXJyb3JfbG9nW2luZGV4Ol0uc3BsaXQoJ1xuJylbMTpdCisgICAgICAgIGZpbGVzID0g
W10KKyAgICAgICAgZm9yIGxpbmUgaW4gbGluZXM6CisgICAgICAgICAgICBpZiBvcy5wYXRoLmV4
aXN0cyh0b29sLnNjbSgpLmFic29sdXRlX3BhdGgobGluZSkpOgorICAgICAgICAgICAgICAgIGZp
bGVzLmFwcGVuZChsaW5lKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBicmVh
aworICAgICAgICBpZiBmaWxlczoKKyAgICAgICAgICAgIHJldHVybiAiRmFpbGVkIHRvIGFwcGx5
IHJldmVyc2UgZGlmZiBmb3IgZmlsZShzKTogJXMiICUgIiwgIi5qb2luKGZpbGVzKQorICAgICAg
ICByZXR1cm4KKwogICAgIGRlZiBleGVjdXRlKHNlbGYsIG5pY2ssIGFyZ3MsIHRvb2wsIHNoZXJp
ZmYpOgogICAgICAgICBzdm5fcmV2aXNpb25fbGlzdCwgcm9sbG91dF9yZWFzb24gPSBzZWxmLl9w
YXJzZV9hcmdzKGFyZ3MpCiAKQEAgLTI1NSw2ICsyNzcsOSBAQCBjbGFzcyBSb2xsb3V0KElSQ0Nv
bW1hbmQpOgogICAgICAgICAgICAgdG9vbC5pcmMoKS5wb3N0KCIlczogQ3JlYXRlZCByb2xsb3V0
OiAlcyIgJSAobmlja3Nfc3RyaW5nLCBidWdfdXJsKSkKICAgICAgICAgZXhjZXB0IFNjcmlwdEVy
cm9yLCBlOgogICAgICAgICAgICAgdG9vbC5pcmMoKS5wb3N0KCIlczogRmFpbGVkIHRvIGNyZWF0
ZSByb2xsb3V0IHBhdGNoOiIgJSBuaWNrc19zdHJpbmcpCisgICAgICAgICAgICBkaWZmX2ZhaWx1
cmUgPSBzZWxmLl9jaGVja19kaWZmX2ZhaWx1cmUoZS5vdXRwdXQsIHRvb2wpCisgICAgICAgICAg
ICBpZiBkaWZmX2ZhaWx1cmU6CisgICAgICAgICAgICAgICAgcmV0dXJuICIlczogJXMiICUgKG5p
Y2tzX3N0cmluZywgZGlmZl9mYWlsdXJlKQogICAgICAgICAgICAgX3Bvc3RfZXJyb3JfYW5kX2No
ZWNrX2Zvcl9idWdfdXJsKHRvb2wsIG5pY2tzX3N0cmluZywgZSkKIAogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>194365</attachid>
            <date>2013-03-21 15:27:54 -0700</date>
            <delta_ts>2013-03-25 23:44:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107092-20130322092342.patch</filename>
            <type>text/plain</type>
            <size>2659</size>
            <attacher name="Alan Cutter">alancutter</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ2NTI5CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggOTVhODA1YmNlZDM4YjIwOWNhM2E3MDMyNzgyNmM3Yzg4
NWY3NmFhMy4uZDlkZGE4YzVmZDVmZjAyZmViODczYWVmNmFjMDhjNWM4NzAzZDcwNiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2
IEBACisyMDEzLTAzLTIxICBBbGFuIEN1dHRlciAgPGFsYW5jdXR0ZXJAY2hyb21pdW0ub3JnPgor
CisgICAgICAgIFNoZXJpZmZib3Qgc2hvdWxkIGV4cGxhaW4gcm9sbG91dCBmYWlsdXJlcyBpbiBh
IGh1bWFuIHJlYWRhYmxlIGZvcm0uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMDcwOTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBJbXByb3ZlZCBzaGVyaWZmYm90J3MgZXJyb3IgcmVwb3J0aW5nIHdoZW4g
YSByb2xsb3V0IGNvbW1hbmQgZmFpbHMgdG8gcmV2ZXJzZSBkaWZmIGZpbGVzICh0aGUgbW9zdCBj
b21tb24gZmFpbHVyZSkuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L2ly
Y19jb21tYW5kLnB5OgorICAgICAgICAoUm9sbG91dC5fY2hlY2tfZGlmZl9mYWlsdXJlKToKKyAg
ICAgICAgKFJvbGxvdXQuZXhlY3V0ZSk6CisKIDIwMTMtMDMtMjEgIE1pbiBRaW4gIDxxaW5taW5A
Y2hyb21pdW0ub3JnPgogCiAgICAgICAgIENsZWFudXAgYW5kcm9pZCBtZWRpYSBsYXlvdXQgdGVz
dCBjb2RlCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L2lyY19j
b21tYW5kLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9pcmNfY29tbWFuZC5w
eQppbmRleCBjMTY4Mzc2NzQ4Nzg3ZDQ4NGE4OWFhMzk3MTRhNzY5NWI4NGZmNjFlLi44OWIxYzQy
MjNiYjYxNTg1MDZmYjEwYjczN2U0ODMwNzY4YjQ5ZjE3IDEwMDY0NAotLS0gYS9Ub29scy9TY3Jp
cHRzL3dlYmtpdHB5L3Rvb2wvYm90L2lyY19jb21tYW5kLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvdG9vbC9ib3QvaXJjX2NvbW1hbmQucHkKQEAgLTIzMiw2ICsyMzIsMjcgQEAgY2xh
c3MgUm9sbG91dChJUkNDb21tYW5kKToKICAgICAgICAgdG9vbC5zY20oKS5kaXNjYXJkX2xvY2Fs
X2NoYW5nZXMoKQogICAgICAgICB0b29sLmV4ZWN1dGl2ZS5ydW5fYW5kX3Rocm93X2lmX2ZhaWwo
dG9vbC5kZXByZWNhdGVkX3BvcnQoKS51cGRhdGVfd2Via2l0X2NvbW1hbmQoKSwgcXVpZXQ9VHJ1
ZSwgY3dkPXRvb2wuc2NtKCkuY2hlY2tvdXRfcm9vdCkKIAorICAgIGRlZiBfY2hlY2tfZGlmZl9m
YWlsdXJlKHNlbGYsIGVycm9yX2xvZywgdG9vbCk6CisgICAgICAgIGlmIG5vdCBlcnJvcl9sb2c6
CisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICByZXZlcnRfZmFpbHVyZV9tZXNzYWdlID0g
IkZhaWxlZCB0byBhcHBseSByZXZlcnNlIGRpZmYgZm9yIHJldmlzaW9uIgorICAgICAgICBpbmRl
eCA9IGVycm9yX2xvZy5maW5kKHJldmVydF9mYWlsdXJlX21lc3NhZ2UpCisgICAgICAgIGlmIGlu
ZGV4ID09IC0xOgorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgIyBQdWxsIG91dCBmaWxl
IHBhdGhzIGFmdGVyIHRoZSBlcnJvciBtZXNzYWdlLgorICAgICAgICBsaW5lcyA9IGVycm9yX2xv
Z1tpbmRleDpdLnNwbGl0KCdcbicpWzE6XQorICAgICAgICBmaWxlcyA9IFtdCisgICAgICAgIGZv
ciBsaW5lIGluIGxpbmVzOgorICAgICAgICAgICAgaWYgdG9vbC5maWxlc3lzdGVtLmV4aXN0cyh0
b29sLnNjbSgpLmFic29sdXRlX3BhdGgobGluZSkpOgorICAgICAgICAgICAgICAgIGZpbGVzLmFw
cGVuZChsaW5lKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBicmVhaworICAg
ICAgICBpZiBmaWxlczoKKyAgICAgICAgICAgIHJldHVybiAiRmFpbGVkIHRvIGFwcGx5IHJldmVy
c2UgZGlmZiBmb3IgZmlsZShzKTogJXMiICUgIiwgIi5qb2luKGZpbGVzKQorICAgICAgICByZXR1
cm4KKwogICAgIGRlZiBleGVjdXRlKHNlbGYsIG5pY2ssIGFyZ3MsIHRvb2wsIHNoZXJpZmYpOgog
ICAgICAgICBzdm5fcmV2aXNpb25fbGlzdCwgcm9sbG91dF9yZWFzb24gPSBzZWxmLl9wYXJzZV9h
cmdzKGFyZ3MpCiAKQEAgLTI1NSw2ICsyNzYsOSBAQCBjbGFzcyBSb2xsb3V0KElSQ0NvbW1hbmQp
OgogICAgICAgICAgICAgdG9vbC5pcmMoKS5wb3N0KCIlczogQ3JlYXRlZCByb2xsb3V0OiAlcyIg
JSAobmlja3Nfc3RyaW5nLCBidWdfdXJsKSkKICAgICAgICAgZXhjZXB0IFNjcmlwdEVycm9yLCBl
OgogICAgICAgICAgICAgdG9vbC5pcmMoKS5wb3N0KCIlczogRmFpbGVkIHRvIGNyZWF0ZSByb2xs
b3V0IHBhdGNoOiIgJSBuaWNrc19zdHJpbmcpCisgICAgICAgICAgICBkaWZmX2ZhaWx1cmUgPSBz
ZWxmLl9jaGVja19kaWZmX2ZhaWx1cmUoZS5vdXRwdXQsIHRvb2wpCisgICAgICAgICAgICBpZiBk
aWZmX2ZhaWx1cmU6CisgICAgICAgICAgICAgICAgcmV0dXJuICIlczogJXMiICUgKG5pY2tzX3N0
cmluZywgZGlmZl9mYWlsdXJlKQogICAgICAgICAgICAgX3Bvc3RfZXJyb3JfYW5kX2NoZWNrX2Zv
cl9idWdfdXJsKHRvb2wsIG5pY2tzX3N0cmluZywgZSkKIAogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>195017</attachid>
            <date>2013-03-25 23:44:55 -0700</date>
            <delta_ts>2013-03-26 00:30:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107092-20130326174037.patch</filename>
            <type>text/plain</type>
            <size>2599</size>
            <attacher name="Alan Cutter">alancutter</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ2ODQ5CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggODU5YzQzZWNkODlhZjVjYjI4Njc4ZmM0ZGZjZDlkMGFk
MmE0NmI5Ny4uMWEwZTU2NDRiOWJlMzFkN2IxYjcwZTM4NWJjMDM3ZjUwODU4NzQ2NiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2
IEBACisyMDEzLTAzLTI1ICBBbGFuIEN1dHRlciAgPGFsYW5jdXR0ZXJAY2hyb21pdW0ub3JnPgor
CisgICAgICAgIFNoZXJpZmZib3Qgc2hvdWxkIGV4cGxhaW4gcm9sbG91dCBmYWlsdXJlcyBpbiBh
IGh1bWFuIHJlYWRhYmxlIGZvcm0uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMDcwOTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBJbXByb3ZlZCBzaGVyaWZmYm90J3MgZXJyb3IgcmVwb3J0aW5nIHdoZW4g
YSByb2xsb3V0IGNvbW1hbmQgZmFpbHMgdG8gcmV2ZXJzZSBkaWZmIGZpbGVzICh0aGUgbW9zdCBj
b21tb24gZmFpbHVyZSkuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L2ly
Y19jb21tYW5kLnB5OgorICAgICAgICAoUm9sbG91dC5fY2hlY2tfZGlmZl9mYWlsdXJlKToKKyAg
ICAgICAgKFJvbGxvdXQuZXhlY3V0ZSk6CisKIDIwMTMtMDMtMjUgIEtlbnQgVGFtdXJhICA8dGtl
bnRAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJlbmFtZSBFTkFCTEVfSU5QVVRfVFlQRV9EQVRF
VElNRQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9pcmNfY29t
bWFuZC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvaXJjX2NvbW1hbmQucHkK
aW5kZXggYzE2ODM3Njc0ODc4N2Q0ODRhODlhYTM5NzE0YTc2OTViODRmZjYxZS4uMGNiZGYxN2Q2
NmQ4NzMyOWI4ZDUxYTBjOWZhOWI2NzkxNzYxNmY4NSAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS90b29sL2JvdC9pcmNfY29tbWFuZC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dl
YmtpdHB5L3Rvb2wvYm90L2lyY19jb21tYW5kLnB5CkBAIC0yMzIsNiArMjMyLDIxIEBAIGNsYXNz
IFJvbGxvdXQoSVJDQ29tbWFuZCk6CiAgICAgICAgIHRvb2wuc2NtKCkuZGlzY2FyZF9sb2NhbF9j
aGFuZ2VzKCkKICAgICAgICAgdG9vbC5leGVjdXRpdmUucnVuX2FuZF90aHJvd19pZl9mYWlsKHRv
b2wuZGVwcmVjYXRlZF9wb3J0KCkudXBkYXRlX3dlYmtpdF9jb21tYW5kKCksIHF1aWV0PVRydWUs
IGN3ZD10b29sLnNjbSgpLmNoZWNrb3V0X3Jvb3QpCiAKKyAgICBkZWYgX2NoZWNrX2RpZmZfZmFp
bHVyZShzZWxmLCBlcnJvcl9sb2csIHRvb2wpOgorICAgICAgICBpZiBub3QgZXJyb3JfbG9nOgor
ICAgICAgICAgICAgcmV0dXJuIE5vbmUKKworICAgICAgICByZXZlcnRfZmFpbHVyZV9tZXNzYWdl
X3N0YXJ0ID0gZXJyb3JfbG9nLmZpbmQoIkZhaWxlZCB0byBhcHBseSByZXZlcnNlIGRpZmYgZm9y
IHJldmlzaW9uIikKKyAgICAgICAgaWYgcmV2ZXJ0X2ZhaWx1cmVfbWVzc2FnZV9zdGFydCA9PSAt
MToKKyAgICAgICAgICAgIHJldHVybiBOb25lCisKKyAgICAgICAgIyBQdWxsIG91dCBmaWxlIHBh
dGhzIGFmdGVyIHRoZSBlcnJvciBtZXNzYWdlLgorICAgICAgICBsaW5lcyA9IGVycm9yX2xvZ1ty
ZXZlcnRfZmFpbHVyZV9tZXNzYWdlX3N0YXJ0Ol0uc3BsaXQoJ1xuJylbMTpdCisgICAgICAgIGZp
bGVzID0gaXRlcnRvb2xzLnRha2V3aGlsZShsYW1iZGEgbGluZTogdG9vbC5maWxlc3lzdGVtLmV4
aXN0cyh0b29sLnNjbSgpLmFic29sdXRlX3BhdGgobGluZSkpLCBsaW5lcykKKyAgICAgICAgaWYg
ZmlsZXM6CisgICAgICAgICAgICByZXR1cm4gIkZhaWxlZCB0byBhcHBseSByZXZlcnNlIGRpZmYg
Zm9yIGZpbGUocyk6ICVzIiAlICIsICIuam9pbihmaWxlcykKKyAgICAgICAgcmV0dXJuIE5vbmUK
KwogICAgIGRlZiBleGVjdXRlKHNlbGYsIG5pY2ssIGFyZ3MsIHRvb2wsIHNoZXJpZmYpOgogICAg
ICAgICBzdm5fcmV2aXNpb25fbGlzdCwgcm9sbG91dF9yZWFzb24gPSBzZWxmLl9wYXJzZV9hcmdz
KGFyZ3MpCiAKQEAgLTI1NSw2ICsyNzAsOSBAQCBjbGFzcyBSb2xsb3V0KElSQ0NvbW1hbmQpOgog
ICAgICAgICAgICAgdG9vbC5pcmMoKS5wb3N0KCIlczogQ3JlYXRlZCByb2xsb3V0OiAlcyIgJSAo
bmlja3Nfc3RyaW5nLCBidWdfdXJsKSkKICAgICAgICAgZXhjZXB0IFNjcmlwdEVycm9yLCBlOgog
ICAgICAgICAgICAgdG9vbC5pcmMoKS5wb3N0KCIlczogRmFpbGVkIHRvIGNyZWF0ZSByb2xsb3V0
IHBhdGNoOiIgJSBuaWNrc19zdHJpbmcpCisgICAgICAgICAgICBkaWZmX2ZhaWx1cmUgPSBzZWxm
Ll9jaGVja19kaWZmX2ZhaWx1cmUoZS5vdXRwdXQsIHRvb2wpCisgICAgICAgICAgICBpZiBkaWZm
X2ZhaWx1cmU6CisgICAgICAgICAgICAgICAgcmV0dXJuICIlczogJXMiICUgKG5pY2tzX3N0cmlu
ZywgZGlmZl9mYWlsdXJlKQogICAgICAgICAgICAgX3Bvc3RfZXJyb3JfYW5kX2NoZWNrX2Zvcl9i
dWdfdXJsKHRvb2wsIG5pY2tzX3N0cmluZywgZSkKIAogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>195021</attachid>
            <date>2013-03-26 00:30:36 -0700</date>
            <delta_ts>2013-03-26 01:42:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107092-20130326182619.patch</filename>
            <type>text/plain</type>
            <size>4614</size>
            <attacher name="Alan Cutter">alancutter</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ2ODQ5CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggODU5YzQzZWNkODlhZjVjYjI4Njc4ZmM0ZGZjZDlkMGFk
MmE0NmI5Ny4uMzZjZTlkOGM3MDRkY2I3NDcxYjE1MjkwN2M3ZDQyZTZmZTczYzIxYiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4
IEBACisyMDEzLTAzLTI2ICBBbGFuIEN1dHRlciAgPGFsYW5jdXR0ZXJAY2hyb21pdW0ub3JnPgor
CisgICAgICAgIFNoZXJpZmZib3Qgc2hvdWxkIGV4cGxhaW4gcm9sbG91dCBmYWlsdXJlcyBpbiBh
IGh1bWFuIHJlYWRhYmxlIGZvcm0uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMDcwOTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBJbXByb3ZlZCBzaGVyaWZmYm90J3MgZXJyb3IgcmVwb3J0aW5nIHdoZW4g
YSByb2xsb3V0IGNvbW1hbmQgZmFpbHMgdG8gcmV2ZXJzZSBkaWZmIGZpbGVzICh0aGUgbW9zdCBj
b21tb24gZmFpbHVyZSkuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L2ly
Y19jb21tYW5kLnB5OgorICAgICAgICAoUm9sbG91dC5fY2hlY2tfZGlmZl9mYWlsdXJlKToKKyAg
ICAgICAgKFJvbGxvdXQuZXhlY3V0ZSk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29s
L2JvdC9pcmNfY29tbWFuZF91bml0dGVzdC5weToKKyAgICAgICAgKElSQ0NvbW1hbmRUZXN0LnRl
c3Rfcm9sbG91dCk6CisKIDIwMTMtMDMtMjUgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0u
b3JnPgogCiAgICAgICAgIFJlbmFtZSBFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRQpkaWZmIC0t
Z2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9pcmNfY29tbWFuZC5weSBiL1Rv
b2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvaXJjX2NvbW1hbmQucHkKaW5kZXggYzE2ODM3
Njc0ODc4N2Q0ODRhODlhYTM5NzE0YTc2OTViODRmZjYxZS4uNDczZWIxNmQ2YmYxYjA0OWQxY2Jm
YTU3YjkzNGRiZWRkNzM1MmU4MiAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90
b29sL2JvdC9pcmNfY29tbWFuZC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wv
Ym90L2lyY19jb21tYW5kLnB5CkBAIC0yMzIsNiArMjMyLDIwIEBAIGNsYXNzIFJvbGxvdXQoSVJD
Q29tbWFuZCk6CiAgICAgICAgIHRvb2wuc2NtKCkuZGlzY2FyZF9sb2NhbF9jaGFuZ2VzKCkKICAg
ICAgICAgdG9vbC5leGVjdXRpdmUucnVuX2FuZF90aHJvd19pZl9mYWlsKHRvb2wuZGVwcmVjYXRl
ZF9wb3J0KCkudXBkYXRlX3dlYmtpdF9jb21tYW5kKCksIHF1aWV0PVRydWUsIGN3ZD10b29sLnNj
bSgpLmNoZWNrb3V0X3Jvb3QpCiAKKyAgICBkZWYgX2NoZWNrX2RpZmZfZmFpbHVyZShzZWxmLCBl
cnJvcl9sb2csIHRvb2wpOgorICAgICAgICBpZiBub3QgZXJyb3JfbG9nOgorICAgICAgICAgICAg
cmV0dXJuIE5vbmUKKworICAgICAgICByZXZlcnRfZmFpbHVyZV9tZXNzYWdlX3N0YXJ0ID0gZXJy
b3JfbG9nLmZpbmQoIkZhaWxlZCB0byBhcHBseSByZXZlcnNlIGRpZmYgZm9yIHJldmlzaW9uIikK
KyAgICAgICAgaWYgcmV2ZXJ0X2ZhaWx1cmVfbWVzc2FnZV9zdGFydCA9PSAtMToKKyAgICAgICAg
ICAgIHJldHVybiBOb25lCisKKyAgICAgICAgbGluZXMgPSBlcnJvcl9sb2dbcmV2ZXJ0X2ZhaWx1
cmVfbWVzc2FnZV9zdGFydDpdLnNwbGl0KCdcbicpWzE6XQorICAgICAgICBmaWxlcyA9IGl0ZXJ0
b29scy50YWtld2hpbGUobGFtYmRhIGxpbmU6IHRvb2wuZmlsZXN5c3RlbS5leGlzdHModG9vbC5z
Y20oKS5hYnNvbHV0ZV9wYXRoKGxpbmUpKSwgbGluZXMpCisgICAgICAgIGlmIGZpbGVzOgorICAg
ICAgICAgICAgcmV0dXJuICJGYWlsZWQgdG8gYXBwbHkgcmV2ZXJzZSBkaWZmIGZvciBmaWxlKHMp
OiAlcyIgJSAiLCAiLmpvaW4oZmlsZXMpCisgICAgICAgIHJldHVybiBOb25lCisKICAgICBkZWYg
ZXhlY3V0ZShzZWxmLCBuaWNrLCBhcmdzLCB0b29sLCBzaGVyaWZmKToKICAgICAgICAgc3ZuX3Jl
dmlzaW9uX2xpc3QsIHJvbGxvdXRfcmVhc29uID0gc2VsZi5fcGFyc2VfYXJncyhhcmdzKQogCkBA
IC0yNTUsNiArMjY5LDkgQEAgY2xhc3MgUm9sbG91dChJUkNDb21tYW5kKToKICAgICAgICAgICAg
IHRvb2wuaXJjKCkucG9zdCgiJXM6IENyZWF0ZWQgcm9sbG91dDogJXMiICUgKG5pY2tzX3N0cmlu
ZywgYnVnX3VybCkpCiAgICAgICAgIGV4Y2VwdCBTY3JpcHRFcnJvciwgZToKICAgICAgICAgICAg
IHRvb2wuaXJjKCkucG9zdCgiJXM6IEZhaWxlZCB0byBjcmVhdGUgcm9sbG91dCBwYXRjaDoiICUg
bmlja3Nfc3RyaW5nKQorICAgICAgICAgICAgZGlmZl9mYWlsdXJlID0gc2VsZi5fY2hlY2tfZGlm
Zl9mYWlsdXJlKGUub3V0cHV0LCB0b29sKQorICAgICAgICAgICAgaWYgZGlmZl9mYWlsdXJlOgor
ICAgICAgICAgICAgICAgIHJldHVybiAiJXM6ICVzIiAlIChuaWNrc19zdHJpbmcsIGRpZmZfZmFp
bHVyZSkKICAgICAgICAgICAgIF9wb3N0X2Vycm9yX2FuZF9jaGVja19mb3JfYnVnX3VybCh0b29s
LCBuaWNrc19zdHJpbmcsIGUpCiAKIApkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS90b29sL2JvdC9pcmNfY29tbWFuZF91bml0dGVzdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvdG9vbC9ib3QvaXJjX2NvbW1hbmRfdW5pdHRlc3QucHkKaW5kZXggMDUxNzc0NGI1ZjQ4OTZi
ZTBlMzMzNDU4Yzk3MWY3ZTgyNDNmOGNkMy4uNzhiZGYxNzkzODU4YTk0ZWE3NzQxZjZmNjc2NTkz
MjdlMDk1YjFjYyAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9p
cmNfY29tbWFuZF91bml0dGVzdC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wv
Ym90L2lyY19jb21tYW5kX3VuaXR0ZXN0LnB5CkBAIC0zNCw2ICszNCw3IEBAIGZyb20gd2Via2l0
cHkudG9vbC5ib3QuaXJjX2NvbW1hbmQgaW1wb3J0ICoKIGZyb20gd2Via2l0cHkudG9vbC5tb2Nr
dG9vbCBpbXBvcnQgTW9ja1Rvb2wKIGZyb20gd2Via2l0cHkuY29tbW9uLm5ldC53ZWJfbW9jayBp
bXBvcnQgTW9ja1dlYgogZnJvbSB3ZWJraXRweS5jb21tb24uc3lzdGVtLmV4ZWN1dGl2ZV9tb2Nr
IGltcG9ydCBNb2NrRXhlY3V0aXZlCitmcm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0uZmlsZXN5
c3RlbV9tb2NrIGltcG9ydCBNb2NrRmlsZVN5c3RlbQogCiAKIGNsYXNzIElSQ0NvbW1hbmRUZXN0
KHVuaXR0ZXN0LlRlc3RDYXNlKToKQEAgLTE0NCw0ICsxNDUsMzAgQEAgY2xhc3MgSVJDQ29tbWFu
ZFRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJ0b206
IFVzYWdlOiByb2xsb3V0IFNWTl9SRVZJU0lPTiBbU1ZOX1JFVklTSU9OU10gUkVBU09OIiwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgcm9sbG91dC5leGVjdXRlKCJ0b20iLCBbXSwgTm9uZSwg
Tm9uZSkpCiAKKyAgICAgICAgdG9vbCA9IE1vY2tUb29sKCkKKyAgICAgICAgdG9vbC5maWxlc3lz
dGVtLmZpbGVzWyIvbW9jay1jaGVja291dC90ZXN0L2ZpbGUvb25lIl0gPSAiIgorICAgICAgICB0
b29sLmZpbGVzeXN0ZW0uZmlsZXNbIi9tb2NrLWNoZWNrb3V0L3Rlc3QvZmlsZS90d28iXSA9ICIi
CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoIkZhaWxlZCB0byBhcHBseSByZXZlcnNlIGRpZmYg
Zm9yIGZpbGUocyk6IHRlc3QvZmlsZS9vbmUsIHRlc3QvZmlsZS90d28iLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICByb2xsb3V0Ll9jaGVja19kaWZmX2ZhaWx1cmUoIiIiCitQcmVwYXJpbmcg
cm9sbG91dCBmb3IgYnVnIDEyMzQ1Ni4KK1VwZGF0aW5nIHdvcmtpbmcgZGlyZWN0b3J5CitGYWls
ZWQgdG8gYXBwbHkgcmV2ZXJzZSBkaWZmIGZvciByZXZpc2lvbiAxMjM0NTYgYmVjYXVzZSBvZiB0
aGUgZm9sbG93aW5nIGNvbmZsaWN0czoKK3Rlc3QvZmlsZS9vbmUKK3Rlc3QvZmlsZS90d28KK0Zh
aWxlZCB0byBhcHBseSByZXZlcnNlIGRpZmYgZm9yIHJldmlzaW9uIDEyMzQ1NiBiZWNhdXNlIG9m
IHRoZSBmb2xsb3dpbmcgY29uZmxpY3RzOgordGVzdC9maWxlL29uZQordGVzdC9maWxlL3R3bwor
VXBkYXRpbmcgT3BlblNvdXJjZQorQ3VycmVudCBicmFuY2ggbWFzdGVyIGlzIHVwIHRvIGRhdGUu
CisgICAgICAgICIiIiwgdG9vbCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoTm9uZSwgcm9s
bG91dC5fY2hlY2tfZGlmZl9mYWlsdXJlKCIiIgorUHJlcGFyaW5nIHJvbGxvdXQgZm9yIGJ1ZyAx
MjM0NTYuCitVcGRhdGluZyB3b3JraW5nIGRpcmVjdG9yeQorU29tZSBvdGhlciBlcnJvciByZXBv
cnQgaW52b2x2aW5nIGZpbGUgcGF0aHM6Cit0ZXN0L2ZpbGUvb25lCit0ZXN0L2ZpbGUvdHdvCitV
cGRhdGluZyBPcGVuU291cmNlCitDdXJyZW50IGJyYW5jaCBtYXN0ZXIgaXMgdXAgdG8gZGF0ZS4K
KyAgICAgICAgIiIiLCB0b29sKSkKKwogICAgICAgICAjIEZJWE1FOiBXZSBuZWVkIGEgYmV0dGVy
IHdheSB0byB0ZXN0IElSQ0NvbW1hbmRzIHdoaWNoIGNhbGwgdG9vbC5pcmMoKS5wb3N0KCkK
</data>

          </attachment>
      

    </bug>

</bugzilla>