<?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>55844</bug_id>
          
          <creation_ts>2011-03-06 09:15:33 -0800</creation_ts>
          <short_desc>Expose page dismissal event status through the WebKit API for chromium</short_desc>
          <delta_ts>2011-06-07 15:34:47 -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>WebKit API</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>55849</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Sreeram Ramachandran">gro.mareers</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dglazkov</cc>
    
    <cc>fishd</cc>
    
    <cc>sreeram</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>363080</commentid>
    <comment_count>0</comment_count>
    <who name="Sreeram Ramachandran">gro.mareers</who>
    <bug_when>2011-03-06 09:15:33 -0800</bug_when>
    <thetext>Expose page dismissal event status through the WebKit API for chromium</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363085</commentid>
    <comment_count>1</comment_count>
    <who name="Sreeram Ramachandran">gro.mareers</who>
    <bug_when>2011-03-06 09:22:50 -0800</bug_when>
    <thetext>*** Bug 55845 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363086</commentid>
    <comment_count>2</comment_count>
    <who name="Sreeram Ramachandran">gro.mareers</who>
    <bug_when>2011-03-06 09:24:13 -0800</bug_when>
    <thetext>Chromium will find it useful to know the page dismissal status (i.e., whether a frame is in the midst of executing a beforeunload or unload handler), so expose that information through the chromium port in the WebKit API.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363088</commentid>
    <comment_count>3</comment_count>
      <attachid>84891</attachid>
    <who name="Sreeram Ramachandran">gro.mareers</who>
    <bug_when>2011-03-06 09:48:40 -0800</bug_when>
    <thetext>Created attachment 84891
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363089</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-03-06 09:53:14 -0800</bug_when>
    <thetext>Attachment 84891 did not build on chromium:
Build output: http://queues.webkit.org/results/8102316</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363090</commentid>
    <comment_count>5</comment_count>
      <attachid>84892</attachid>
    <who name="Sreeram Ramachandran">gro.mareers</who>
    <bug_when>2011-03-06 09:59:31 -0800</bug_when>
    <thetext>Created attachment 84892
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363091</commentid>
    <comment_count>6</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-03-06 10:01:01 -0800</bug_when>
    <thetext>This looks ok, but can you help a bit explaining how this is useful?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363092</commentid>
    <comment_count>7</comment_count>
    <who name="Sreeram Ramachandran">gro.mareers</who>
    <bug_when>2011-03-06 10:08:16 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; This looks ok, but can you help a bit explaining how this is useful?

In Chromium, we&apos;d like to have the ability to suppress javascript messages (alerts, prompts, confirm dialogs) during page dismissal (as per http://crbug.com/68780). To do that, when a javascript message is being dispatched, we need to know whether an unload handler is being run. Currently, the API doesn&apos;t provide a way to know that; this patch allows that query.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363093</commentid>
    <comment_count>8</comment_count>
      <attachid>84892</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-03-06 10:10:03 -0800</bug_when>
    <thetext>Comment on attachment 84892
Patch

ok.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363110</commentid>
    <comment_count>9</comment_count>
    <who name="Sreeram Ramachandran">gro.mareers</who>
    <bug_when>2011-03-06 12:10:55 -0800</bug_when>
    <thetext>Thanks for the quick review and approval, Dimitri.

It looks like the commit queue is repeatedly choking on the patch, failing an unrelated layout test (accessibility/aria-activedescendant-crash.html -&gt; timed out). That test passes on my local client. In any case, it has nothing to do with this patch, so am wondering how to get this landed. Help?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363112</commentid>
    <comment_count>10</comment_count>
      <attachid>84892</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-06 12:36:36 -0800</bug_when>
    <thetext>Comment on attachment 84892
Patch

Clearing flags on attachment: 84892

Committed r80436: &lt;http://trac.webkit.org/changeset/80436&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363113</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-06 12:36:41 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363124</commentid>
    <comment_count>12</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-03-06 13:46:49 -0800</bug_when>
    <thetext>(In reply to comment #11)
&gt; All reviewed patches have been landed.  Closing bug.

Sadly, this broke Chromium. Have you tested the patch against Chromium build?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363128</commentid>
    <comment_count>13</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-03-06 14:02:23 -0800</bug_when>
    <thetext>Rolled out in http://trac.webkit.org/changeset/80437 -- broke Chromium compile.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363152</commentid>
    <comment_count>14</comment_count>
    <who name="Sreeram Ramachandran">gro.mareers</who>
    <bug_when>2011-03-06 16:29:26 -0800</bug_when>
    <thetext>Yikes. Yes, I built chromium, and it built fine on my machine. Sorry about the breakage. Thanks for reverting the change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363188</commentid>
    <comment_count>15</comment_count>
      <attachid>84911</attachid>
    <who name="Sreeram Ramachandran">gro.mareers</who>
    <bug_when>2011-03-06 19:49:23 -0800</bug_when>
    <thetext>Created attachment 84911
Second attempt</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363196</commentid>
    <comment_count>16</comment_count>
      <attachid>84911</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-03-06 20:07:46 -0800</bug_when>
    <thetext>Comment on attachment 84911
Second attempt

activate the photon torpedoes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363222</commentid>
    <comment_count>17</comment_count>
      <attachid>84911</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-06 21:41:35 -0800</bug_when>
    <thetext>Comment on attachment 84911
Second attempt

Clearing flags on attachment: 84911

Committed r80451: &lt;http://trac.webkit.org/changeset/80451&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363223</commentid>
    <comment_count>18</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-06 21:41:41 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366331</commentid>
    <comment_count>19</comment_count>
      <attachid>84911</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2011-03-11 14:50:46 -0800</bug_when>
    <thetext>Comment on attachment 84911
Second attempt

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

&gt; Source/WebKit/chromium/public/WebFrame.h:370
&gt; +    virtual bool pageDismissalEventBeingDispatched() const = 0;

have the events already been dispatched or are they just about to be dispatched?
usually, we name methods like this using the &quot;did&quot; or &quot;will&quot; prefix.

willDispatchUnloadEvents or didDispatchUnloadEvents would be a good choices here.

also, i&apos;m a bit confused as to how this will be used.  if the beforeunload dialog
is cancelled (i.e., if the new navigation is cancelled because the user wanted to
stay on the page), then how will the embedder know that?

also, i don&apos;t see why this behavior change wouldn&apos;t be implemented entirely within
webkit.  i see no reason for their to be a chromium side to this behavior change.
why do you need a webkit api?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366355</commentid>
    <comment_count>20</comment_count>
    <who name="Sreeram Ramachandran">gro.mareers</who>
    <bug_when>2011-03-11 15:07:08 -0800</bug_when>
    <thetext>(In reply to comment #19)
&gt; (From update of attachment 84911 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=84911&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/chromium/public/WebFrame.h:370
&gt; &gt; +    virtual bool pageDismissalEventBeingDispatched() const = 0;
&gt; 
&gt; have the events already been dispatched or are they just about to be dispatched?
&gt; usually, we name methods like this using the &quot;did&quot; or &quot;will&quot; prefix.
&gt; 
&gt; willDispatchUnloadEvents or didDispatchUnloadEvents would be a good choices here.

It&apos;s actually in the &quot;midst&quot; of being dispatched. I.e., the FrameLoader has told the frame to dispatch the unload event; the event may block (e.g.: if there&apos;s an alert() within the event handler). Once the event handlers are done, the dispatch is &quot;done&quot;. This API mirrors the method of the same name in FrameLoader. See how the underlying variable is set and unset at:
http://trac.webkit.org/browser/trunk/Source/WebCore/loader/FrameLoader.cpp#L377(for the unload event)
http://trac.webkit.org/browser/trunk/Source/WebCore/loader/FrameLoader.cpp#L2926 (for the beforeunload event)

&gt; also, i&apos;m a bit confused as to how this will be used.  if the beforeunload dialog
&gt; is cancelled (i.e., if the new navigation is cancelled because the user wanted to
&gt; stay on the page), then how will the embedder know that?

This doesn&apos;t affect the beforeunload dialog. I.e., only the actual onbeforeunload() and onunload() handlers (and not the &quot;stay or leave&quot; dialog) are considered to be &quot;page dismissal event&quot; in progress. Sequence of events (as per line 2926 in FrameLoader.cpp):
1. set m_pageDismissalEventBeingDispatched = true.
2. call onbeforeunload().
3. // perhaps it fires an alert(), which is where this API will be useful.
4. onbeforeunload() returns a value (see step 6).
5. set m_pageDismissalEventBeingDispatched = false.
6. if the return value was not NULL, dispatch the &quot;stay or leave&quot; dialog.

&gt; also, i don&apos;t see why this behavior change wouldn&apos;t be implemented entirely within
&gt; webkit.  i see no reason for their to be a chromium side to this behavior change.
&gt; why do you need a webkit api?

I think the decision on whether alert()s should be ignored during unload events should be handled on the Chromium side. Safari and other webkit clients may not want to disable alerts (which is the current behaviour in all browsers). In addition, even in Chromium, we don&apos;t always want to ignore alerts (e.g.: I think extension_host doesn&apos;t want to).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366390</commentid>
    <comment_count>21</comment_count>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2011-03-11 15:56:50 -0800</bug_when>
    <thetext>&gt; &gt; also, i don&apos;t see why this behavior change wouldn&apos;t be implemented entirely within
&gt; &gt; webkit.  i see no reason for their to be a chromium side to this behavior change.
&gt; &gt; why do you need a webkit api?
&gt; 
&gt; I think the decision on whether alert()s should be ignored during unload events should be handled on the Chromium side. Safari and other webkit clients may not want to disable alerts (which is the current behaviour in all browsers). In addition, even in Chromium, we don&apos;t always want to ignore alerts (e.g.: I think extension_host doesn&apos;t want to).

I have to disagree.  We are trying to change the behavior of the web platform here, and the definition of the web platform should reside as much as possible within the webkit repository and not be spread between multiple repositories.

We should be championing this breaking change on the working groups and experimenting with this implementation in webkit behind a compile time flag to inform the html spec.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366414</commentid>
    <comment_count>22</comment_count>
    <who name="Sreeram Ramachandran">gro.mareers</who>
    <bug_when>2011-03-11 16:33:46 -0800</bug_when>
    <thetext>(In reply to comment #21)
&gt; &gt; I think the decision on whether alert()s should be ignored during unload events should be handled on the Chromium side. Safari and other webkit clients may not want to disable alerts (which is the current behaviour in all browsers). In addition, even in Chromium, we don&apos;t always want to ignore alerts (e.g.: I think extension_host doesn&apos;t want to).
&gt; 
&gt; I have to disagree.  We are trying to change the behavior of the web platform here, and the definition of the web platform should reside as much as possible within the webkit repository and not be spread between multiple repositories.
&gt; 
&gt; We should be championing this breaking change on the working groups and experimenting with this implementation in webkit behind a compile time flag to inform the html spec.

I agree (that it should be standard behaviour). I went this route only because of what Ojan said at http://crbug.com/68780#c3

I think it&apos;d be nice to implement this in Chromium for now, show that the web isn&apos;t horribly broken because of it (e.g.: no complaints about it); such evidence might give us better standing to argue for it to become standard behaviour.

Should I withdraw this API and the CL in progress at http://codereview.chromium.org/6627063/?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366419</commentid>
    <comment_count>23</comment_count>
    <who name="Sreeram Ramachandran">gro.mareers</who>
    <bug_when>2011-03-11 16:38:30 -0800</bug_when>
    <thetext>(In reply to comment #22)
&gt; Should I withdraw this API and the CL in progress at http://codereview.chromium.org/6627063/?

Er, I meant to add: Is it okay if I implement this entirely in the Chromium port of the API (i.e., in ChromeClientImpl; thus not needing any #defines), or would you like to see this in WebCore (#defined out for other clients for now)?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366758</commentid>
    <comment_count>24</comment_count>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2011-03-13 17:20:58 -0700</bug_when>
    <thetext>(In reply to comment #23)
&gt; (In reply to comment #22)
&gt; &gt; Should I withdraw this API and the CL in progress at http://codereview.chromium.org/6627063/?
&gt; 
&gt; Er, I meant to add: Is it okay if I implement this entirely in the Chromium port of the API (i.e., in ChromeClientImpl; thus not needing any #defines), or would you like to see this in WebCore (#defined out for other clients for now)?

In general, I think we are best served when our implementation does not suffer from unusual constraints like this.  It is better to do the cleanest possible implementation even if it has to be behind #defines.  That way, your code will be easier to maintain in the future.

At the very least, I think it should be completely implemented in WebKit and there should be accompanying layout tests.  This way, once we prove that it is safe for the web, the cost for other WebKit ports to adopt this behavior change will be as close to zero as possible.

If we don&apos;t do the above, then there will be additional work to redo the patch to be a proper WebCore patch.  That adds a more cost, and there will be less incentives on our part to do this work, so we should just do it properly from the start.  Pros: less engineering work, Cons: ugly #ifdefs.  Seems like the pros outweigh the cons.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366776</commentid>
    <comment_count>25</comment_count>
    <who name="Sreeram Ramachandran">gro.mareers</who>
    <bug_when>2011-03-13 18:16:13 -0700</bug_when>
    <thetext>(In reply to comment #24)
&gt; At the very least, I think it should be completely implemented in WebKit and there should be accompanying layout tests.  This way, once we prove that it is safe for the web, the cost for other WebKit ports to adopt this behavior change will be as close to zero as possible.

Alright. I&apos;ll submit a revert, mark this WontFix and open a separate bug to fix it properly in webcore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>367820</commentid>
    <comment_count>26</comment_count>
      <attachid>85833</attachid>
    <who name="Sreeram Ramachandran">gro.mareers</who>
    <bug_when>2011-03-15 11:40:35 -0700</bug_when>
    <thetext>Created attachment 85833
Revert</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>368402</commentid>
    <comment_count>27</comment_count>
      <attachid>85833</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-03-16 11:14:16 -0700</bug_when>
    <thetext>Comment on attachment 85833
Revert

ok.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>368541</commentid>
    <comment_count>28</comment_count>
      <attachid>85833</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-16 14:23:04 -0700</bug_when>
    <thetext>Comment on attachment 85833
Revert

Clearing flags on attachment: 85833

Committed r81279: &lt;http://trac.webkit.org/changeset/81279&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>368542</commentid>
    <comment_count>29</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-16 14:23:10 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>368618</commentid>
    <comment_count>30</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-16 16:20:28 -0700</bug_when>
    <thetext>The commit-queue encountered the following flaky tests while processing attachment 85833:

java/lc3/JavaObject/JavaObjectToByte-004-n.html bug 56500 (author: ap@webkit.org)
The commit-queue is continuing to process your patch.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>84891</attachid>
            <date>2011-03-06 09:48:40 -0800</date>
            <delta_ts>2011-03-06 09:59:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-55844-20110306094839.patch</filename>
            <type>text/plain</type>
            <size>2889</size>
            <attacher name="Sreeram Ramachandran">gro.mareers</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODA0MzMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXgg
ZTZhNDg1MDNlZDEzMWVmNDc2NmZjZGIxYjhmNTI4N2Q0ODc4NDExYi4uNTRkNGU3YmQwYTNjZGU1
YTViNjliMWFmZDM0MGJjYWQ1MWI0NzNiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNSBAQAorMjAxMS0wMy0wNiAgU3JlZXJhbSBSYW1hY2hhbmRyYW4gIDxzcmVlcmFt
QGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRXhwb3NlIHBhZ2UgZGlzbWlzc2FsIGV2ZW50IHN0YXR1cyB0aHJvdWdoIHRoZSBXZWJL
aXQgQVBJIGZvciBjaHJvbWl1bQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NTU4NDQKKworICAgICAgICAqIHB1YmxpYy9XZWJGcmFtZS5oOgorICAgICAg
ICAqIHNyYy9XZWJGcmFtZUltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6
OnBhZ2VEaXNtaXNzYWxFdmVudEJlaW5nRGlzcGF0Y2hlZCk6CisgICAgICAgICogc3JjL1dlYkZy
YW1lSW1wbC5oOgorCiAyMDExLTAzLTA1ICBEYW5pZWwgQ2hlbmcgIDxkY2hlbmdAY2hyb21pdW0u
b3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERtaXRyeSBUaXRvdi4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkZyYW1lLmggYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3B1YmxpYy9XZWJGcmFtZS5oCmluZGV4IGJiYjNjNTlkZjZhMWZlNDFmNjE0YTlkNWU2
ODNmNzFmNGI1NmJiMDkuLmYzZjViYTY3ZDk3ZDExMzg4YjJhZDRiMjhkOWI5YzAyMzk4ODIyMTQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkZyYW1lLmgKKysr
IGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRnJhbWUuaApAQCAtMzY1LDYgKzM2
NSwxMCBAQCBwdWJsaWM6CiAgICAgLy8gd2l0aCBhIHN1cHByZXNzZWQgb3BlbmVyLgogICAgIHZp
cnR1YWwgYm9vbCB3aWxsU3VwcHJlc3NPcGVuZXJJbk5ld0ZyYW1lKCkgY29uc3QgPSAwOwogCisg
ICAgLy8gUmV0dXJucyB0cnVlIGlmIHRoaXMgZnJhbWUgaXMgaW4gdGhlIG1pZHN0IG9mIGV4ZWN1
dGluZyBhIGJlZm9yZXVubG9hZAorICAgIC8vIG9yIHVubG9hZCBldmVudCBoYW5kbGVyLgorICAg
IHZpcnR1YWwgYm9vbCBwYWdlRGlzbWlzc2FsRXZlbnRCZWluZ0Rpc3BhdGNoZWQoKSBjb25zdCA9
IDA7CisKIAogICAgIC8vIEVkaXRpbmcgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViRnJhbWVJbXBsLmNwcAppbmRleCAwMzAxMTE0M2ViYTNiYzA0OTc0OGMwMTJlMjZjYTI5
ZjA2MzkxM2U1Li41M2UxZDQ0Zjc4YzRlZDQxNmYzODIzNTVmZDZkYTRlNWYwYzQwYjA0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1wbC5jcHAKQEAgLTEwNzcsNiAr
MTA3NywxMSBAQCBib29sIFdlYkZyYW1lSW1wbDo6d2lsbFN1cHByZXNzT3BlbmVySW5OZXdGcmFt
ZSgpIGNvbnN0CiAgICAgcmV0dXJuIGZyYW1lKCktPmxvYWRlcigpLT5zdXBwcmVzc09wZW5lcklu
TmV3RnJhbWUoKTsKIH0KIAorYm9vbCBXZWJGcmFtZUltcGw6OnBhZ2VEaXNtaXNzYWxFdmVudEJl
aW5nRGlzcGF0Y2hlZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIGZyYW1lKCktPmxvYWRlcigpLT5w
YWdlRGlzbWlzc2FsRXZlbnRCZWluZ0Rpc3BhdGNoZWQoKTsKK30KKwogdm9pZCBXZWJGcmFtZUlt
cGw6OnJlcGxhY2VTZWxlY3Rpb24oY29uc3QgV2ViU3RyaW5nJiB0ZXh0KQogewogICAgIFJlZlB0
cjxEb2N1bWVudEZyYWdtZW50PiBmcmFnbWVudCA9IGNyZWF0ZUZyYWdtZW50RnJvbVRleHQoCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuaCBiL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1wbC5oCmluZGV4IGYxODE5MDQ4Y2U1
NDM2MDIwOTcxNjM0NTIwZjc0MWIwODYxMTE3MmUuLjY3NjljODkwM2EzZjNhOTAyMjljODU0Y2Y5
NDNhMzMzODFlNDZmMzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dl
YkZyYW1lSW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1w
bC5oCkBAIC0xMzgsNiArMTM4LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdW5zaWduZWQgdW5s
b2FkTGlzdGVuZXJDb3VudCgpIGNvbnN0OwogICAgIHZpcnR1YWwgYm9vbCBpc1Byb2Nlc3NpbmdV
c2VyR2VzdHVyZSgpIGNvbnN0OwogICAgIHZpcnR1YWwgYm9vbCB3aWxsU3VwcHJlc3NPcGVuZXJJ
bk5ld0ZyYW1lKCkgY29uc3Q7CisgICAgdmlydHVhbCBib29sIHBhZ2VEaXNtaXNzYWxFdmVudEJl
aW5nRGlzcGF0Y2hlZCBjb25zdDsKICAgICB2aXJ0dWFsIHZvaWQgcmVwbGFjZVNlbGVjdGlvbihj
b25zdCBXZWJTdHJpbmcmKTsKICAgICB2aXJ0dWFsIHZvaWQgaW5zZXJ0VGV4dChjb25zdCBXZWJT
dHJpbmcmKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0TWFya2VkVGV4dChjb25zdCBXZWJTdHJpbmcm
LCB1bnNpZ25lZCBsb2NhdGlvbiwgdW5zaWduZWQgbGVuZ3RoKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>84892</attachid>
            <date>2011-03-06 09:59:31 -0800</date>
            <delta_ts>2011-03-06 19:49:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-55844-20110306095930.patch</filename>
            <type>text/plain</type>
            <size>2891</size>
            <attacher name="Sreeram Ramachandran">gro.mareers</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODA0MzMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXgg
ZTZhNDg1MDNlZDEzMWVmNDc2NmZjZGIxYjhmNTI4N2Q0ODc4NDExYi4uNTRkNGU3YmQwYTNjZGU1
YTViNjliMWFmZDM0MGJjYWQ1MWI0NzNiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNSBAQAorMjAxMS0wMy0wNiAgU3JlZXJhbSBSYW1hY2hhbmRyYW4gIDxzcmVlcmFt
QGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRXhwb3NlIHBhZ2UgZGlzbWlzc2FsIGV2ZW50IHN0YXR1cyB0aHJvdWdoIHRoZSBXZWJL
aXQgQVBJIGZvciBjaHJvbWl1bQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NTU4NDQKKworICAgICAgICAqIHB1YmxpYy9XZWJGcmFtZS5oOgorICAgICAg
ICAqIHNyYy9XZWJGcmFtZUltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6
OnBhZ2VEaXNtaXNzYWxFdmVudEJlaW5nRGlzcGF0Y2hlZCk6CisgICAgICAgICogc3JjL1dlYkZy
YW1lSW1wbC5oOgorCiAyMDExLTAzLTA1ICBEYW5pZWwgQ2hlbmcgIDxkY2hlbmdAY2hyb21pdW0u
b3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERtaXRyeSBUaXRvdi4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkZyYW1lLmggYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3B1YmxpYy9XZWJGcmFtZS5oCmluZGV4IGJiYjNjNTlkZjZhMWZlNDFmNjE0YTlkNWU2
ODNmNzFmNGI1NmJiMDkuLmYzZjViYTY3ZDk3ZDExMzg4YjJhZDRiMjhkOWI5YzAyMzk4ODIyMTQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkZyYW1lLmgKKysr
IGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRnJhbWUuaApAQCAtMzY1LDYgKzM2
NSwxMCBAQCBwdWJsaWM6CiAgICAgLy8gd2l0aCBhIHN1cHByZXNzZWQgb3BlbmVyLgogICAgIHZp
cnR1YWwgYm9vbCB3aWxsU3VwcHJlc3NPcGVuZXJJbk5ld0ZyYW1lKCkgY29uc3QgPSAwOwogCisg
ICAgLy8gUmV0dXJucyB0cnVlIGlmIHRoaXMgZnJhbWUgaXMgaW4gdGhlIG1pZHN0IG9mIGV4ZWN1
dGluZyBhIGJlZm9yZXVubG9hZAorICAgIC8vIG9yIHVubG9hZCBldmVudCBoYW5kbGVyLgorICAg
IHZpcnR1YWwgYm9vbCBwYWdlRGlzbWlzc2FsRXZlbnRCZWluZ0Rpc3BhdGNoZWQoKSBjb25zdCA9
IDA7CisKIAogICAgIC8vIEVkaXRpbmcgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViRnJhbWVJbXBsLmNwcAppbmRleCAwMzAxMTE0M2ViYTNiYzA0OTc0OGMwMTJlMjZjYTI5
ZjA2MzkxM2U1Li41M2UxZDQ0Zjc4YzRlZDQxNmYzODIzNTVmZDZkYTRlNWYwYzQwYjA0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1wbC5jcHAKQEAgLTEwNzcsNiAr
MTA3NywxMSBAQCBib29sIFdlYkZyYW1lSW1wbDo6d2lsbFN1cHByZXNzT3BlbmVySW5OZXdGcmFt
ZSgpIGNvbnN0CiAgICAgcmV0dXJuIGZyYW1lKCktPmxvYWRlcigpLT5zdXBwcmVzc09wZW5lcklu
TmV3RnJhbWUoKTsKIH0KIAorYm9vbCBXZWJGcmFtZUltcGw6OnBhZ2VEaXNtaXNzYWxFdmVudEJl
aW5nRGlzcGF0Y2hlZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIGZyYW1lKCktPmxvYWRlcigpLT5w
YWdlRGlzbWlzc2FsRXZlbnRCZWluZ0Rpc3BhdGNoZWQoKTsKK30KKwogdm9pZCBXZWJGcmFtZUlt
cGw6OnJlcGxhY2VTZWxlY3Rpb24oY29uc3QgV2ViU3RyaW5nJiB0ZXh0KQogewogICAgIFJlZlB0
cjxEb2N1bWVudEZyYWdtZW50PiBmcmFnbWVudCA9IGNyZWF0ZUZyYWdtZW50RnJvbVRleHQoCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuaCBiL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1wbC5oCmluZGV4IGYxODE5MDQ4Y2U1
NDM2MDIwOTcxNjM0NTIwZjc0MWIwODYxMTE3MmUuLjE3OTA1MWUyYWI3ZjlmY2ZiYjc4NGE1ZDZi
MTk3YzA4NjYyZTcxNzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dl
YkZyYW1lSW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1w
bC5oCkBAIC0xMzgsNiArMTM4LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdW5zaWduZWQgdW5s
b2FkTGlzdGVuZXJDb3VudCgpIGNvbnN0OwogICAgIHZpcnR1YWwgYm9vbCBpc1Byb2Nlc3NpbmdV
c2VyR2VzdHVyZSgpIGNvbnN0OwogICAgIHZpcnR1YWwgYm9vbCB3aWxsU3VwcHJlc3NPcGVuZXJJ
bk5ld0ZyYW1lKCkgY29uc3Q7CisgICAgdmlydHVhbCBib29sIHBhZ2VEaXNtaXNzYWxFdmVudEJl
aW5nRGlzcGF0Y2hlZCgpIGNvbnN0OwogICAgIHZpcnR1YWwgdm9pZCByZXBsYWNlU2VsZWN0aW9u
KGNvbnN0IFdlYlN0cmluZyYpOwogICAgIHZpcnR1YWwgdm9pZCBpbnNlcnRUZXh0KGNvbnN0IFdl
YlN0cmluZyYpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRNYXJrZWRUZXh0KGNvbnN0IFdlYlN0cmlu
ZyYsIHVuc2lnbmVkIGxvY2F0aW9uLCB1bnNpZ25lZCBsZW5ndGgpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>84911</attachid>
            <date>2011-03-06 19:49:23 -0800</date>
            <delta_ts>2011-03-15 11:40:32 -0700</delta_ts>
            <desc>Second attempt</desc>
            <filename>bug-55844-20110306194921.patch</filename>
            <type>text/plain</type>
            <size>3484</size>
            <attacher name="Sreeram Ramachandran">gro.mareers</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODA0NDIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXgg
MzIzM2QxYjM0YmQ0NTNmZmY2YzUwODVkYWVmZTVmOWY2ZTUyMzAwOC4uYjdhZTA3YTY5YzFmMjdh
ODI5ZmRiZDQ1OTY0ZWQxYjg0OWNhMDZmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyNSBAQAorMjAxMS0wMy0wNiAgU3JlZXJhbSBSYW1hY2hhbmRyYW4gIDxzcmVlcmFt
QGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRXhwb3NlIHBhZ2UgZGlzbWlzc2FsIGV2ZW50IHN0YXR1cyB0aHJvdWdoIHRoZSBXZWJL
aXQgQVBJIGZvciBjaHJvbWl1bS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTU1ODQ0CisKKyAgICAgICAgQ2hyb21pdW0gd2lsbCBmaW5kIGl0IHVzZWZ1
bCB0byBrbm93IHRoZSBwYWdlIGRpc21pc3NhbCBzdGF0dXMgKGkuZS4sCisgICAgICAgIHdoZXRo
ZXIgYSBmcmFtZSBpcyBpbiB0aGUgbWlkc3Qgb2YgZXhlY3V0aW5nIGEgYmVmb3JldW5sb2FkIG9y
IHVubG9hZAorICAgICAgICBoYW5kbGVyKSwgc28gZXhwb3NlIHRoYXQgaW5mb3JtYXRpb24gdGhy
b3VnaCB0aGUgY2hyb21pdW0gcG9ydCBpbiB0aGUKKyAgICAgICAgV2ViS2l0IEFQSS4KKyAgICAg
CisgICAgICAgIFRoaXMgaXMgbXkgc2Vjb25kIGF0dGVtcHQgYXQgdGhpcyBwYXRjaC4gVGhlIHBy
ZXZpb3VzIG9uZSBicm9rZQorICAgICAgICBkb3duc3RyZWFtIENocm9taXVtIGJ1aWxkcyBvZiBz
b21lIHVuaXQgdGVzdHMgd2hpY2ggaGFkIGNsYXNzZXMgZGVyaXZlZAorICAgICAgICBmcm9tIFdl
YkZyYW1lIChhbmQgdGh1cyBiZWNhbWUgdW5pbnN0YW50aWFibGUgYmVjYXVzZSBvZiB0aGlzIG5l
dyBwdXJlCisgICAgICAgIHZpcnR1YWwgbWV0aG9kKS4gVGhvc2UgaGF2ZSBub3cgYmVlbiBmaXhl
ZCAoaHR0cDovL2NycmV2LmNvbS83NzEwMSkuCisKKyAgICAgICAgKiBwdWJsaWMvV2ViRnJhbWUu
aDoKKyAgICAgICAgKiBzcmMvV2ViRnJhbWVJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2Vi
RnJhbWVJbXBsOjpwYWdlRGlzbWlzc2FsRXZlbnRCZWluZ0Rpc3BhdGNoZWQpOgorICAgICAgICAq
IHNyYy9XZWJGcmFtZUltcGwuaDoKKwogMjAxMS0wMy0wNiAgU2hlcmlmZiBCb3QgIDx3ZWJraXQu
cmV2aWV3LmJvdEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQg
cjgwNDM2LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRnJh
bWUuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkZyYW1lLmgKaW5kZXggYmJi
M2M1OWRmNmExZmU0MWY2MTRhOWQ1ZTY4M2Y3MWY0YjU2YmIwOS4uZjNmNWJhNjdkOTdkMTEzODhi
MmFkNGIyOGQ5YjljMDIzOTg4MjIxNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9wdWJsaWMvV2ViRnJhbWUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9X
ZWJGcmFtZS5oCkBAIC0zNjUsNiArMzY1LDEwIEBAIHB1YmxpYzoKICAgICAvLyB3aXRoIGEgc3Vw
cHJlc3NlZCBvcGVuZXIuCiAgICAgdmlydHVhbCBib29sIHdpbGxTdXBwcmVzc09wZW5lckluTmV3
RnJhbWUoKSBjb25zdCA9IDA7CiAKKyAgICAvLyBSZXR1cm5zIHRydWUgaWYgdGhpcyBmcmFtZSBp
cyBpbiB0aGUgbWlkc3Qgb2YgZXhlY3V0aW5nIGEgYmVmb3JldW5sb2FkCisgICAgLy8gb3IgdW5s
b2FkIGV2ZW50IGhhbmRsZXIuCisgICAgdmlydHVhbCBib29sIHBhZ2VEaXNtaXNzYWxFdmVudEJl
aW5nRGlzcGF0Y2hlZCgpIGNvbnN0ID0gMDsKKwogCiAgICAgLy8gRWRpdGluZyAtLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1wbC5jcHAgYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuY3BwCmluZGV4IDAzMDExMTQz
ZWJhM2JjMDQ5NzQ4YzAxMmUyNmNhMjlmMDYzOTEzZTUuLjUzZTFkNDRmNzhjNGVkNDE2ZjM4MjM1
NWZkNmRhNGU1ZjBjNDBiMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3Jj
L1dlYkZyYW1lSW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRnJh
bWVJbXBsLmNwcApAQCAtMTA3Nyw2ICsxMDc3LDExIEBAIGJvb2wgV2ViRnJhbWVJbXBsOjp3aWxs
U3VwcHJlc3NPcGVuZXJJbk5ld0ZyYW1lKCkgY29uc3QKICAgICByZXR1cm4gZnJhbWUoKS0+bG9h
ZGVyKCktPnN1cHByZXNzT3BlbmVySW5OZXdGcmFtZSgpOwogfQogCitib29sIFdlYkZyYW1lSW1w
bDo6cGFnZURpc21pc3NhbEV2ZW50QmVpbmdEaXNwYXRjaGVkKCkgY29uc3QKK3sKKyAgICByZXR1
cm4gZnJhbWUoKS0+bG9hZGVyKCktPnBhZ2VEaXNtaXNzYWxFdmVudEJlaW5nRGlzcGF0Y2hlZCgp
OworfQorCiB2b2lkIFdlYkZyYW1lSW1wbDo6cmVwbGFjZVNlbGVjdGlvbihjb25zdCBXZWJTdHJp
bmcmIHRleHQpCiB7CiAgICAgUmVmUHRyPERvY3VtZW50RnJhZ21lbnQ+IGZyYWdtZW50ID0gY3Jl
YXRlRnJhZ21lbnRGcm9tVGV4dCgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYkZyYW1lSW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJ
bXBsLmgKaW5kZXggZjE4MTkwNDhjZTU0MzYwMjA5NzE2MzQ1MjBmNzQxYjA4NjExMTcyZS4uMTc5
MDUxZTJhYjdmOWZjZmJiNzg0YTVkNmIxOTdjMDg2NjJlNzE3MCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJbXBsLmgKKysrIGIvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9zcmMvV2ViRnJhbWVJbXBsLmgKQEAgLTEzOCw2ICsxMzgsNyBAQCBwdWJsaWM6CiAg
ICAgdmlydHVhbCB1bnNpZ25lZCB1bmxvYWRMaXN0ZW5lckNvdW50KCkgY29uc3Q7CiAgICAgdmly
dHVhbCBib29sIGlzUHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkgY29uc3Q7CiAgICAgdmlydHVhbCBi
b29sIHdpbGxTdXBwcmVzc09wZW5lckluTmV3RnJhbWUoKSBjb25zdDsKKyAgICB2aXJ0dWFsIGJv
b2wgcGFnZURpc21pc3NhbEV2ZW50QmVpbmdEaXNwYXRjaGVkKCkgY29uc3Q7CiAgICAgdmlydHVh
bCB2b2lkIHJlcGxhY2VTZWxlY3Rpb24oY29uc3QgV2ViU3RyaW5nJik7CiAgICAgdmlydHVhbCB2
b2lkIGluc2VydFRleHQoY29uc3QgV2ViU3RyaW5nJik7CiAgICAgdmlydHVhbCB2b2lkIHNldE1h
cmtlZFRleHQoY29uc3QgV2ViU3RyaW5nJiwgdW5zaWduZWQgbG9jYXRpb24sIHVuc2lnbmVkIGxl
bmd0aCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>85833</attachid>
            <date>2011-03-15 11:40:35 -0700</date>
            <delta_ts>2011-03-16 14:23:04 -0700</delta_ts>
            <desc>Revert</desc>
            <filename>bug-55844-20110315114033.patch</filename>
            <type>text/plain</type>
            <size>2835</size>
            <attacher name="Sreeram Ramachandran">gro.mareers</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODExNTkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXgg
MTAzODI3OWMyYjRlYjIxMGRhZWZhZDcxMjM3YzdkMzY2OWExODUxMC4uMjk5OTYzNGYxZTRjZDI1
NGVkNjcyZjJiMzJkZGJjZmMzNjc0MjE4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNCBAQAorMjAxMS0wMy0xNSAgU3JlZXJhbSBSYW1hY2hhbmRyYW4gIDxzcmVlcmFt
QGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgUmV2ZXJ0IG9mIHI4MDQ1MS4gRGVjaWRlZCB0byBkbyB0aGlzIGluIFdlYkNvcmUgaW5z
dGVhZC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU1
ODQ0CisKKyAgICAgICAgKiBwdWJsaWMvV2ViRnJhbWUuaDoKKyAgICAgICAgKiBzcmMvV2ViRnJh
bWVJbXBsLmNwcDoKKyAgICAgICAgKiBzcmMvV2ViRnJhbWVJbXBsLmg6CisKIDIwMTEtMDMtMTUg
IFRvbnkgQ2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZlcnQgcjgxMTQ3
IGFuZCByODExNDksIGJyb2tlIHRoZSBjaHJvbWl1bSB3aW4gYnVpbGQuCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJGcmFtZS5oIGIvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9wdWJsaWMvV2ViRnJhbWUuaAppbmRleCBmM2Y1YmE2N2Q5N2QxMTM4OGIyYWQ0YjI4
ZDliOWMwMjM5ODgyMjE0Li5iYmIzYzU5ZGY2YTFmZTQxZjYxNGE5ZDVlNjgzZjcxZjRiNTZiYjA5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJGcmFtZS5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkZyYW1lLmgKQEAgLTM2NSwxMCAr
MzY1LDYgQEAgcHVibGljOgogICAgIC8vIHdpdGggYSBzdXBwcmVzc2VkIG9wZW5lci4KICAgICB2
aXJ0dWFsIGJvb2wgd2lsbFN1cHByZXNzT3BlbmVySW5OZXdGcmFtZSgpIGNvbnN0ID0gMDsKIAot
ICAgIC8vIFJldHVybnMgdHJ1ZSBpZiB0aGlzIGZyYW1lIGlzIGluIHRoZSBtaWRzdCBvZiBleGVj
dXRpbmcgYSBiZWZvcmV1bmxvYWQKLSAgICAvLyBvciB1bmxvYWQgZXZlbnQgaGFuZGxlci4KLSAg
ICB2aXJ0dWFsIGJvb2wgcGFnZURpc21pc3NhbEV2ZW50QmVpbmdEaXNwYXRjaGVkKCkgY29uc3Qg
PSAwOwotCiAKICAgICAvLyBFZGl0aW5nIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYkZyYW1lSW1wbC5jcHAKaW5kZXggNTNlMWQ0NGY3OGM0ZWQ0MTZmMzgyMzU1ZmQ2ZGE0
ZTVmMGM0MGIwNC4uMDMwMTExNDNlYmEzYmMwNDk3NDhjMDEyZTI2Y2EyOWYwNjM5MTNlNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJbXBsLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuY3BwCkBAIC0xMDc3LDEx
ICsxMDc3LDYgQEAgYm9vbCBXZWJGcmFtZUltcGw6OndpbGxTdXBwcmVzc09wZW5lckluTmV3RnJh
bWUoKSBjb25zdAogICAgIHJldHVybiBmcmFtZSgpLT5sb2FkZXIoKS0+c3VwcHJlc3NPcGVuZXJJ
bk5ld0ZyYW1lKCk7CiB9CiAKLWJvb2wgV2ViRnJhbWVJbXBsOjpwYWdlRGlzbWlzc2FsRXZlbnRC
ZWluZ0Rpc3BhdGNoZWQoKSBjb25zdAotewotICAgIHJldHVybiBmcmFtZSgpLT5sb2FkZXIoKS0+
cGFnZURpc21pc3NhbEV2ZW50QmVpbmdEaXNwYXRjaGVkKCk7Ci19Ci0KIHZvaWQgV2ViRnJhbWVJ
bXBsOjpyZXBsYWNlU2VsZWN0aW9uKGNvbnN0IFdlYlN0cmluZyYgdGV4dCkKIHsKICAgICBSZWZQ
dHI8RG9jdW1lbnRGcmFnbWVudD4gZnJhZ21lbnQgPSBjcmVhdGVGcmFnbWVudEZyb21UZXh0KApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJbXBsLmggYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuaAppbmRleCAxNzkwNTFlMmFi
N2Y5ZmNmYmI3ODRhNWQ2YjE5N2MwODY2MmU3MTcwLi5mMTgxOTA0OGNlNTQzNjAyMDk3MTYzNDUy
MGY3NDFiMDg2MTExNzJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9X
ZWJGcmFtZUltcGwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUlt
cGwuaApAQCAtMTM4LDcgKzEzOCw2IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHVuc2lnbmVkIHVu
bG9hZExpc3RlbmVyQ291bnQoKSBjb25zdDsKICAgICB2aXJ0dWFsIGJvb2wgaXNQcm9jZXNzaW5n
VXNlckdlc3R1cmUoKSBjb25zdDsKICAgICB2aXJ0dWFsIGJvb2wgd2lsbFN1cHByZXNzT3BlbmVy
SW5OZXdGcmFtZSgpIGNvbnN0OwotICAgIHZpcnR1YWwgYm9vbCBwYWdlRGlzbWlzc2FsRXZlbnRC
ZWluZ0Rpc3BhdGNoZWQoKSBjb25zdDsKICAgICB2aXJ0dWFsIHZvaWQgcmVwbGFjZVNlbGVjdGlv
bihjb25zdCBXZWJTdHJpbmcmKTsKICAgICB2aXJ0dWFsIHZvaWQgaW5zZXJ0VGV4dChjb25zdCBX
ZWJTdHJpbmcmKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0TWFya2VkVGV4dChjb25zdCBXZWJTdHJp
bmcmLCB1bnNpZ25lZCBsb2NhdGlvbiwgdW5zaWduZWQgbGVuZ3RoKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>