<?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>61321</bug_id>
          
          <creation_ts>2011-05-23 16:37:10 -0700</creation_ts>
          <short_desc>REGRESSION (r79114): zipcar.com does not load properly.</short_desc>
          <delta_ts>2011-07-29 18:40:35 -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>WebCore JavaScript</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.6</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://zipcar.com</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar, Regression</keywords>
          <priority>P2</priority>
          <bug_severity>Major</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>65405</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jon Lee">jonlee</reporter>
          <assigned_to name="James Simonsen">simonjam</assigned_to>
          <cc>abarth</cc>
    
    <cc>adele</cc>
    
    <cc>aestes</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jonlee</cc>
    
    <cc>mjs</cc>
    
    <cc>simonjam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>408459</commentid>
    <comment_count>0</comment_count>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2011-05-23 16:37:10 -0700</bug_when>
    <thetext>There are at least two pages where zipcar.com breaks:

1. Go to zipcar.com. The Flash video on the homepage does not load properly.

2. You will need to have a zipcar membership to go to the second page. Log in, and go to reserve a car (for me, it is http://www.zipcar.com/sf/reservations/search-by-time).  A calendar icon should appear next to the date fields, and when you click on the clock icon a drop-down list of times should appear. Neither of these occur.

I traced the changelist that breaks this to 79114. The code that makes 2. work doesn&apos;t get called because of a bug in the jQuery plugin loading code. On a working browser I see that req.callReady (line 1602) in requireplugins-jquery-1.4.3.js gets called at least twice, in which the second time s.isDone is true. Right now on ToT req.callReady gets called only once, when s.isDone is false.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>408460</commentid>
    <comment_count>1</comment_count>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2011-05-23 16:37:28 -0700</bug_when>
    <thetext>&lt;rdar://problem/9482755&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>408464</commentid>
    <comment_count>2</comment_count>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2011-05-23 16:43:28 -0700</bug_when>
    <thetext>Changelist listing: http://trac.webkit.org/changeset/79114/trunk</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>408465</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-05-23 16:44:38 -0700</bug_when>
    <thetext>Frowns.  Assigning to myself so this doesn&apos;t get lost.  Feel free to steal.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>408533</commentid>
    <comment_count>4</comment_count>
    <who name="James Simonsen">simonjam</who>
    <bug_when>2011-05-23 18:15:57 -0700</bug_when>
    <thetext>This is an evangelism issue.

requirejs is using a non-compliant (and obsolete) technique to force async script download, but in-order execution. Support for this was removed in change 79114. The HTML5-compliant technique was implemented in change 81198 to address bug 50115.

The requirejs project needs to be updated to use async=false and zipcar.com needs to use the new version. Alternatively zipcar.com could use LABjs, which is where requirejs copied the old idea from. LABjs already supports the new technique.

I can reach out to the requirejs project. I&apos;m not sure what to do about zipcar.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>408540</commentid>
    <comment_count>5</comment_count>
    <who name="James Simonsen">simonjam</who>
    <bug_when>2011-05-23 18:23:41 -0700</bug_when>
    <thetext>Looking at the code in the requirejs project, it looks like they already support the new technique. We just need zipcar to update to a newer version of requirejs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>408549</commentid>
    <comment_count>6</comment_count>
    <who name="Adele Peterson">adele</who>
    <bug_when>2011-05-23 18:29:37 -0700</bug_when>
    <thetext>Is it possible to do site-specific hacks for sites that use the old version of the library?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>408579</commentid>
    <comment_count>7</comment_count>
    <who name="James Simonsen">simonjam</who>
    <bug_when>2011-05-23 19:23:30 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; Is it possible to do site-specific hacks for sites that use the old version of the library?

I&apos;m not sure how the site-specific hacks work. Can you point me to an example?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409275</commentid>
    <comment_count>8</comment_count>
    <who name="Adele Peterson">adele</who>
    <bug_when>2011-05-24 15:44:51 -0700</bug_when>
    <thetext>Here&apos;s an example of removal of an obsolete site specific hack:
http://trac.webkit.org/changeset/68683</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409348</commentid>
    <comment_count>9</comment_count>
      <attachid>94724</attachid>
    <who name="James Simonsen">simonjam</who>
    <bug_when>2011-05-24 18:25:07 -0700</bug_when>
    <thetext>Created attachment 94724
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409352</commentid>
    <comment_count>10</comment_count>
      <attachid>94724</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-05-24 18:45:56 -0700</bug_when>
    <thetext>Comment on attachment 94724
Patch

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

&gt; Source/WebCore/html/HTMLScriptElement.cpp:91
&gt; +    if (!settings-&gt;needsSiteSpecificQuirks())
&gt; +        return false;

Do we have a sense for how many sites use an old version of this library?  I wonder if we should restrict this behavior to only certain hosts.  That&apos;s more likely to let us remove the quirk in the future because we can test the individual sites on the quirks list.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409394</commentid>
    <comment_count>11</comment_count>
    <who name="James Simonsen">simonjam</who>
    <bug_when>2011-05-24 20:05:08 -0700</bug_when>
    <thetext>(In reply to comment #10)
&gt; (From update of attachment 94724 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=94724&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/html/HTMLScriptElement.cpp:91
&gt; &gt; +    if (!settings-&gt;needsSiteSpecificQuirks())
&gt; &gt; +        return false;
&gt; 
&gt; Do we have a sense for how many sites use an old version of this library?  I wonder if we should restrict this behavior to only certain hosts.  That&apos;s more likely to let us remove the quirk in the future because we can test the individual sites on the quirks list.

I&apos;d prefer that as well. I&apos;m not sure how to get a thorough list of users though. I scanned the Chrome bug reports and the only one that sounded like this issue was another report about Zipcar.

I looked at the requirejs history. The now-broken behavior was introduced 6/29/10 in 0.12.0. It was fixed to be HTML5-compliant on 11/13/10 in 0.15.0. Zipcar is running 0.14.5. For the record, they&apos;re now on 0.24.0 and there have been 4 releases with the fix in it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409398</commentid>
    <comment_count>12</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2011-05-24 20:22:55 -0700</bug_when>
    <thetext>Is it somehow possible to inject a script into the main world that checks the version of requirejs?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409403</commentid>
    <comment_count>13</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2011-05-24 20:33:42 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; Is it somehow possible to inject a script into the main world that checks the version of requirejs?

This might not be possible to do in a way that doesn&apos;t require a script to be injected into every document, come to think of it. Anyway, just a thought.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409404</commentid>
    <comment_count>14</comment_count>
    <who name="James Simonsen">simonjam</who>
    <bug_when>2011-05-24 20:36:24 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; Is it somehow possible to inject a script into the main world that checks the version of requirejs?

Evaluating &quot;window.require.version&quot; will give the answer. Is that an acceptable thing to do when we spot a script/cache type?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409464</commentid>
    <comment_count>15</comment_count>
      <attachid>94724</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2011-05-24 22:19:54 -0700</bug_when>
    <thetext>Comment on attachment 94724
Patch

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

&gt;&gt;&gt; Source/WebCore/html/HTMLScriptElement.cpp:91
&gt;&gt;&gt; +        return false;
&gt;&gt; 
&gt;&gt; Do we have a sense for how many sites use an old version of this library?  I wonder if we should restrict this behavior to only certain hosts.  That&apos;s more likely to let us remove the quirk in the future because we can test the individual sites on the quirks list.
&gt; 
&gt; I&apos;d prefer that as well. I&apos;m not sure how to get a thorough list of users though. I scanned the Chrome bug reports and the only one that sounded like this issue was another report about Zipcar.
&gt; 
&gt; I looked at the requirejs history. The now-broken behavior was introduced 6/29/10 in 0.12.0. It was fixed to be HTML5-compliant on 11/13/10 in 0.15.0. Zipcar is running 0.14.5. For the record, they&apos;re now on 0.24.0 and there have been 4 releases with the fix in it.

I think it might be less risky to make this specific to just the one site for now. If other popular sites are affected, we will learn soon enough.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409707</commentid>
    <comment_count>16</comment_count>
      <attachid>94724</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-05-25 09:54:04 -0700</bug_when>
    <thetext>Comment on attachment 94724
Patch

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

&gt;&gt;&gt;&gt; Source/WebCore/html/HTMLScriptElement.cpp:91
&gt;&gt;&gt;&gt; +        return false;
&gt;&gt;&gt; 
&gt;&gt;&gt; Do we have a sense for how many sites use an old version of this library?  I wonder if we should restrict this behavior to only certain hosts.  That&apos;s more likely to let us remove the quirk in the future because we can test the individual sites on the quirks list.
&gt;&gt; 
&gt;&gt; I&apos;d prefer that as well. I&apos;m not sure how to get a thorough list of users though. I scanned the Chrome bug reports and the only one that sounded like this issue was another report about Zipcar.
&gt;&gt; 
&gt;&gt; I looked at the requirejs history. The now-broken behavior was introduced 6/29/10 in 0.12.0. It was fixed to be HTML5-compliant on 11/13/10 in 0.15.0. Zipcar is running 0.14.5. For the record, they&apos;re now on 0.24.0 and there have been 4 releases with the fix in it.
&gt; 
&gt; I think it might be less risky to make this specific to just the one site for now. If other popular sites are affected, we will learn soon enough.

I’m not sure it really matters whether it’s site-specific. But we need to either review- or review+ to keep this moving along!

&gt; Source/WebCore/html/HTMLScriptElement.cpp:93
&gt; +    if (element-&gt;getAttribute(typeAttr) != &quot;script/cache&quot;)

Could use fastGetAttribute here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409756</commentid>
    <comment_count>17</comment_count>
    <who name="Adele Peterson">adele</who>
    <bug_when>2011-05-25 10:59:09 -0700</bug_when>
    <thetext>I agree with Maciej - we can just do it for zipcar for now.  We can add or remove domains in the future as we learn more, or sites get updated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409811</commentid>
    <comment_count>18</comment_count>
      <attachid>94831</attachid>
    <who name="James Simonsen">simonjam</who>
    <bug_when>2011-05-25 12:06:56 -0700</bug_when>
    <thetext>Created attachment 94831
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409814</commentid>
    <comment_count>19</comment_count>
      <attachid>94831</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-05-25 12:10:21 -0700</bug_when>
    <thetext>Comment on attachment 94831
Patch

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

&gt; Source/WebCore/html/HTMLScriptElement.cpp:90
&gt; +    if (url.host() != &quot;www.zipcar.com&quot;)

equalsIgnoringCase</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409818</commentid>
    <comment_count>20</comment_count>
      <attachid>94833</attachid>
    <who name="James Simonsen">simonjam</who>
    <bug_when>2011-05-25 12:14:42 -0700</bug_when>
    <thetext>Created attachment 94833
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409875</commentid>
    <comment_count>21</comment_count>
      <attachid>94833</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-05-25 13:11:45 -0700</bug_when>
    <thetext>Comment on attachment 94833
Patch for landing

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

&gt; Source/WebCore/html/HTMLScriptElement.cpp:85
&gt; +static bool needsOldRequirejsQuirk(HTMLScriptElement* element)

One other tweak to consider for performance’s sake. We should have the most likely check to fail be the first one in the function. Thus I suggest checking &quot;script/cache&quot; first, and only then checking the host. Unless the host check is already super-fast.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409876</commentid>
    <comment_count>22</comment_count>
      <attachid>94833</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-05-25 13:12:34 -0700</bug_when>
    <thetext>Comment on attachment 94833
Patch for landing

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

&gt;&gt; Source/WebCore/html/HTMLScriptElement.cpp:85
&gt;&gt; +static bool needsOldRequirejsQuirk(HTMLScriptElement* element)
&gt; 
&gt; One other tweak to consider for performance’s sake. We should have the most likely check to fail be the first one in the function. Thus I suggest checking &quot;script/cache&quot; first, and only then checking the host. Unless the host check is already super-fast.

Sorry, I mean the cheapest check that is will fail on almost every script element, *not* the most likely one to fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409921</commentid>
    <comment_count>23</comment_count>
      <attachid>94859</attachid>
    <who name="James Simonsen">simonjam</who>
    <bug_when>2011-05-25 14:27:25 -0700</bug_when>
    <thetext>Created attachment 94859
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409951</commentid>
    <comment_count>24</comment_count>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2011-05-25 15:04:13 -0700</bug_when>
    <thetext>Thanks, James!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>410222</commentid>
    <comment_count>25</comment_count>
      <attachid>94859</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-05-25 23:20:49 -0700</bug_when>
    <thetext>Comment on attachment 94859
Patch for landing

Clearing flags on attachment: 94859

Committed r87361: &lt;http://trac.webkit.org/changeset/87361&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>410223</commentid>
    <comment_count>26</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-05-25 23:20:55 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>94724</attachid>
            <date>2011-05-24 18:25:07 -0700</date>
            <delta_ts>2011-05-25 12:06:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-61321-20110524182505.patch</filename>
            <type>text/plain</type>
            <size>5677</size>
            <attacher name="James Simonsen">simonjam</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODcxNDEKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA4YTZlMjFmNzU3NzRhYjI3OTg3NmZh
NzgyMzYzODg4MDJlZmE1ZThlLi4yNjViOTljOTU3ZTIzY2Q3ZjE2YmFmMzdlMGM4YjJmYmEwYjlj
MTEzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDUtMjQgIEphbWVzIFNpbW9uc2VuICA8
c2ltb25qYW1AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEFkZCBzaXRlLXNwZWNpZmljIGhhY2sgZm9yIHNpdGVzIHJ1bm5pbmcg
b2xkIHZlcnNpb25zIG9mIHJlcXVpcmVqcy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTYxMzIxCisKKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MU2NyaXB0
RWxlbWVudC9xdWlyay1vbGQtcmVxdWlyZWpzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogZmFzdC9kb20vSFRNTFNjcmlwdEVsZW1lbnQvcXVpcmstb2xkLXJlcXVpcmVqcy5odG1sOiBB
ZGRlZC4KKwogMjAxMS0wNS0yNCAgQ3NhYmEgT3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQub3Jn
PgogCiAgICAgICAgIFtRdF1bTWFjXSBTa2lwIG9uZSBtb3JlIGZhaWxpbmcgdGVzdC4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxTY3JpcHRFbGVtZW50L3F1aXJrLW9sZC1y
ZXF1aXJlanMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTFNjcmlwdEVs
ZW1lbnQvcXVpcmstb2xkLXJlcXVpcmVqcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmM5MzI2
Y2E1ZjNhMDFjNDMzZDkzMmZhMzlmMjEzODlhODY2NDU3ZQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxTY3JpcHRFbGVtZW50L3F1aXJrLW9sZC1yZXF1aXJlanMt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorQ2hlY2tzIHRoYXQgc2NyaXB0cyBsb2FkIGV2
ZW4gd2l0aCBvbGQgdmVyc2lvbnMgb2YgcmVxdWlyZWpzLCB3aGljaCBzZXQgdGhlIHR5cGUgdG8g
c2NyaXB0L2NhY2hlLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjEz
MjEKK2FzeW5jCitleHRlcm5hbAorZG9uZQorUEFTUyBzY3JpcHQuYXN5bmMgaXMgdHJ1ZQorUEFT
UyBzY3JpcHQyLmFzeW5jIGlzIGZhbHNlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
ZG9tL0hUTUxTY3JpcHRFbGVtZW50L3F1aXJrLW9sZC1yZXF1aXJlanMuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvZG9tL0hUTUxTY3JpcHRFbGVtZW50L3F1aXJrLW9sZC1yZXF1aXJlanMuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi43ZWRjZGE1MzczZWJkOWMzYzM4MGUwYjVhYmNlMWNiZTk5YjJhOTMyCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTFNjcmlwdEVsZW1lbnQvcXVp
cmstb2xkLXJlcXVpcmVqcy5odG1sCkBAIC0wLDAgKzEsNDcgQEAKKzwhRE9DVFlQRSBIVE1MIFBV
QkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9
InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Njcmlw
dD4KKzwvaGVhZD4KKzxib2R5PgorQ2hlY2tzIHRoYXQgc2NyaXB0cyBsb2FkIGV2ZW4gd2l0aCBv
bGQgdmVyc2lvbnMgb2YgcmVxdWlyZWpzLCB3aGljaCBzZXQgdGhlIHR5cGUgdG8gc2NyaXB0L2Nh
Y2hlLgoraHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTYxMzIxCis8ZGl2
IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQ+CitpZiAod2luZG93LmxheW91dFRlc3RDb250
cm9sbGVyKSB7CisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworICAgIGxh
eW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKK30KKwordmFyIGhlYWQgPSBkb2N1
bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdOwordmFyIHNjcmlwdCA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOwordmFyIHNjcmlwdDIgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJzY3JpcHQiKTsKKwordmFyIG51bURvbmUgPSAwOworZnVuY3Rpb24gZG9uZSgp
IHsKKyAgICArK251bURvbmU7CisgICAgaWYgKG51bURvbmUgPT0gMSkgeworICAgICAgICBzY3Jp
cHQyLnR5cGUgPSAic2NyaXB0L2NhY2hlIjsKKyAgICAgICAgc2NyaXB0Mi5zcmMgPSAicmVzb3Vy
Y2VzL2V4dGVybmFsLmpzIjsKKyAgICAgICAgc2NyaXB0Mi5hZGRFdmVudExpc3RlbmVyKCJsb2Fk
IiwgZG9uZSwgZmFsc2UpOworICAgICAgICBoZWFkLmFwcGVuZENoaWxkKHNjcmlwdDIpOworICAg
IH0KKyAgICBpZiAobnVtRG9uZSA9PSAyKSB7CisgICAgICAgIGRlYnVnKCJkb25lIik7CisgICAg
ICAgIHNob3VsZEJlVHJ1ZSgic2NyaXB0LmFzeW5jIik7CisgICAgICAgIHNob3VsZEJlRmFsc2Uo
InNjcmlwdDIuYXN5bmMiKTsKKyAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxl
cikKKyAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsKKyAgICB9
Cit9CisKK3NjcmlwdC50eXBlID0gInNjcmlwdC9jYWNoZSI7CitzY3JpcHQuYXN5bmMgPSB0cnVl
Oworc2NyaXB0LnNyYyA9ICJyZXNvdXJjZXMvYXN5bmMuanMiOworc2NyaXB0LmFkZEV2ZW50TGlz
dGVuZXIoImxvYWQiLCBkb25lLCBmYWxzZSk7CitoZWFkLmFwcGVuZENoaWxkKHNjcmlwdCk7Cis8
L3NjcmlwdD4KKworPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDQ5NGVlNzQ3Njk3YTUx
NGRjNTY3YzY4NTU1NmUwMTE2ZDJjZjI5MzMuLmIwZjQ4NjU3YmNlYzI5YmJlNTUzMjg4OThmMDhj
Mjc2MDBjMWU0ODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxMS0wNS0yNCAgSmFt
ZXMgU2ltb25zZW4gIDxzaW1vbmphbUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIHNpdGUtc3BlY2lmaWMgaGFjayBmb3Ig
c2l0ZXMgcnVubmluZyBvbGQgdmVyc2lvbnMgb2YgcmVxdWlyZWpzLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjEzMjEKKworICAgICAgICBPbGQgdmVy
c2lvbnMgb2YgcmVxdWlyZWpzICg8IDAuMTUuMCkgdHJ5IHRvIGxvYWQgc2NyaXB0cyBpbiBwYXJh
bGxlbCBidXQgZXhlY3V0ZSB0aGVtIGluCisgICAgICAgIG9yZGVyLiBUaGlzIHVzZWQgdG8gd29y
ayBpbiB3ZWJraXQgYnkgc2V0dGluZyBhIGJvZ3VzIHNjcmlwdCB0eXBlIChzY3JpcHQvY2FjaGUp
LCB0aGVuCisgICAgICAgIGNoYW5naW5nIHRoZSB0eXBlIHRvIGEgdmFsaWQgb25lIHdoZW4gdGhl
eSB3YW50ZWQgdG8gZXhlY3V0ZSBpdC4gVGhpcyBoYWNrIHRyYW5zbGF0ZXMgdGhlCisgICAgICAg
IGJlaGF2aW9yIGludG8gdGhlIG5ldyBBUEkgKGJ5IGRpc2FibGluZyBmb3JjZUFzeW5jKS4KKwor
ICAgICAgICBUZXN0OiBmYXN0L2RvbS9IVE1MU2NyaXB0RWxlbWVudC9xdWlyay1vbGQtcmVxdWly
ZWpzLmh0bWwKKworICAgICAgICAqIGh0bWwvSFRNTFNjcmlwdEVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6bmVlZHNPbGRSZXF1aXJlanNRdWlyayk6IEFkZGVkLgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTFNjcmlwdEVsZW1lbnQ6Omluc2VydGVkSW50b0RvY3VtZW50KToKKyAgICAgICAg
SWYgaGFjayBpcyBuZWVkZWQsIHNldCBhIHByb3BlciBzY3JpcHQgdHlwZSBzbyBzY3JpcHQgbG9h
ZHMuCisgICAgICAgIElmIHNjcmlwdCBpc24ndCBhc3luYywgZGlzYWJsZSBmb3JjZUFzeW5jIHNv
IHNjcmlwdCBleGVjdXRlcyBpbiBvcmRlci4KKwogMjAxMS0wNS0yMyAgUGF2ZWwgUG9kaXZpbG92
ICA8cG9kaXZpbG92QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBZdXJ5IFNl
bWlraGF0c2t5LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU2NyaXB0RWxl
bWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTY3JpcHRFbGVtZW50LmNwcAppbmRl
eCAxNjhlNmQyMzJiYTJhODljYzg0MTdhMTE4ZWRkMjFhYWI2NDMyZGY4Li41YzQxMGI1MmVlOWY4
N2MzY2RkODVkMGI4ZGJiOWQyYzE5YjhlNWFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxTY3JpcHRFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxT
Y3JpcHRFbGVtZW50LmNwcApAQCAtMjksNiArMjksNyBAQAogI2luY2x1ZGUgIkV2ZW50TmFtZXMu
aCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNsdWRlICJTY3JpcHRFdmVudExpc3RlbmVy
LmgiCisjaW5jbHVkZSAiU2V0dGluZ3MuaCIKICNpbmNsdWRlICJUZXh0LmgiCiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKQEAgLTgxLDggKzgyLDI3IEBAIHZvaWQgSFRNTFNjcmlwdEVsZW1lbnQ6OnBh
cnNlTWFwcGVkQXR0cmlidXRlKEF0dHJpYnV0ZSogYXR0cikKICAgICAgICAgSFRNTEVsZW1lbnQ6
OnBhcnNlTWFwcGVkQXR0cmlidXRlKGF0dHIpOwogfQogCitzdGF0aWMgYm9vbCBuZWVkc09sZFJl
cXVpcmVqc1F1aXJrKEhUTUxTY3JpcHRFbGVtZW50KiBlbGVtZW50KQoreworICAgIFNldHRpbmdz
KiBzZXR0aW5ncyA9IGVsZW1lbnQtPmRvY3VtZW50KCktPnNldHRpbmdzKCk7CisgICAgaWYgKCFz
ZXR0aW5ncykKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGlmICghc2V0dGluZ3MtPm5lZWRz
U2l0ZVNwZWNpZmljUXVpcmtzKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGlmIChl
bGVtZW50LT5nZXRBdHRyaWJ1dGUodHlwZUF0dHIpICE9ICJzY3JpcHQvY2FjaGUiKQorICAgICAg
ICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1cm4gdHJ1ZTsKK30KKwogdm9pZCBIVE1MU2NyaXB0
RWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbnQoKQogeworICAgIGlmIChuZWVkc09sZFJlcXVp
cmVqc1F1aXJrKHRoaXMpKSB7CisgICAgICAgIGlmICghYXN5bmNBdHRyaWJ1dGVWYWx1ZSgpKQor
ICAgICAgICAgICAgaGFuZGxlQXN5bmNBdHRyaWJ1dGUoKTsgLy8gQ2xlYXIgZm9yY2VBc3luYywg
c28gdGhpcyBzY3JpcHQgbG9hZHMgaW4gcGFyYWxsZWwsIGJ1dCBleGVjdXRlcyBpbiBvcmRlci4K
KyAgICAgICAgc2V0QXR0cmlidXRlKHR5cGVBdHRyLCAidGV4dC9qYXZhc2NyaXB0Iik7CisgICAg
fQogICAgIEhUTUxFbGVtZW50OjppbnNlcnRlZEludG9Eb2N1bWVudCgpOwogICAgIFNjcmlwdEVs
ZW1lbnQ6Omluc2VydGVkSW50b0RvY3VtZW50KCk7CiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>94831</attachid>
            <date>2011-05-25 12:06:56 -0700</date>
            <delta_ts>2011-05-25 12:14:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-61321-20110525120655.patch</filename>
            <type>text/plain</type>
            <size>2728</size>
            <attacher name="James Simonsen">simonjam</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODcyNjYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBlOWZhNjg3ZDg4Zjc5OTU0
MTNkZjI3ZDdhYWQ1Mzk3ODkxZWNiNjg5Li4wZWZhNDE3YTkzZmFiYTQ1ODNiMzJmNTBlOTQyMjlm
MTc2N2MyZTVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTEtMDUtMjUgIEphbWVz
IFNpbW9uc2VuICA8c2ltb25qYW1AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBzaXRlLXNwZWNpZmljIGhhY2sgZm9yIHpp
cGNhci5jb20gd2l0aCBvbGQgdmVyc2lvbnMgb2YgcmVxdWlyZWpzLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjEzMjEKKworICAgICAgICBPbGQgdmVy
c2lvbnMgb2YgcmVxdWlyZWpzICg8IDAuMTUuMCkgdHJ5IHRvIGxvYWQgc2NyaXB0cyBpbiBwYXJh
bGxlbCBidXQgZXhlY3V0ZSB0aGVtIGluCisgICAgICAgIG9yZGVyLiBUaGlzIHVzZWQgdG8gd29y
ayBpbiB3ZWJraXQgYnkgc2V0dGluZyBhIGJvZ3VzIHNjcmlwdCB0eXBlIChzY3JpcHQvY2FjaGUp
LCB0aGVuCisgICAgICAgIGNoYW5naW5nIHRoZSB0eXBlIHRvIGEgdmFsaWQgb25lIHdoZW4gdGhl
eSB3YW50ZWQgdG8gZXhlY3V0ZSBpdC4gVGhpcyBoYWNrIHRyYW5zbGF0ZXMgdGhlCisgICAgICAg
IGJlaGF2aW9yIGludG8gdGhlIG5ldyBBUEkgKGJ5IGRpc2FibGluZyBmb3JjZUFzeW5jKS4KKwor
ICAgICAgICAqIGh0bWwvSFRNTFNjcmlwdEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
bmVlZHNPbGRSZXF1aXJlanNRdWlyayk6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFNj
cmlwdEVsZW1lbnQ6Omluc2VydGVkSW50b0RvY3VtZW50KToKKyAgICAgICAgSWYgaGFjayBpcyBu
ZWVkZWQsIHNldCBhIHByb3BlciBzY3JpcHQgdHlwZSBzbyBzY3JpcHQgbG9hZHMuCisgICAgICAg
IElmIHNjcmlwdCBpc24ndCBhc3luYywgZGlzYWJsZSBmb3JjZUFzeW5jIHNvIHNjcmlwdCBleGVj
dXRlcyBpbiBvcmRlci4KKwogMjAxMS0wNS0yNCAgRnVtaXRvc2hpIFVrYWkgIDx1a2FpQGNocm9t
aXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLiBGaXggY2xhbmcgZXJyb3IuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTY3JpcHRFbGVtZW50LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTFNjcmlwdEVsZW1lbnQuY3BwCmluZGV4IDE2OGU2ZDIzMmJhMmE4OWNj
ODQxN2ExMThlZGQyMWFhYjY0MzJkZjguLjU5ZGYzMjkwNDhhOGJjMTYwYzUzMzY3OGFhYzI2OWI1
NGRkMjQ1NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNjcmlwdEVsZW1l
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNjcmlwdEVsZW1lbnQuY3BwCkBA
IC0yOSw2ICsyOSw3IEBACiAjaW5jbHVkZSAiRXZlbnROYW1lcy5oIgogI2luY2x1ZGUgIkhUTUxO
YW1lcy5oIgogI2luY2x1ZGUgIlNjcmlwdEV2ZW50TGlzdGVuZXIuaCIKKyNpbmNsdWRlICJTZXR0
aW5ncy5oIgogI2luY2x1ZGUgIlRleHQuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtODEs
OCArODIsMzMgQEAgdm9pZCBIVE1MU2NyaXB0RWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaWJ1dGUo
QXR0cmlidXRlKiBhdHRyKQogICAgICAgICBIVE1MRWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaWJ1
dGUoYXR0cik7CiB9CiAKK3N0YXRpYyBib29sIG5lZWRzT2xkUmVxdWlyZWpzUXVpcmsoSFRNTFNj
cmlwdEVsZW1lbnQqIGVsZW1lbnQpCit7CisgICAgRG9jdW1lbnQqIGRvY3VtZW50ID0gZWxlbWVu
dC0+ZG9jdW1lbnQoKTsKKworICAgIGNvbnN0IEtVUkwmIHVybCA9IGRvY3VtZW50LT51cmwoKTsK
KyAgICBpZiAodXJsLmhvc3QoKSAhPSAid3d3LnppcGNhci5jb20iKQorICAgICAgICByZXR1cm4g
ZmFsc2U7CisKKyAgICBTZXR0aW5ncyogc2V0dGluZ3MgPSBkb2N1bWVudC0+c2V0dGluZ3MoKTsK
KyAgICBpZiAoIXNldHRpbmdzKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYgKCFzZXR0
aW5ncy0+bmVlZHNTaXRlU3BlY2lmaWNRdWlya3MoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwor
CisgICAgaWYgKGVsZW1lbnQtPmZhc3RHZXRBdHRyaWJ1dGUodHlwZUF0dHIpICE9ICJzY3JpcHQv
Y2FjaGUiKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1cm4gdHJ1ZTsKK30KKwog
dm9pZCBIVE1MU2NyaXB0RWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbnQoKQogeworICAgIGlm
IChuZWVkc09sZFJlcXVpcmVqc1F1aXJrKHRoaXMpKSB7CisgICAgICAgIGlmICghYXN5bmNBdHRy
aWJ1dGVWYWx1ZSgpKQorICAgICAgICAgICAgaGFuZGxlQXN5bmNBdHRyaWJ1dGUoKTsgLy8gQ2xl
YXIgZm9yY2VBc3luYywgc28gdGhpcyBzY3JpcHQgbG9hZHMgaW4gcGFyYWxsZWwsIGJ1dCBleGVj
dXRlcyBpbiBvcmRlci4KKyAgICAgICAgc2V0QXR0cmlidXRlKHR5cGVBdHRyLCAidGV4dC9qYXZh
c2NyaXB0Iik7CisgICAgfQogICAgIEhUTUxFbGVtZW50OjppbnNlcnRlZEludG9Eb2N1bWVudCgp
OwogICAgIFNjcmlwdEVsZW1lbnQ6Omluc2VydGVkSW50b0RvY3VtZW50KCk7CiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>94833</attachid>
            <date>2011-05-25 12:14:42 -0700</date>
            <delta_ts>2011-05-25 14:27:22 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-61321-20110525121441.patch</filename>
            <type>text/plain</type>
            <size>2742</size>
            <attacher name="James Simonsen">simonjam</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODcyNjYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBlOWZhNjg3ZDg4Zjc5OTU0
MTNkZjI3ZDdhYWQ1Mzk3ODkxZWNiNjg5Li42ZjczN2ZhZGNlYjdjN2M3OTU1YmM2YzhkNDM4MzVk
NjI4NzM3MThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTEtMDUtMjUgIEphbWVz
IFNpbW9uc2VuICA8c2ltb25qYW1AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IEFkYW0gQmFydGguCisKKyAgICAgICAgQWRkIHNpdGUtc3BlY2lmaWMgaGFjayBmb3IgemlwY2Fy
LmNvbSB3aXRoIG9sZCB2ZXJzaW9ucyBvZiByZXF1aXJlanMuCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02MTMyMQorCisgICAgICAgIE9sZCB2ZXJzaW9u
cyBvZiByZXF1aXJlanMgKDwgMC4xNS4wKSB0cnkgdG8gbG9hZCBzY3JpcHRzIGluIHBhcmFsbGVs
IGJ1dCBleGVjdXRlIHRoZW0gaW4KKyAgICAgICAgb3JkZXIuIFRoaXMgdXNlZCB0byB3b3JrIGlu
IHdlYmtpdCBieSBzZXR0aW5nIGEgYm9ndXMgc2NyaXB0IHR5cGUgKHNjcmlwdC9jYWNoZSksIHRo
ZW4KKyAgICAgICAgY2hhbmdpbmcgdGhlIHR5cGUgdG8gYSB2YWxpZCBvbmUgd2hlbiB0aGV5IHdh
bnRlZCB0byBleGVjdXRlIGl0LiBUaGlzIGhhY2sgdHJhbnNsYXRlcyB0aGUKKyAgICAgICAgYmVo
YXZpb3IgaW50byB0aGUgbmV3IEFQSSAoYnkgZGlzYWJsaW5nIGZvcmNlQXN5bmMpLgorCisgICAg
ICAgICogaHRtbC9IVE1MU2NyaXB0RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpuZWVk
c09sZFJlcXVpcmVqc1F1aXJrKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpIVE1MU2NyaXB0
RWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbnQpOgorICAgICAgICBJZiBoYWNrIGlzIG5lZWRl
ZCwgc2V0IGEgcHJvcGVyIHNjcmlwdCB0eXBlIHNvIHNjcmlwdCBsb2Fkcy4KKyAgICAgICAgSWYg
c2NyaXB0IGlzbid0IGFzeW5jLCBkaXNhYmxlIGZvcmNlQXN5bmMgc28gc2NyaXB0IGV4ZWN1dGVz
IGluIG9yZGVyLgorCiAyMDExLTA1LTI0ICBGdW1pdG9zaGkgVWthaSAgPHVrYWlAY2hyb21pdW0u
b3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQuIEZpeCBjbGFuZyBlcnJvci4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNjcmlwdEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MU2NyaXB0RWxlbWVudC5jcHAKaW5kZXggMTY4ZTZkMjMyYmEyYTg5Y2M4NDE3
YTExOGVkZDIxYWFiNjQzMmRmOC4uMzJjY2E3ZWRjODZiMmY5ODAzYmI1MGZlYzBlYmY5YWFlN2Nl
ZmE0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU2NyaXB0RWxlbWVudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU2NyaXB0RWxlbWVudC5jcHAKQEAgLTI5
LDYgKzI5LDcgQEAKICNpbmNsdWRlICJFdmVudE5hbWVzLmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVz
LmgiCiAjaW5jbHVkZSAiU2NyaXB0RXZlbnRMaXN0ZW5lci5oIgorI2luY2x1ZGUgIlNldHRpbmdz
LmgiCiAjaW5jbHVkZSAiVGV4dC5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC04MSw4ICs4
MiwzMyBAQCB2b2lkIEhUTUxTY3JpcHRFbGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZShBdHRy
aWJ1dGUqIGF0dHIpCiAgICAgICAgIEhUTUxFbGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZShh
dHRyKTsKIH0KIAorc3RhdGljIGJvb2wgbmVlZHNPbGRSZXF1aXJlanNRdWlyayhIVE1MU2NyaXB0
RWxlbWVudCogZWxlbWVudCkKK3sKKyAgICBEb2N1bWVudCogZG9jdW1lbnQgPSBlbGVtZW50LT5k
b2N1bWVudCgpOworCisgICAgY29uc3QgS1VSTCYgdXJsID0gZG9jdW1lbnQtPnVybCgpOworICAg
IGlmICghZXF1YWxJZ25vcmluZ0Nhc2UodXJsLmhvc3QoKSwgInd3dy56aXBjYXIuY29tIikpCisg
ICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIFNldHRpbmdzKiBzZXR0aW5ncyA9IGRvY3VtZW50
LT5zZXR0aW5ncygpOworICAgIGlmICghc2V0dGluZ3MpCisgICAgICAgIHJldHVybiBmYWxzZTsK
KyAgICBpZiAoIXNldHRpbmdzLT5uZWVkc1NpdGVTcGVjaWZpY1F1aXJrcygpKQorICAgICAgICBy
ZXR1cm4gZmFsc2U7CisKKyAgICBpZiAoZWxlbWVudC0+ZmFzdEdldEF0dHJpYnV0ZSh0eXBlQXR0
cikgIT0gInNjcmlwdC9jYWNoZSIpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIHJldHVy
biB0cnVlOworfQorCiB2b2lkIEhUTUxTY3JpcHRFbGVtZW50OjppbnNlcnRlZEludG9Eb2N1bWVu
dCgpCiB7CisgICAgaWYgKG5lZWRzT2xkUmVxdWlyZWpzUXVpcmsodGhpcykpIHsKKyAgICAgICAg
aWYgKCFhc3luY0F0dHJpYnV0ZVZhbHVlKCkpCisgICAgICAgICAgICBoYW5kbGVBc3luY0F0dHJp
YnV0ZSgpOyAvLyBDbGVhciBmb3JjZUFzeW5jLCBzbyB0aGlzIHNjcmlwdCBsb2FkcyBpbiBwYXJh
bGxlbCwgYnV0IGV4ZWN1dGVzIGluIG9yZGVyLgorICAgICAgICBzZXRBdHRyaWJ1dGUodHlwZUF0
dHIsICJ0ZXh0L2phdmFzY3JpcHQiKTsKKyAgICB9CiAgICAgSFRNTEVsZW1lbnQ6Omluc2VydGVk
SW50b0RvY3VtZW50KCk7CiAgICAgU2NyaXB0RWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbnQo
KTsKIH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>94859</attachid>
            <date>2011-05-25 14:27:25 -0700</date>
            <delta_ts>2011-05-25 23:20:49 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-61321-20110525142724.patch</filename>
            <type>text/plain</type>
            <size>2742</size>
            <attacher name="James Simonsen">simonjam</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODcyNjYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBlOWZhNjg3ZDg4Zjc5OTU0
MTNkZjI3ZDdhYWQ1Mzk3ODkxZWNiNjg5Li42ZjczN2ZhZGNlYjdjN2M3OTU1YmM2YzhkNDM4MzVk
NjI4NzM3MThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTEtMDUtMjUgIEphbWVz
IFNpbW9uc2VuICA8c2ltb25qYW1AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IEFkYW0gQmFydGguCisKKyAgICAgICAgQWRkIHNpdGUtc3BlY2lmaWMgaGFjayBmb3IgemlwY2Fy
LmNvbSB3aXRoIG9sZCB2ZXJzaW9ucyBvZiByZXF1aXJlanMuCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02MTMyMQorCisgICAgICAgIE9sZCB2ZXJzaW9u
cyBvZiByZXF1aXJlanMgKDwgMC4xNS4wKSB0cnkgdG8gbG9hZCBzY3JpcHRzIGluIHBhcmFsbGVs
IGJ1dCBleGVjdXRlIHRoZW0gaW4KKyAgICAgICAgb3JkZXIuIFRoaXMgdXNlZCB0byB3b3JrIGlu
IHdlYmtpdCBieSBzZXR0aW5nIGEgYm9ndXMgc2NyaXB0IHR5cGUgKHNjcmlwdC9jYWNoZSksIHRo
ZW4KKyAgICAgICAgY2hhbmdpbmcgdGhlIHR5cGUgdG8gYSB2YWxpZCBvbmUgd2hlbiB0aGV5IHdh
bnRlZCB0byBleGVjdXRlIGl0LiBUaGlzIGhhY2sgdHJhbnNsYXRlcyB0aGUKKyAgICAgICAgYmVo
YXZpb3IgaW50byB0aGUgbmV3IEFQSSAoYnkgZGlzYWJsaW5nIGZvcmNlQXN5bmMpLgorCisgICAg
ICAgICogaHRtbC9IVE1MU2NyaXB0RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpuZWVk
c09sZFJlcXVpcmVqc1F1aXJrKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpIVE1MU2NyaXB0
RWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbnQpOgorICAgICAgICBJZiBoYWNrIGlzIG5lZWRl
ZCwgc2V0IGEgcHJvcGVyIHNjcmlwdCB0eXBlIHNvIHNjcmlwdCBsb2Fkcy4KKyAgICAgICAgSWYg
c2NyaXB0IGlzbid0IGFzeW5jLCBkaXNhYmxlIGZvcmNlQXN5bmMgc28gc2NyaXB0IGV4ZWN1dGVz
IGluIG9yZGVyLgorCiAyMDExLTA1LTI0ICBGdW1pdG9zaGkgVWthaSAgPHVrYWlAY2hyb21pdW0u
b3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQuIEZpeCBjbGFuZyBlcnJvci4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNjcmlwdEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MU2NyaXB0RWxlbWVudC5jcHAKaW5kZXggMTY4ZTZkMjMyYmEyYTg5Y2M4NDE3
YTExOGVkZDIxYWFiNjQzMmRmOC4uMTRiY2Y4YzY0MDZiZTFiOTdjZDcyYjdhMTRlMDYzNDE3ZjI0
NGY1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU2NyaXB0RWxlbWVudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU2NyaXB0RWxlbWVudC5jcHAKQEAgLTI5
LDYgKzI5LDcgQEAKICNpbmNsdWRlICJFdmVudE5hbWVzLmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVz
LmgiCiAjaW5jbHVkZSAiU2NyaXB0RXZlbnRMaXN0ZW5lci5oIgorI2luY2x1ZGUgIlNldHRpbmdz
LmgiCiAjaW5jbHVkZSAiVGV4dC5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC04MSw4ICs4
MiwzMyBAQCB2b2lkIEhUTUxTY3JpcHRFbGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZShBdHRy
aWJ1dGUqIGF0dHIpCiAgICAgICAgIEhUTUxFbGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZShh
dHRyKTsKIH0KIAorc3RhdGljIGJvb2wgbmVlZHNPbGRSZXF1aXJlanNRdWlyayhIVE1MU2NyaXB0
RWxlbWVudCogZWxlbWVudCkKK3sKKyAgICBpZiAoZWxlbWVudC0+ZmFzdEdldEF0dHJpYnV0ZSh0
eXBlQXR0cikgIT0gInNjcmlwdC9jYWNoZSIpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAg
IERvY3VtZW50KiBkb2N1bWVudCA9IGVsZW1lbnQtPmRvY3VtZW50KCk7CisKKyAgICBjb25zdCBL
VVJMJiB1cmwgPSBkb2N1bWVudC0+dXJsKCk7CisgICAgaWYgKCFlcXVhbElnbm9yaW5nQ2FzZSh1
cmwuaG9zdCgpLCAid3d3LnppcGNhci5jb20iKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisg
ICAgU2V0dGluZ3MqIHNldHRpbmdzID0gZG9jdW1lbnQtPnNldHRpbmdzKCk7CisgICAgaWYgKCFz
ZXR0aW5ncykKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGlmICghc2V0dGluZ3MtPm5lZWRz
U2l0ZVNwZWNpZmljUXVpcmtzKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIHJldHVy
biB0cnVlOworfQorCiB2b2lkIEhUTUxTY3JpcHRFbGVtZW50OjppbnNlcnRlZEludG9Eb2N1bWVu
dCgpCiB7CisgICAgaWYgKG5lZWRzT2xkUmVxdWlyZWpzUXVpcmsodGhpcykpIHsKKyAgICAgICAg
aWYgKCFhc3luY0F0dHJpYnV0ZVZhbHVlKCkpCisgICAgICAgICAgICBoYW5kbGVBc3luY0F0dHJp
YnV0ZSgpOyAvLyBDbGVhciBmb3JjZUFzeW5jLCBzbyB0aGlzIHNjcmlwdCBsb2FkcyBpbiBwYXJh
bGxlbCwgYnV0IGV4ZWN1dGVzIGluIG9yZGVyLgorICAgICAgICBzZXRBdHRyaWJ1dGUodHlwZUF0
dHIsICJ0ZXh0L2phdmFzY3JpcHQiKTsKKyAgICB9CiAgICAgSFRNTEVsZW1lbnQ6Omluc2VydGVk
SW50b0RvY3VtZW50KCk7CiAgICAgU2NyaXB0RWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbnQo
KTsKIH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>