<?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>38671</bug_id>
          
          <creation_ts>2010-05-06 11:37:49 -0700</creation_ts>
          <short_desc>[WTFURL] Add a buffer for managing the output of the canonicalizer</short_desc>
          <delta_ts>2010-05-08 10:24:53 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Barth">abarth</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>brettw</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric</cc>
    
    <cc>mjs</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>221851</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-05-06 11:37:49 -0700</bug_when>
    <thetext>[WTFURL] Add a buffer for managing the output of the canonicalizer</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>221857</commentid>
    <comment_count>1</comment_count>
      <attachid>55280</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-05-06 11:43:39 -0700</bug_when>
    <thetext>Created attachment 55280
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>221883</commentid>
    <comment_count>2</comment_count>
      <attachid>55280</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2010-05-06 12:30:08 -0700</bug_when>
    <thetext>Comment on attachment 55280
Patch

JavaScriptCore/wtf/url/src/URLBuffer.h:68
 +      inline int length() const { return m_length; }
nit: no need for the &apos;inline&apos; keyword here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>221891</commentid>
    <comment_count>3</comment_count>
      <attachid>55286</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-05-06 12:46:25 -0700</bug_when>
    <thetext>Created attachment 55286
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>222871</commentid>
    <comment_count>4</comment_count>
      <attachid>55286</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-05-08 06:09:46 -0700</bug_when>
    <thetext>Comment on attachment 55286
Patch for landing

Clearing flags on attachment: 55286

Committed r59024: &lt;http://trac.webkit.org/changeset/59024&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>222873</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-05-08 06:09:52 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>222892</commentid>
    <comment_count>6</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-08 09:30:10 -0700</bug_when>
    <thetext>http://build.webkit.org/results/SnowLeopard%20Intel%20Release%20(Tests)/r59026%20(9735)/results.html

websocket/tests/frame-length-skip.html seems more likely to time out after this change.  Could this have caused a performance regression?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>222894</commentid>
    <comment_count>7</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-05-08 10:24:53 -0700</bug_when>
    <thetext>No.  This code isn&apos;t even compiled yet.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55280</attachid>
            <date>2010-05-06 11:43:39 -0700</date>
            <delta_ts>2010-05-06 12:46:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-38671-20100506114337.patch</filename>
            <type>text/plain</type>
            <size>7044</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDU4ODk3KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzAgQEAKKzIwMTAtMDUtMDYgIEFkYW0gQmFy
dGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBbV1RGVVJMXSBBZGQgYSBidWZmZXIgZm9yIG1hbmFnaW5nIHRoZSBv
dXRwdXQgb2YgdGhlIGNhbm9uaWNhbGl6ZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTM4NjcxCisKKyAgICAgICAgVGhlIGNhbm9uaWNhbGl6ZXIgcHJv
ZHVjZXMgYSBzdHJlYW0gb2YgY2Fub25pY2FsaXplZCBjaGFyYWN0ZXJzLCB3aGljaAorICAgICAg
ICB3ZSB3aWxsIHN0b3JlIGluIGEgVVJMQnVmZmVyLiAgVVJMQnVmZmVyIGlzIHF1aXRlIHNpbWls
YXIgdG8gVmVjdG9yLAorICAgICAgICBidXQgc2VydmVzIGFzIGFuIGFic3RyYWN0aW9uIHRvIGlz
b2xhdGUgdXMgZnJvbSB0aGUgdW5kZXJseWluZworICAgICAgICBjaGFyYWN0ZXIgc3RvcmFnZS4g
IEluIHRoZSBjYXNlIG9mIFdlYktpdCwgd2UnbGwgcHJvYmFibHkgaW1wbGVtZW50IGEKKyAgICAg
ICAgc3ViY2xhc3Mgb2YgVVJMQnVmZmVyIHdpdGggVmVjdG9yLiAgSW4gQ2hyb21pdW0sIHRoZSBi
YWNraW5nIHN0b3JlIGlzIGEKKyAgICAgICAgc3RkOjpzdHJpbmcsIHdoaWNoIGF2b2lkcyBhbiB1
bm5lY2Vzc2FyeSBtZW1jcHkgdGhhdCB3b3VsZCBiZSBjYXVzZWQgYnkKKyAgICAgICAgdXNpbmcg
VmVjdG9yIGluc3RlYWQuCisKKyAgICAgICAgKiB3dGYvdXJsL3NyYy9VUkxCdWZmZXIuaDogQWRk
ZWQuCisgICAgICAgIChXVEY6OlVSTEJ1ZmZlcjo6VVJMQnVmZmVyKToKKyAgICAgICAgKFdURjo6
VVJMQnVmZmVyOjp+VVJMQnVmZmVyKToKKyAgICAgICAgKFdURjo6VVJMQnVmZmVyOjphdCk6Cisg
ICAgICAgIChXVEY6OlVSTEJ1ZmZlcjo6c2V0KToKKyAgICAgICAgKFdURjo6VVJMQnVmZmVyOjpj
YXBhY2l0eSk6CisgICAgICAgIChXVEY6OlVSTEJ1ZmZlcjo6bGVuZ3RoKToKKyAgICAgICAgKFdU
Rjo6VVJMQnVmZmVyOjpkYXRhKToKKyAgICAgICAgKFdURjo6VVJMQnVmZmVyOjpzZXRMZW5ndGgp
OgorICAgICAgICAoV1RGOjpVUkxCdWZmZXI6OmFwcGVuZCk6CisgICAgICAgIChXVEY6OlVSTEJ1
ZmZlcjo6Z3Jvdyk6CisKIDIwMTAtMDUtMDYgIE1hcnRpbiBSb2JpbnNvbiAgPG1yb2JpbnNvbkB3
ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEd1c3Rhdm8gTm9yb25oYSBTaWx2YS4K
SW5kZXg6IEphdmFTY3JpcHRDb3JlL3d0Zi91cmwvc3JjL1VSTEJ1ZmZlci5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIEphdmFTY3JpcHRDb3JlL3d0Zi91cmwvc3JjL1VSTEJ1ZmZlci5oCShyZXZpc2lvbiAwKQor
KysgSmF2YVNjcmlwdENvcmUvd3RmL3VybC9zcmMvVVJMQnVmZmVyLmgJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsMTM2IEBACisvLyBDb3B5cmlnaHQgMjAxMCwgR29vZ2xlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKy8vCisvLyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKy8vIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKy8vIG1ldDoK
Ky8vCisvLyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorLy8gbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorLy8gICAgICogUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorLy8gY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgor
Ly8gaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZQorLy8gZGlzdHJpYnV0aW9uLgorLy8gICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBH
b29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworLy8gY29udHJpYnV0b3JzIG1heSBiZSB1
c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKy8vIHRoaXMg
c29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisvLwor
Ly8gVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5E
IENPTlRSSUJVVE9SUworLy8gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKy8vIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorLy8gQSBQQVJUSUNV
TEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklH
SFQKKy8vIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLAorLy8gU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorLy8gTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisvLyBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkKKy8vIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKy8vIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorLy8gT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KworI2lmbmRlZiBVUkxCdWZmZXJfaAorI2RlZmluZSBVUkxCdWZmZXJfaAorCituYW1lc3BhY2Ug
V1RGIHsKKworLy8gQmFzZSBjbGFzcyBmb3IgdGhlIGNhbm9uaWNhbGl6ZXIgb3V0cHV0LCB0aGlz
IG1haW50YWlucyBhIGJ1ZmZlciBhbmQKKy8vIHN1cHBvcnRzIHNpbXBsZSByZXNpemluZyBhbmQg
YXBwZW5kIG9wZXJhdGlvbnMgb24gaXQuCisvLworLy8gSXQgaXMgVkVSWSBJTVBPUlRBTlQgdGhh
dCBubyB2aXJ0dWFsIGZ1bmN0aW9uIGNhbGxzIGJlIG1hZGUgb24gdGhlIGNvbW1vbgorLy8gY29k
ZSBwYXRoLiBXZSBvbmx5IGhhdmUgdHdvIHZpcnR1YWwgZnVuY3Rpb24gY2FsbHMsIHRoZSBkZXN0
cnVjdG9yIGFuZCBhCisvLyByZXNpemUgZnVuY3Rpb24gdGhhdCBpcyBjYWxsZWQgd2hlbiB0aGUg
ZXhpc3RpbmcgYnVmZmVyIGlzIG5vdCBiaWcgZW5vdWdoLgorLy8gVGhlIGRlcml2ZWQgY2xhc3Mg
aXMgdGhlbiBpbiBjaGFyZ2Ugb2Ygc2V0dGluZyB1cCBvdXIgYnVmZmVyIHdoaWNoIHdlIHdpbGwK
Ky8vIG1hbmFnZS4KK3RlbXBsYXRlPHR5cGVuYW1lIENIQVI+CitjbGFzcyBVUkxCdWZmZXIgewor
cHVibGljOgorICAgIFVSTEJ1ZmZlcigpIDogbV9idWZmZXIoMCksIG1fY2FwYWNpdHkoMCksIG1f
bGVuZ3RoKDApIHsgfQorICAgIHZpcnR1YWwgflVSTEJ1ZmZlcigpIHsgfQorCisgICAgLy8gSW1w
bGVtZW50ZWQgdG8gcmVzaXplIHRoZSBidWZmZXIuIFRoaXMgZnVuY3Rpb24gc2hvdWxkIHVwZGF0
ZSB0aGUgYnVmZmVyCisgICAgLy8gcG9pbnRlciB0byBwb2ludCB0byB0aGUgbmV3IGJ1ZmZlciwg
YW5kIGFueSBvbGQgZGF0YSB1cCB0byB8bV9sZW5ndGh8IGluCisgICAgLy8gdGhlIGJ1ZmZlciBt
dXN0IGJlIGNvcGllZCBvdmVyLgorICAgIC8vCisgICAgLy8gVGhlIG5ldyBzaXplIG11c3QgYmUg
bGFyZ2VyIHRoYW4gbV9jYXBhY2l0eS4KKyAgICB2aXJ0dWFsIHZvaWQgcmVzaXplKGludCkgPSAw
OworCisgICAgaW5saW5lIGNoYXIgYXQoaW50IG9mZnNldCkgY29uc3QgeyByZXR1cm4gbV9idWZm
ZXJbb2Zmc2V0XTsgfQorICAgIGlubGluZSB2b2lkIHNldChpbnQgb2Zmc2V0LCBDSEFSIGNoKQor
ICAgIHsKKyAgICAgICAgLy8gRklYTUU6IEFkZCBBU1NFUlQob2Zmc2V0IDwgbGVuZ3RoKCkpOwor
ICAgICAgICBtX2J1ZmZlcltvZmZzZXRdID0gY2g7CisgICAgfQorCisgICAgLy8gUmV0dXJucyB0
aGUgY3VycmVudCBjYXBhY2l0eSBvZiB0aGUgYnVmZmVyLiBUaGUgbGVuZ3RoKCkgaXMgdGhlIG51
bWJlciBvZgorICAgIC8vIGNoYXJhY3RlcnMgdGhhdCBoYXZlIGJlZW4gZGVjbGFyZWQgdG8gYmUg
d3JpdHRlbiwgYnV0IHRoZSBjYXBhY2l0eSgpIGlzCisgICAgLy8gdGhlIG51bWJlciB0aGF0IGNh
biBiZSB3cml0dGVuIHdpdGhvdXQgcmVhbGxvY2F0aW9uLiBJZiB0aGUgY2FsbGVyIG11c3QKKyAg
ICAvLyB3cml0ZSBtYW55IGNoYXJhY3RlcnMgYXQgb25jZSwgaXQgY2FuIG1ha2Ugc3VyZSB0aGVy
ZSBpcyBlbm91Z2ggY2FwYWNpdHksCisgICAgLy8gd3JpdGUgdGhlIGRhdGEsIHRoZW4gdXNlIHNl
dExlbmd0aCgpIHRvIGRlY2xhcmUgdGhlIG5ldyBsZW5ndGgoKS4KKyAgICBpbnQgY2FwYWNpdHko
KSBjb25zdCB7IHJldHVybiBtX2NhcGFjaXR5OyB9CisgICAgaW5saW5lIGludCBsZW5ndGgoKSBj
b25zdCB7IHJldHVybiBtX2xlbmd0aDsgfQorCisgICAgLy8gVGhlIG91dHB1dCB3aWxsIE5PVCBi
ZSAwLXRlcm1pbmF0ZWQuIENhbGwgbGVuZ3RoKCkgdG8gZ2V0IHRoZSBsZW5ndGguCisgICAgY29u
c3QgQ0hBUiogZGF0YSgpIGNvbnN0IHsgcmV0dXJuIG1fYnVmZmVyOyB9CisgICAgQ0hBUiogZGF0
YSgpIHsgcmV0dXJuIG1fYnVmZmVyOyB9CisKKyAgICAvLyBTaG9ydGVucyB0aGUgVVJMIHRvIHRo
ZSBuZXcgbGVuZ3RoLiBVc2VkIGZvciAiYmFja2luZyB1cCIgd2hlbiBwcm9jZXNzaW5nCisgICAg
Ly8gcmVsYXRpdmUgcGF0aHMuIFRoaXMgY2FuIGFsc28gYmUgdXNlZCBpZiBhbiBleHRlcm5hbCBm
dW5jdGlvbiB3cml0ZXMgYSBsb3QKKyAgICAvLyBvZiBkYXRhIHRvIHRoZSBidWZmZXIgKHdoZW4g
dXNpbmcgdGhlICJSYXciIHZlcnNpb24gYmVsb3cpIGJleW9uZCB0aGUgZW5kLAorICAgIC8vIHRv
IGRlY2xhcmUgdGhlIG5ldyBsZW5ndGguCisgICAgdm9pZCBzZXRMZW5ndGgoaW50IGxlbmd0aCkK
KyAgICB7CisgICAgICAgIC8vIEZJWE1FOiBBZGQgQVNTRVJUKGxlbmd0aCA8IGNhcGFjaXR5KCkp
OworICAgICAgICBtX2xlbmd0aCA9IGxlbmd0aDsKKyAgICB9CisKKyAgICAvLyBUaGlzIGlzIHRo
ZSBtb3N0IHBlcmZvcm1hbmNlIGNyaXRpY2FsIGZ1bmN0aW9uLCBzaW5jZSBpdCBpcyBjYWxsZWQg
Zm9yCisgICAgLy8gZXZlcnkgY2hhcmFjdGVyLgorICAgIHZvaWQgYXBwZW5kKENIQVIgY2gpCisg
ICAgeworICAgICAgICAvLyBJbiBWQzIwMDUsIHB1dHRpbmcgdGhpcyBjb21tb24gY2FzZSBmaXJz
dCBzcGVlZHMgdXAgZXhlY3V0aW9uCisgICAgICAgIC8vIGRyYW1hdGljYWxseSBiZWNhdXNlIHRo
aXMgYnJhbmNoIGlzIHByZWRpY3RlZCBhcyB0YWtlbi4KKyAgICAgICAgaWYgKG1fbGVuZ3RoIDwg
bV9jYXBhY2l0eSkgeworICAgICAgICAgICAgbV9idWZmZXJbbV9sZW5ndGhdID0gY2g7CisgICAg
ICAgICAgICArK21fbGVuZ3RoOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKKyAg
ICAgICAgaWYgKCFncm93KDEpKQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIG1fYnVm
ZmVyW21fbGVuZ3RoXSA9IGNoOworICAgICAgICArK21fbGVuZ3RoOworICAgIH0KKworICAgIHZv
aWQgYXBwZW5kKGNvbnN0IENIQVIqIHN0ciwgaW50IHN0ckxlbmd0aCkKKyAgICB7CisgICAgICAg
IGlmIChtX2xlbmd0aCArIHN0ckxlbmd0aCA+IG1fY2FwYWNpdHkpIHsKKyAgICAgICAgICAgIGlm
ICghZ3JvdyhtX2xlbmd0aCArIHN0ckxlbmd0aCAtIG1fY2FwYWNpdHkpKQorICAgICAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IHN0ckxl
bmd0aDsgaSsrKQorICAgICAgICAgICAgbV9idWZmZXJbbV9sZW5ndGggKyBpXSA9IHN0cltpXTsK
KyAgICAgICAgbV9sZW5ndGggKz0gc3RyTGVuZ3RoOworICAgIH0KKworcHJvdGVjdGVkOgorICAg
IC8vIFJldHVybnMgdHJ1ZSBpZiB0aGUgYnVmZmVyIGNvdWxkIGJlIHJlc2l6ZWQsIGZhbHNlIG9u
IE9PTS4KKyAgICBib29sIGdyb3coaW50IG1pbmltdW1BZGRpdGlvbmFsQ2FwYWNpdHkpCisgICAg
eworICAgICAgICBzdGF0aWMgY29uc3QgaW50IG1pbmltdW1DYXBhY2l0eSA9IDE2OworICAgICAg
ICBpbnQgbmV3Q2FwYWNpdHkgPSBtX2NhcGFjaXR5ID8gbV9jYXBhY2l0eSA6IG1pbmltdW1DYXBh
Y2l0eTsKKyAgICAgICAgZG8geworICAgICAgICAgICAgaWYgKG5ld0NhcGFjaXR5ID49ICgxIDw8
IDMwKSkgLy8gUHJldmVudCBvdmVyZmxvdyBiZWxvdy4KKyAgICAgICAgICAgICAgICByZXR1cm4g
ZmFsc2U7CisgICAgICAgICAgICBuZXdDYXBhY2l0eSAqPSAyOworICAgICAgICB9IHdoaWxlIChu
ZXdDYXBhY2l0eSA8IG1fY2FwYWNpdHkgKyBtaW5pbXVtQWRkaXRpb25hbENhcGFjaXR5KTsKKyAg
ICAgICAgcmVzaXplKG5ld0NhcGFjaXR5KTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQor
CisgICAgQ0hBUiogbV9idWZmZXI7CisgICAgaW50IG1fY2FwYWNpdHk7CisgICAgaW50IG1fbGVu
Z3RoOyAvLyBVc2VkIGNoYXJhY3RlcnMgaW4gdGhlIGJ1ZmZlci4KK307CisKK30gLy8gbmFtZXNw
YWNlIFdURgorCisjZW5kaWYgLy8gVVJMQnVmZmVyX2gK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55286</attachid>
            <date>2010-05-06 12:46:25 -0700</date>
            <delta_ts>2010-05-08 06:09:46 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-38671-20100506124623.patch</filename>
            <type>text/plain</type>
            <size>7035</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDU4ODk3KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzAgQEAKKzIwMTAtMDUtMDYgIEFkYW0gQmFy
dGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBGaXNo
ZXIuCisKKyAgICAgICAgW1dURlVSTF0gQWRkIGEgYnVmZmVyIGZvciBtYW5hZ2luZyB0aGUgb3V0
cHV0IG9mIHRoZSBjYW5vbmljYWxpemVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0zODY3MQorCisgICAgICAgIFRoZSBjYW5vbmljYWxpemVyIHByb2R1
Y2VzIGEgc3RyZWFtIG9mIGNhbm9uaWNhbGl6ZWQgY2hhcmFjdGVycywgd2hpY2gKKyAgICAgICAg
d2Ugd2lsbCBzdG9yZSBpbiBhIFVSTEJ1ZmZlci4gIFVSTEJ1ZmZlciBpcyBxdWl0ZSBzaW1pbGFy
IHRvIFZlY3RvciwKKyAgICAgICAgYnV0IHNlcnZlcyBhcyBhbiBhYnN0cmFjdGlvbiB0byBpc29s
YXRlIHVzIGZyb20gdGhlIHVuZGVybHlpbmcKKyAgICAgICAgY2hhcmFjdGVyIHN0b3JhZ2UuICBJ
biB0aGUgY2FzZSBvZiBXZWJLaXQsIHdlJ2xsIHByb2JhYmx5IGltcGxlbWVudCBhCisgICAgICAg
IHN1YmNsYXNzIG9mIFVSTEJ1ZmZlciB3aXRoIFZlY3Rvci4gIEluIENocm9taXVtLCB0aGUgYmFj
a2luZyBzdG9yZSBpcyBhCisgICAgICAgIHN0ZDo6c3RyaW5nLCB3aGljaCBhdm9pZHMgYW4gdW5u
ZWNlc3NhcnkgbWVtY3B5IHRoYXQgd291bGQgYmUgY2F1c2VkIGJ5CisgICAgICAgIHVzaW5nIFZl
Y3RvciBpbnN0ZWFkLgorCisgICAgICAgICogd3RmL3VybC9zcmMvVVJMQnVmZmVyLmg6IEFkZGVk
LgorICAgICAgICAoV1RGOjpVUkxCdWZmZXI6OlVSTEJ1ZmZlcik6CisgICAgICAgIChXVEY6OlVS
TEJ1ZmZlcjo6flVSTEJ1ZmZlcik6CisgICAgICAgIChXVEY6OlVSTEJ1ZmZlcjo6YXQpOgorICAg
ICAgICAoV1RGOjpVUkxCdWZmZXI6OnNldCk6CisgICAgICAgIChXVEY6OlVSTEJ1ZmZlcjo6Y2Fw
YWNpdHkpOgorICAgICAgICAoV1RGOjpVUkxCdWZmZXI6Omxlbmd0aCk6CisgICAgICAgIChXVEY6
OlVSTEJ1ZmZlcjo6ZGF0YSk6CisgICAgICAgIChXVEY6OlVSTEJ1ZmZlcjo6c2V0TGVuZ3RoKToK
KyAgICAgICAgKFdURjo6VVJMQnVmZmVyOjphcHBlbmQpOgorICAgICAgICAoV1RGOjpVUkxCdWZm
ZXI6Omdyb3cpOgorCiAyMDEwLTA1LTA2ICBNYXJ0aW4gUm9iaW5zb24gIDxtcm9iaW5zb25Ad2Vi
a2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBHdXN0YXZvIE5vcm9uaGEgU2lsdmEuCklu
ZGV4OiBKYXZhU2NyaXB0Q29yZS93dGYvdXJsL3NyYy9VUkxCdWZmZXIuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBKYXZhU2NyaXB0Q29yZS93dGYvdXJsL3NyYy9VUkxCdWZmZXIuaAkocmV2aXNpb24gMCkKKysr
IEphdmFTY3JpcHRDb3JlL3d0Zi91cmwvc3JjL1VSTEJ1ZmZlci5oCShyZXZpc2lvbiAwKQpAQCAt
MCwwICsxLDEzNiBAQAorLy8gQ29weXJpZ2h0IDIwMTAsIEdvb2dsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisvLworLy8gUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisvLyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisvLyBtZXQ6Cisv
LworLy8gICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKy8vIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKy8vICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKy8vIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKy8v
IGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUKKy8vIGRpc3RyaWJ1dGlvbi4KKy8vICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29v
Z2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKy8vIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNl
ZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisvLyB0aGlzIHNv
ZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorLy8KKy8v
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBD
T05UUklCVVRPUlMKKy8vICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisvLyBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKy8vIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hU
CisvLyBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwKKy8vIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKy8vIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorLy8gREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZCisvLyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCisvLyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKy8vIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisK
KyNpZm5kZWYgVVJMQnVmZmVyX2gKKyNkZWZpbmUgVVJMQnVmZmVyX2gKKworbmFtZXNwYWNlIFdU
RiB7CisKKy8vIEJhc2UgY2xhc3MgZm9yIHRoZSBjYW5vbmljYWxpemVyIG91dHB1dCwgdGhpcyBt
YWludGFpbnMgYSBidWZmZXIgYW5kCisvLyBzdXBwb3J0cyBzaW1wbGUgcmVzaXppbmcgYW5kIGFw
cGVuZCBvcGVyYXRpb25zIG9uIGl0LgorLy8KKy8vIEl0IGlzIFZFUlkgSU1QT1JUQU5UIHRoYXQg
bm8gdmlydHVhbCBmdW5jdGlvbiBjYWxscyBiZSBtYWRlIG9uIHRoZSBjb21tb24KKy8vIGNvZGUg
cGF0aC4gV2Ugb25seSBoYXZlIHR3byB2aXJ0dWFsIGZ1bmN0aW9uIGNhbGxzLCB0aGUgZGVzdHJ1
Y3RvciBhbmQgYQorLy8gcmVzaXplIGZ1bmN0aW9uIHRoYXQgaXMgY2FsbGVkIHdoZW4gdGhlIGV4
aXN0aW5nIGJ1ZmZlciBpcyBub3QgYmlnIGVub3VnaC4KKy8vIFRoZSBkZXJpdmVkIGNsYXNzIGlz
IHRoZW4gaW4gY2hhcmdlIG9mIHNldHRpbmcgdXAgb3VyIGJ1ZmZlciB3aGljaCB3ZSB3aWxsCisv
LyBtYW5hZ2UuCit0ZW1wbGF0ZTx0eXBlbmFtZSBDSEFSPgorY2xhc3MgVVJMQnVmZmVyIHsKK3B1
YmxpYzoKKyAgICBVUkxCdWZmZXIoKSA6IG1fYnVmZmVyKDApLCBtX2NhcGFjaXR5KDApLCBtX2xl
bmd0aCgwKSB7IH0KKyAgICB2aXJ0dWFsIH5VUkxCdWZmZXIoKSB7IH0KKworICAgIC8vIEltcGxl
bWVudGVkIHRvIHJlc2l6ZSB0aGUgYnVmZmVyLiBUaGlzIGZ1bmN0aW9uIHNob3VsZCB1cGRhdGUg
dGhlIGJ1ZmZlcgorICAgIC8vIHBvaW50ZXIgdG8gcG9pbnQgdG8gdGhlIG5ldyBidWZmZXIsIGFu
ZCBhbnkgb2xkIGRhdGEgdXAgdG8gfG1fbGVuZ3RofCBpbgorICAgIC8vIHRoZSBidWZmZXIgbXVz
dCBiZSBjb3BpZWQgb3Zlci4KKyAgICAvLworICAgIC8vIFRoZSBuZXcgc2l6ZSBtdXN0IGJlIGxh
cmdlciB0aGFuIG1fY2FwYWNpdHkuCisgICAgdmlydHVhbCB2b2lkIHJlc2l6ZShpbnQpID0gMDsK
KworICAgIGlubGluZSBjaGFyIGF0KGludCBvZmZzZXQpIGNvbnN0IHsgcmV0dXJuIG1fYnVmZmVy
W29mZnNldF07IH0KKyAgICBpbmxpbmUgdm9pZCBzZXQoaW50IG9mZnNldCwgQ0hBUiBjaCkKKyAg
ICB7CisgICAgICAgIC8vIEZJWE1FOiBBZGQgQVNTRVJUKG9mZnNldCA8IGxlbmd0aCgpKTsKKyAg
ICAgICAgbV9idWZmZXJbb2Zmc2V0XSA9IGNoOworICAgIH0KKworICAgIC8vIFJldHVybnMgdGhl
IGN1cnJlbnQgY2FwYWNpdHkgb2YgdGhlIGJ1ZmZlci4gVGhlIGxlbmd0aCgpIGlzIHRoZSBudW1i
ZXIgb2YKKyAgICAvLyBjaGFyYWN0ZXJzIHRoYXQgaGF2ZSBiZWVuIGRlY2xhcmVkIHRvIGJlIHdy
aXR0ZW4sIGJ1dCB0aGUgY2FwYWNpdHkoKSBpcworICAgIC8vIHRoZSBudW1iZXIgdGhhdCBjYW4g
YmUgd3JpdHRlbiB3aXRob3V0IHJlYWxsb2NhdGlvbi4gSWYgdGhlIGNhbGxlciBtdXN0CisgICAg
Ly8gd3JpdGUgbWFueSBjaGFyYWN0ZXJzIGF0IG9uY2UsIGl0IGNhbiBtYWtlIHN1cmUgdGhlcmUg
aXMgZW5vdWdoIGNhcGFjaXR5LAorICAgIC8vIHdyaXRlIHRoZSBkYXRhLCB0aGVuIHVzZSBzZXRM
ZW5ndGgoKSB0byBkZWNsYXJlIHRoZSBuZXcgbGVuZ3RoKCkuCisgICAgaW50IGNhcGFjaXR5KCkg
Y29uc3QgeyByZXR1cm4gbV9jYXBhY2l0eTsgfQorICAgIGludCBsZW5ndGgoKSBjb25zdCB7IHJl
dHVybiBtX2xlbmd0aDsgfQorCisgICAgLy8gVGhlIG91dHB1dCB3aWxsIE5PVCBiZSAwLXRlcm1p
bmF0ZWQuIENhbGwgbGVuZ3RoKCkgdG8gZ2V0IHRoZSBsZW5ndGguCisgICAgY29uc3QgQ0hBUiog
ZGF0YSgpIGNvbnN0IHsgcmV0dXJuIG1fYnVmZmVyOyB9CisgICAgQ0hBUiogZGF0YSgpIHsgcmV0
dXJuIG1fYnVmZmVyOyB9CisKKyAgICAvLyBTaG9ydGVucyB0aGUgVVJMIHRvIHRoZSBuZXcgbGVu
Z3RoLiBVc2VkIGZvciAiYmFja2luZyB1cCIgd2hlbiBwcm9jZXNzaW5nCisgICAgLy8gcmVsYXRp
dmUgcGF0aHMuIFRoaXMgY2FuIGFsc28gYmUgdXNlZCBpZiBhbiBleHRlcm5hbCBmdW5jdGlvbiB3
cml0ZXMgYSBsb3QKKyAgICAvLyBvZiBkYXRhIHRvIHRoZSBidWZmZXIgKHdoZW4gdXNpbmcgdGhl
ICJSYXciIHZlcnNpb24gYmVsb3cpIGJleW9uZCB0aGUgZW5kLAorICAgIC8vIHRvIGRlY2xhcmUg
dGhlIG5ldyBsZW5ndGguCisgICAgdm9pZCBzZXRMZW5ndGgoaW50IGxlbmd0aCkKKyAgICB7Cisg
ICAgICAgIC8vIEZJWE1FOiBBZGQgQVNTRVJUKGxlbmd0aCA8IGNhcGFjaXR5KCkpOworICAgICAg
ICBtX2xlbmd0aCA9IGxlbmd0aDsKKyAgICB9CisKKyAgICAvLyBUaGlzIGlzIHRoZSBtb3N0IHBl
cmZvcm1hbmNlIGNyaXRpY2FsIGZ1bmN0aW9uLCBzaW5jZSBpdCBpcyBjYWxsZWQgZm9yCisgICAg
Ly8gZXZlcnkgY2hhcmFjdGVyLgorICAgIHZvaWQgYXBwZW5kKENIQVIgY2gpCisgICAgeworICAg
ICAgICAvLyBJbiBWQzIwMDUsIHB1dHRpbmcgdGhpcyBjb21tb24gY2FzZSBmaXJzdCBzcGVlZHMg
dXAgZXhlY3V0aW9uCisgICAgICAgIC8vIGRyYW1hdGljYWxseSBiZWNhdXNlIHRoaXMgYnJhbmNo
IGlzIHByZWRpY3RlZCBhcyB0YWtlbi4KKyAgICAgICAgaWYgKG1fbGVuZ3RoIDwgbV9jYXBhY2l0
eSkgeworICAgICAgICAgICAgbV9idWZmZXJbbV9sZW5ndGhdID0gY2g7CisgICAgICAgICAgICAr
K21fbGVuZ3RoOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKKyAgICAgICAgaWYg
KCFncm93KDEpKQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIG1fYnVmZmVyW21fbGVu
Z3RoXSA9IGNoOworICAgICAgICArK21fbGVuZ3RoOworICAgIH0KKworICAgIHZvaWQgYXBwZW5k
KGNvbnN0IENIQVIqIHN0ciwgaW50IHN0ckxlbmd0aCkKKyAgICB7CisgICAgICAgIGlmIChtX2xl
bmd0aCArIHN0ckxlbmd0aCA+IG1fY2FwYWNpdHkpIHsKKyAgICAgICAgICAgIGlmICghZ3Jvdyht
X2xlbmd0aCArIHN0ckxlbmd0aCAtIG1fY2FwYWNpdHkpKQorICAgICAgICAgICAgICAgIHJldHVy
bjsKKyAgICAgICAgfQorICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IHN0ckxlbmd0aDsgaSsr
KQorICAgICAgICAgICAgbV9idWZmZXJbbV9sZW5ndGggKyBpXSA9IHN0cltpXTsKKyAgICAgICAg
bV9sZW5ndGggKz0gc3RyTGVuZ3RoOworICAgIH0KKworcHJvdGVjdGVkOgorICAgIC8vIFJldHVy
bnMgdHJ1ZSBpZiB0aGUgYnVmZmVyIGNvdWxkIGJlIHJlc2l6ZWQsIGZhbHNlIG9uIE9PTS4KKyAg
ICBib29sIGdyb3coaW50IG1pbmltdW1BZGRpdGlvbmFsQ2FwYWNpdHkpCisgICAgeworICAgICAg
ICBzdGF0aWMgY29uc3QgaW50IG1pbmltdW1DYXBhY2l0eSA9IDE2OworICAgICAgICBpbnQgbmV3
Q2FwYWNpdHkgPSBtX2NhcGFjaXR5ID8gbV9jYXBhY2l0eSA6IG1pbmltdW1DYXBhY2l0eTsKKyAg
ICAgICAgZG8geworICAgICAgICAgICAgaWYgKG5ld0NhcGFjaXR5ID49ICgxIDw8IDMwKSkgLy8g
UHJldmVudCBvdmVyZmxvdyBiZWxvdy4KKyAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Cisg
ICAgICAgICAgICBuZXdDYXBhY2l0eSAqPSAyOworICAgICAgICB9IHdoaWxlIChuZXdDYXBhY2l0
eSA8IG1fY2FwYWNpdHkgKyBtaW5pbXVtQWRkaXRpb25hbENhcGFjaXR5KTsKKyAgICAgICAgcmVz
aXplKG5ld0NhcGFjaXR5KTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorCisgICAgQ0hB
UiogbV9idWZmZXI7CisgICAgaW50IG1fY2FwYWNpdHk7CisgICAgaW50IG1fbGVuZ3RoOyAvLyBV
c2VkIGNoYXJhY3RlcnMgaW4gdGhlIGJ1ZmZlci4KK307CisKK30gLy8gbmFtZXNwYWNlIFdURgor
CisjZW5kaWYgLy8gVVJMQnVmZmVyX2gK
</data>

          </attachment>
      

    </bug>

</bugzilla>