<?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>28623</bug_id>
          
          <creation_ts>2009-08-21 13:29:54 -0700</creation_ts>
          <short_desc>svn-[un]apply should change directories to the repository root before [un]applying</short_desc>
          <delta_ts>2009-09-01 11:55:06 -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>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>https://lists.webkit.org/pipermail/webkit-dev/2009-August/009546.html</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="Nobody">webkit-unassigned</assigned_to>
          <cc>eric</cc>
    
    <cc>ggaren</cc>
    
    <cc>joepeck</cc>
    
    <cc>pkasting</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>141955</commentid>
    <comment_count>0</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-08-21 13:29:54 -0700</bug_when>
    <thetext>* SUMMARY

Hi.

r45939 broke my workflow. Here&apos;s the related bugzilla bug: https://bugs.webkit.org/show_bug.cgi?id=26999.

Old &quot;Roll out a patch&quot; workflow:

cd JavaScriptCore
svn-create-patch &gt; patch.txt
svn-unapply patch.txt

Old &quot;Roll in a patch&quot; workflow:

cd JavaScriptCore
svn-apply patch.txt

These old ways of doing things no longer work because svn-apply and svn-unapply don&apos;t match svn-create-patch&apos;s new behavior of changing to the WebKit root directory if you&apos;re currently working in a WebKit subdirectory.

Here&apos;s an example command-line interaction:

&gt; ~/webkit/WebKitTools/Scripts$ svn-create-patch &gt; ro.txt
&gt; ~/webkit/WebKitTools/Scripts$ svn-unapply !$
&gt; svn-unapply ro.txt
&gt; can&apos;t find file to patch at input line 5
&gt; Perhaps you used the wrong -p or --strip option?
&gt; The text leading up to this was:
&gt; --------------------------
&gt; |Index: WebKitTools/Scripts/webkitdirs.pm
&gt; |===================================================================
&gt; |--- WebKitTools/Scripts/webkitdirs.pm    (revision 47638)
&gt; |+++ WebKitTools/Scripts/webkitdirs.pm    (working copy)
&gt; --------------------------
&gt; File to patch: ^C&apos;WebKitTools/Scripts&apos; is not a directory at ./svn-unapply line 315, &lt;&gt; line 9.

I tried to ignore this for a while, but it&apos;s really causing problems for me and at least one other WebKit developer.

Should we revert r45939?

Is there an easy fix to svn-apply and svn-unapply that you can make?

Thanks,
Geoff</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141956</commentid>
    <comment_count>1</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-08-21 13:31:13 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/45939</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141964</commentid>
    <comment_count>2</comment_count>
      <attachid>38392</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2009-08-21 13:57:05 -0700</bug_when>
    <thetext>Created attachment 38392
Give This a Shot

Geoff, sorry about the problems you&apos;ve been experiencing.  I&apos;ve since switched to git and no longer have an svn checkout to test on, but I&apos;ll give this a look.  Things have progressed since my original patch, and a few convenience functions have been made that are used in svn-create-patch and should work well here.  Could you try applying this patch to see if it fixes your problem for svn-unapply.  If it works things will likely be as easy for svn-apply.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141969</commentid>
    <comment_count>3</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-08-21 14:08:23 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; Created an attachment (id=38392) [details]
&gt; Give This a Shot

Isn&apos;t a corresponding change needed for svn-apply?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141970</commentid>
    <comment_count>4</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2009-08-21 14:09:21 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; Created an attachment (id=38392) [details]

Now that I&apos;ve thought about it some more, since the patches to un-apply are provided on the command line relative to where the script is originally run, then changing the directory as early as I had done in this patch will likely not find the file (otherwise you&apos;d be applying from the svnRoot anyways).

I can think of a few solutions:
  - store the result of chdirReturningRelativePath() and use it when grabbing the command line arguments.
  - or, starting by storing the absolute paths of all the command line arguments, then proceeding to change directory and apply the patches per usual.

Either way, I don&apos;t think I could write this and provide a reliable patch without testing.  pkasting, are you still using svn?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141972</commentid>
    <comment_count>5</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2009-08-21 14:11:31 -0700</bug_when>
    <thetext>&gt; Isn&apos;t a corresponding change needed for svn-apply?

For a final patch yes, I was just looking for feedback to see if the general idea would work.  A fix for svn-unapply would be enough to test the &quot;example command-line scenario&quot; originally provided.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141974</commentid>
    <comment_count>6</comment_count>
    <who name="Peter Kasting">pkasting</who>
    <bug_when>2009-08-21 14:16:41 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; Either way, I don&apos;t think I could write this and provide a reliable patch
&gt; without testing.  pkasting, are you still using svn?

Yes... I was hoping to avoid diving back into the WebKitTools directory :/

It seems like the right fix is to modify the code that applies individual diffs to change to the right directory, apply the diff, and then change back.  Then no extra global state or preprocessing is required.

A simple version of &quot;the right directory&quot; is to just move to the repository root, while a more complex one would be to try each directory on the way up the chain from the current directory.  This second method would make subtree-relative patches work too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141978</commentid>
    <comment_count>7</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-21 14:26:44 -0700</bug_when>
    <thetext>WebKitTools/Scripts/modules/scm_unittest.py has a unit testing setup which could be used to test changes like this one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141999</commentid>
    <comment_count>8</comment_count>
      <attachid>38399</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2009-08-21 14:59:40 -0700</bug_when>
    <thetext>Created attachment 38399
[PATCH] Quick Fix

Okay, it turns out that svn-apply and svn-unapply work with git too (with the exception of an error I ran into with that I attempted to fix svn-unapply).  Note that this always jumps back to the repository root to apply to patch.  This is compatible with svn-create-patch.  The optimal solution would be to do something like what pkasting suggested, to walk up the tree and try each directory to see if the patch will apply from there.  This would work not only with patches made from the root, but also manual svn patches that are created in the middle of the repository.

This was working in my test cases!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142336</commentid>
    <comment_count>9</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2009-08-24 11:12:36 -0700</bug_when>
    <thetext>Hi Joseph.

Thanks for looking into this!

It looks like the use of VCSUtils is incompatible with my system:

~/webkit/WebKitTools/mangleme$ svn-create-patch &gt; ro.txt
?       ro.txt
~/webkit/WebKitTools/mangleme$ svn-unapply !$
svn-unapply ro.txt
Can&apos;t locate VCSUtils.pm in @INC (@INC contains: /Library/Perl/Updates/5.10.0 /System/Library/Perl/5.10.0/darwin-thread-multi-2level /System/Library/Perl/5.10.0 /Library/Perl/5.10.0/darwin-thread-multi-2level /Library/Perl/5.10.0 /Network/Library/Perl/5.10.0/darwin-thread-multi-2level /Network/Library/Perl/5.10.0 /Network/Library/Perl /System/Library/Perl/Extras/5.10.0/darwin-thread-multi-2level /System/Library/Perl/Extras/5.10.0 .) at /Users/ggaren/webkit/WebKitTools/Scripts/svn-unapply line 67.
BEGIN failed--compilation aborted at /Users/ggaren/webkit/WebKitTools/Scripts/svn-unapply line 67.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142338</commentid>
    <comment_count>10</comment_count>
      <attachid>38399</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2009-08-24 11:15:52 -0700</bug_when>
    <thetext>Comment on attachment 38399
[PATCH] Quick Fix

I guess I&apos;ll r- this for now to remove it from the queue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142351</commentid>
    <comment_count>11</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-24 11:39:23 -0700</bug_when>
    <thetext>This patch is missing the Find::Bin trick:

use FindBin;
use lib $FindBin::Bin;

Will make it possible to include perl modules form the same directory.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143471</commentid>
    <comment_count>12</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2009-08-28 15:05:51 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; This patch is missing the Find::Bin trick:
&gt; 
&gt; use FindBin;
&gt; use lib $FindBin::Bin;
&gt; 
&gt; Will make it possible to include perl modules form the same directory.

Geoffrey Garen have you tried this with the patch?  Odd that this trick wasn&apos;t necessary for my computer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143485</commentid>
    <comment_count>13</comment_count>
      <attachid>38763</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-08-28 17:10:53 -0700</bug_when>
    <thetext>Created attachment 38763
Patch v3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143793</commentid>
    <comment_count>14</comment_count>
      <attachid>38763</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-01 02:02:35 -0700</bug_when>
    <thetext>Comment on attachment 38763
Patch v3

LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143829</commentid>
    <comment_count>15</comment_count>
      <attachid>38763</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-01 03:24:53 -0700</bug_when>
    <thetext>Comment on attachment 38763
Patch v3

Clearing flags on attachment: 38763

Committed r47923: &lt;http://trac.webkit.org/changeset/47923&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143830</commentid>
    <comment_count>16</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-01 03:24:58 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143878</commentid>
    <comment_count>17</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-09-01 06:55:39 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; (From update of attachment 38763 [details])
&gt; LGTM.

Geoff Garen was supposed to test this (see Comment #12) before landing it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143965</commentid>
    <comment_count>18</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2009-09-01 11:55:06 -0700</bug_when>
    <thetext>Works for me. Thanks for fixing this!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>38392</attachid>
            <date>2009-08-21 13:57:05 -0700</date>
            <delta_ts>2009-08-21 14:59:40 -0700</delta_ts>
            <desc>Give This a Shot</desc>
            <filename>svn_unapply_fix.patch</filename>
            <type>text/plain</type>
            <size>563</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvc3ZuLXVuYXBwbHkgYi9XZWJLaXRUb29s
cy9TY3JpcHRzL3N2bi11bmFwcGx5CmluZGV4IDk2NGI1MWUuLjNmZDc5MDkgMTAwNzU1Ci0tLSBh
L1dlYktpdFRvb2xzL1NjcmlwdHMvc3ZuLXVuYXBwbHkKKysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0
cy9zdm4tdW5hcHBseQpAQCAtNjQsNiArNjQsNyBAQCB1c2UgRmlsZTo6QmFzZW5hbWU7CiB1c2Ug
RmlsZTo6U3BlYzsKIHVzZSBGaWxlOjpUZW1wIHF3KHRlbXBmaWxlKTsKIHVzZSBHZXRvcHQ6Okxv
bmc7Cit1c2UgVkNTVXRpbHM7CiAKIHN1YiBjaGVja3N1bSgkKTsKIHN1YiBmaXhDaGFuZ2VMb2dQ
YXRjaCgkKTsKQEAgLTgwLDYgKzgxLDkgQEAgaWYgKCFHZXRPcHRpb25zKCJoZWxwISIgPT4gXCRz
aG93SGVscCkgfHwgJHNob3dIZWxwKSB7CiAgICAgZXhpdCAxOwogfQogCitteSAkc3ZuUm9vdCA9
IGRldGVybWluZVNWTlJvb3QoKTsKK2NoZGlyUmV0dXJuaW5nUmVsYXRpdmVQYXRoKCRzdm5Sb290
KTsKKwogbXkgQGNvcGllZEZpbGVzOwogbXkgJWRpcmVjdG9yaWVzVG9DaGVjazsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>38399</attachid>
            <date>2009-08-21 14:59:40 -0700</date>
            <delta_ts>2009-08-28 17:10:49 -0700</delta_ts>
            <desc>[PATCH] Quick Fix</desc>
            <filename>attempt.patch</filename>
            <type>text/plain</type>
            <size>2975</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBhYjRjZTFmLi45OTY3NGY5IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMDktMDgt
MjEgIEpvc2VwaCBQZWNvcmFybyAgPGpvZXBlY2tAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBzdm4tW3VuXWFwcGx5IHNob3VsZCBj
aGFuZ2UgZGlyZWN0b3JpZXMgdG8gdGhlIHJlcG9zaXRvcnkgcm9vdCBiZWZvcmUgW3VuXWFwcGx5
aW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yODYy
MworCisgICAgICAgICAgSnVtcCBiYWNrIGFuZCBmb3J0aCBiZXR3ZWVuIHRoZSByZXBvc2l0b3J5
IHJvb3QgZGlyZWN0b3J5ICh0byBhcHBseSkgYW5kIHRoZQorICAgICAgICAgIGRpcmVjdG9yeSB0
aGUgc2NyaXB0IHdhcyBydW4gZnJvbSAodG8gZmluZCB0aGUgcGF0Y2gpLgorCisgICAgICAgICog
U2NyaXB0cy9zdm4tYXBwbHk6CisgICAgICAgICogU2NyaXB0cy9zdm4tdW5hcHBseToKKwogMjAw
OS0wOC0yMCAgQnJpYW4gV2VpbnN0ZWluICA8YndlaW5zdGVpbkBhcHBsZS5jb20+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgQWRhbSBSb2Jlbi4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1Njcmlw
dHMvc3ZuLWFwcGx5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy9zdm4tYXBwbHkKaW5kZXggNGI4OGEz
Ny4uNmE2NzIyMiAxMDA3NTUKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy9zdm4tYXBwbHkKKysr
IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy9zdm4tYXBwbHkKQEAgLTEyMSw2ICsxMjEsOSBAQCBteSAl
cmVtb3ZlRGlyZWN0b3J5SWdub3JlTGlzdCA9ICgKICAgICAnX3N2bicgPT4gMSwKICk7CiAKK215
ICRwYXRoU2NyaXB0V2FzUnVuRnJvbSA9IEN3ZDo6Z2V0Y3dkKCk7CitteSAkcGF0aEZvclJlcG9z
aXRvcnlSb290ID0gZGV0ZXJtaW5lVkNTUm9vdCgpOworCiBteSAlY2hlY2tlZERpcmVjdG9yaWVz
OwogbXkgJWNvcGllZEZpbGVzOwogbXkgQHBhdGNoZXM7CkBAIC0yMjYsMTEgKzIyOSwxMyBAQCBz
dWIgYWRkRGlyZWN0b3JpZXNJZk5lZWRlZCgkKQogc3ViIGFwcGx5UGF0Y2goJCQ7JCkKIHsKICAg
ICBteSAoJHBhdGNoLCAkZnVsbFBhdGgsICRvcHRpb25zKSA9IEBfOworICAgIGNoZGlyICRwYXRo
Rm9yUmVwb3NpdG9yeVJvb3Q7CiAgICAgJG9wdGlvbnMgPSBbXSBpZiAoISAkb3B0aW9ucyk7CiAg
ICAgbXkgJGNvbW1hbmQgPSAicGF0Y2ggIiAuIGpvaW4oIiAiLCAiLXAwIiwgQHskb3B0aW9uc30p
OwogICAgIG9wZW4gUEFUQ0gsICJ8ICRjb21tYW5kIiBvciBkaWUgIkZhaWxlZCB0byBwYXRjaCAk
ZnVsbFBhdGhcbiI7CiAgICAgcHJpbnQgUEFUQ0ggJHBhdGNoOwogICAgIGNsb3NlIFBBVENIOwor
ICAgIGNoZGlyICRwYXRoU2NyaXB0V2FzUnVuRnJvbTsKIAogICAgIG15ICRleGl0Q29kZSA9ICQ/
ID4+IDg7CiAgICAgaWYgKCRleGl0Q29kZSAhPSAwKSB7CmRpZmYgLS1naXQgYS9XZWJLaXRUb29s
cy9TY3JpcHRzL3N2bi11bmFwcGx5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy9zdm4tdW5hcHBseQpp
bmRleCA5NjRiNTFlLi43NzgyMzBiIDEwMDc1NQotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3N2
bi11bmFwcGx5CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvc3ZuLXVuYXBwbHkKQEAgLTY0LDYg
KzY0LDcgQEAgdXNlIEZpbGU6OkJhc2VuYW1lOwogdXNlIEZpbGU6OlNwZWM7CiB1c2UgRmlsZTo6
VGVtcCBxdyh0ZW1wZmlsZSk7CiB1c2UgR2V0b3B0OjpMb25nOwordXNlIFZDU1V0aWxzOwogCiBz
dWIgY2hlY2tzdW0oJCk7CiBzdWIgZml4Q2hhbmdlTG9nUGF0Y2goJCk7CkBAIC04MCw2ICs4MSw5
IEBAIGlmICghR2V0T3B0aW9ucygiaGVscCEiID0+IFwkc2hvd0hlbHApIHx8ICRzaG93SGVscCkg
ewogICAgIGV4aXQgMTsKIH0KIAorbXkgJHBhdGhTY3JpcHRXYXNSdW5Gcm9tID0gQ3dkOjpnZXRj
d2QoKTsKK215ICRwYXRoRm9yUmVwb3NpdG9yeVJvb3QgPSBkZXRlcm1pbmVWQ1NSb290KCk7CisK
IG15IEBjb3BpZWRGaWxlczsKIG15ICVkaXJlY3Rvcmllc1RvQ2hlY2s7CiAKQEAgLTEzMyw3ICsx
MzcsOSBAQCBmb3IgJHBhdGNoIChAY29waWVkRmlsZXMpIHsKICAgICBwYXRjaCgkcGF0Y2gpOwog
fQogCi1yZXZlcnREaXJlY3RvcmllcygpOworaWYgKGlzU1ZOKCkpIHsKKyAgICByZXZlcnREaXJl
Y3RvcmllcygpOworfQogCiBleGl0IDA7CiAKQEAgLTI4OSw2ICsyOTUsNyBAQCBzdWIgcGF0Y2go
JCkKIAogc3ViIHJldmVydERpcmVjdG9yaWVzKCkKIHsKKyAgICBjaGRpciAkcGF0aEZvclJlcG9z
aXRvcnlSb290OwogICAgIG15ICVjaGVja2VkRGlyZWN0b3JpZXM7CiAgICAgZm9yZWFjaCBteSAk
cGF0aCAocmV2ZXJzZSBzb3J0IGtleXMgJWRpcmVjdG9yaWVzVG9DaGVjaykgewogICAgICAgICBt
eSBAZGlycyA9IEZpbGU6OlNwZWMtPnNwbGl0ZGlyKCRwYXRoKTsKQEAgLTM1MywxMSArMzYwLDEz
IEBAIHN1YiBzdm5TdGF0dXMoJCkKIHN1YiB1bmFwcGx5UGF0Y2goJCQ7JCkKIHsKICAgICBteSAo
JHBhdGNoLCAkZnVsbFBhdGgsICRvcHRpb25zKSA9IEBfOworICAgIGNoZGlyICRwYXRoRm9yUmVw
b3NpdG9yeVJvb3Q7CiAgICAgJG9wdGlvbnMgPSBbXSBpZiAoISAkb3B0aW9ucyk7CiAgICAgbXkg
JGNvbW1hbmQgPSAicGF0Y2ggIiAuIGpvaW4oIiAiLCAiLXAwIiwgIi1SIiwgQHskb3B0aW9uc30p
OwogICAgIG9wZW4gUEFUQ0gsICJ8ICRjb21tYW5kIiBvciBkaWUgIkZhaWxlZCB0byBwYXRjaCAk
ZnVsbFBhdGg6ICQhIjsKICAgICBwcmludCBQQVRDSCAkcGF0Y2g7CiAgICAgY2xvc2UgUEFUQ0g7
CisgICAgY2hkaXIgJHBhdGhTY3JpcHRXYXNSdW5Gcm9tOwogfQogCiBzdWIgdW5zZXRDaGFuZ2VM
b2dEYXRlKCQkKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>38763</attachid>
            <date>2009-08-28 17:10:53 -0700</date>
            <delta_ts>2009-09-01 03:24:53 -0700</delta_ts>
            <desc>Patch v3</desc>
            <filename>bug-28623-20090828171051.patch</filename>
            <type>text/plain</type>
            <size>2995</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBhMDY5YmVhLi4xNDhjNTdhIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMDktMDgt
MjggIEpvc2VwaCBQZWNvcmFybyAgPGpvZXBlY2tAd2Via2l0Lm9yZz4KKworICAgICAgICA8aHR0
cDovL3dlYmtpdC5vcmcvYi8yODYyMz4gc3ZuLVt1bl1hcHBseSBzaG91bGQgY2hhbmdlIGRpcmVj
dG9yaWVzIHRvIHRoZSByZXBvc2l0b3J5IHJvb3QgYmVmb3JlIFt1bl1hcHBseWluZworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEp1bXAgYmFjayBhbmQg
Zm9ydGggYmV0d2VlbiB0aGUgcmVwb3NpdG9yeSByb290IGRpcmVjdG9yeSAodG8gYXBwbHkpIGFu
ZCB0aGUKKyAgICAgICAgZGlyZWN0b3J5IHRoZSBzY3JpcHQgd2FzIHJ1biBmcm9tICh0byBmaW5k
IHRoZSBwYXRjaCkuCisKKyAgICAgICAgKiBTY3JpcHRzL3N2bi1hcHBseToKKyAgICAgICAgKiBT
Y3JpcHRzL3N2bi11bmFwcGx5OgorCiAyMDA5LTA4LTI4ICBKYW4gTWljaGFlbCBBbG9uem8gIDxq
bWFsb256b0B3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEd1c3Rhdm8gTm9yb25o
YS4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvc3ZuLWFwcGx5IGIvV2ViS2l0VG9v
bHMvU2NyaXB0cy9zdm4tYXBwbHkKaW5kZXggNGI4OGEzNy4uNmE2NzIyMiAxMDA3NTUKLS0tIGEv
V2ViS2l0VG9vbHMvU2NyaXB0cy9zdm4tYXBwbHkKKysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy9z
dm4tYXBwbHkKQEAgLTEyMSw2ICsxMjEsOSBAQCBteSAlcmVtb3ZlRGlyZWN0b3J5SWdub3JlTGlz
dCA9ICgKICAgICAnX3N2bicgPT4gMSwKICk7CiAKK215ICRwYXRoU2NyaXB0V2FzUnVuRnJvbSA9
IEN3ZDo6Z2V0Y3dkKCk7CitteSAkcGF0aEZvclJlcG9zaXRvcnlSb290ID0gZGV0ZXJtaW5lVkNT
Um9vdCgpOworCiBteSAlY2hlY2tlZERpcmVjdG9yaWVzOwogbXkgJWNvcGllZEZpbGVzOwogbXkg
QHBhdGNoZXM7CkBAIC0yMjYsMTEgKzIyOSwxMyBAQCBzdWIgYWRkRGlyZWN0b3JpZXNJZk5lZWRl
ZCgkKQogc3ViIGFwcGx5UGF0Y2goJCQ7JCkKIHsKICAgICBteSAoJHBhdGNoLCAkZnVsbFBhdGgs
ICRvcHRpb25zKSA9IEBfOworICAgIGNoZGlyICRwYXRoRm9yUmVwb3NpdG9yeVJvb3Q7CiAgICAg
JG9wdGlvbnMgPSBbXSBpZiAoISAkb3B0aW9ucyk7CiAgICAgbXkgJGNvbW1hbmQgPSAicGF0Y2gg
IiAuIGpvaW4oIiAiLCAiLXAwIiwgQHskb3B0aW9uc30pOwogICAgIG9wZW4gUEFUQ0gsICJ8ICRj
b21tYW5kIiBvciBkaWUgIkZhaWxlZCB0byBwYXRjaCAkZnVsbFBhdGhcbiI7CiAgICAgcHJpbnQg
UEFUQ0ggJHBhdGNoOwogICAgIGNsb3NlIFBBVENIOworICAgIGNoZGlyICRwYXRoU2NyaXB0V2Fz
UnVuRnJvbTsKIAogICAgIG15ICRleGl0Q29kZSA9ICQ/ID4+IDg7CiAgICAgaWYgKCRleGl0Q29k
ZSAhPSAwKSB7CmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL3N2bi11bmFwcGx5IGIv
V2ViS2l0VG9vbHMvU2NyaXB0cy9zdm4tdW5hcHBseQppbmRleCA5NjRiNTFlLi41YWQ0NWY5IDEw
MDc1NQotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3N2bi11bmFwcGx5CisrKyBiL1dlYktpdFRv
b2xzL1NjcmlwdHMvc3ZuLXVuYXBwbHkKQEAgLTY1LDYgKzY1LDEwIEBAIHVzZSBGaWxlOjpTcGVj
OwogdXNlIEZpbGU6OlRlbXAgcXcodGVtcGZpbGUpOwogdXNlIEdldG9wdDo6TG9uZzsKIAordXNl
IEZpbmRCaW47Cit1c2UgbGliICRGaW5kQmluOjpCaW47Cit1c2UgVkNTVXRpbHM7CisKIHN1YiBj
aGVja3N1bSgkKTsKIHN1YiBmaXhDaGFuZ2VMb2dQYXRjaCgkKTsKIHN1YiBnaXRkaWZmMnN2bmRp
ZmYoJCk7CkBAIC04MCw2ICs4NCw5IEBAIGlmICghR2V0T3B0aW9ucygiaGVscCEiID0+IFwkc2hv
d0hlbHApIHx8ICRzaG93SGVscCkgewogICAgIGV4aXQgMTsKIH0KIAorbXkgJHBhdGhTY3JpcHRX
YXNSdW5Gcm9tID0gQ3dkOjpnZXRjd2QoKTsKK215ICRwYXRoRm9yUmVwb3NpdG9yeVJvb3QgPSBk
ZXRlcm1pbmVWQ1NSb290KCk7CisKIG15IEBjb3BpZWRGaWxlczsKIG15ICVkaXJlY3Rvcmllc1Rv
Q2hlY2s7CiAKQEAgLTEzMyw3ICsxNDAsOSBAQCBmb3IgJHBhdGNoIChAY29waWVkRmlsZXMpIHsK
ICAgICBwYXRjaCgkcGF0Y2gpOwogfQogCi1yZXZlcnREaXJlY3RvcmllcygpOworaWYgKGlzU1ZO
KCkpIHsKKyAgICByZXZlcnREaXJlY3RvcmllcygpOworfQogCiBleGl0IDA7CiAKQEAgLTI4OSw2
ICsyOTgsNyBAQCBzdWIgcGF0Y2goJCkKIAogc3ViIHJldmVydERpcmVjdG9yaWVzKCkKIHsKKyAg
ICBjaGRpciAkcGF0aEZvclJlcG9zaXRvcnlSb290OwogICAgIG15ICVjaGVja2VkRGlyZWN0b3Jp
ZXM7CiAgICAgZm9yZWFjaCBteSAkcGF0aCAocmV2ZXJzZSBzb3J0IGtleXMgJWRpcmVjdG9yaWVz
VG9DaGVjaykgewogICAgICAgICBteSBAZGlycyA9IEZpbGU6OlNwZWMtPnNwbGl0ZGlyKCRwYXRo
KTsKQEAgLTM1MywxMSArMzYzLDEzIEBAIHN1YiBzdm5TdGF0dXMoJCkKIHN1YiB1bmFwcGx5UGF0
Y2goJCQ7JCkKIHsKICAgICBteSAoJHBhdGNoLCAkZnVsbFBhdGgsICRvcHRpb25zKSA9IEBfOwor
ICAgIGNoZGlyICRwYXRoRm9yUmVwb3NpdG9yeVJvb3Q7CiAgICAgJG9wdGlvbnMgPSBbXSBpZiAo
ISAkb3B0aW9ucyk7CiAgICAgbXkgJGNvbW1hbmQgPSAicGF0Y2ggIiAuIGpvaW4oIiAiLCAiLXAw
IiwgIi1SIiwgQHskb3B0aW9uc30pOwogICAgIG9wZW4gUEFUQ0gsICJ8ICRjb21tYW5kIiBvciBk
aWUgIkZhaWxlZCB0byBwYXRjaCAkZnVsbFBhdGg6ICQhIjsKICAgICBwcmludCBQQVRDSCAkcGF0
Y2g7CiAgICAgY2xvc2UgUEFUQ0g7CisgICAgY2hkaXIgJHBhdGhTY3JpcHRXYXNSdW5Gcm9tOwog
fQogCiBzdWIgdW5zZXRDaGFuZ2VMb2dEYXRlKCQkKQ==
</data>

          </attachment>
      

    </bug>

</bugzilla>