<?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>110614</bug_id>
          
          <creation_ts>2013-02-22 08:46:53 -0800</creation_ts>
          <short_desc>[GTK][WK2] Add document-loaded signal to WebKitWebPage</short_desc>
          <delta_ts>2013-04-12 09:32:28 -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>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>83681</blocked>
    
    <blocked>111288</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Manuel Rego Casasnovas">rego</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>andersca</cc>
    
    <cc>benjamin</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>gustavo</cc>
    
    <cc>jdapena</cc>
    
    <cc>mrobinson</cc>
    
    <cc>sam</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>839612</commentid>
    <comment_count>0</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-02-22 08:46:53 -0800</bug_when>
    <thetext>WebKitWebPage should emit a signal when the page is loaded.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>839658</commentid>
    <comment_count>1</comment_count>
      <attachid>189782</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-02-22 09:32:59 -0800</bug_when>
    <thetext>Created attachment 189782
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>839665</commentid>
    <comment_count>2</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2013-02-22 09:46:43 -0800</bug_when>
    <thetext>How is this different than http://webkitgtk.org/reference/webkit2gtk/unstable/WebKitWebView.html#WebKitWebView-load-changed ? I also worry about the use of &quot;document&quot; here. The DOM Document being ready for use is different than the load finishing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>839820</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-22 12:36:29 -0800</bug_when>
    <thetext>Thanks for the patch. If this patch contains new public API please make sure it follows the guidelines for new WebKit2 GTK+ API. See http://trac.webkit.org/wiki/WebKitGTK/AddingNewWebKit2API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>839892</commentid>
    <comment_count>4</comment_count>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2013-02-22 13:44:30 -0800</bug_when>
    <thetext>Agree with Martin, would be good to see how this API would be used in, say, Epiphany or any other client.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840327</commentid>
    <comment_count>5</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-02-23 01:18:47 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; How is this different than http://webkitgtk.org/reference/webkit2gtk/unstable/WebKitWebView.html#WebKitWebView-load-changed ? I also worry about the use of &quot;document&quot; here. The DOM Document being ready for use is different than the load finishing.

This is part of the extensions API. The extensions API provides access to the DOM, the idea is to add a signal that allow applications to know when it&apos;s safe to get the DOM document. The patch is obviously wrong because it implements didFinishLoadForFrame callback instead of didFinishDocumentLoadForFrame</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840328</commentid>
    <comment_count>6</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-02-23 01:20:15 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; Agree with Martin, would be good to see how this API would be used in, say, Epiphany or any other client.

It will be used by ephy, for example, to get the dom document when it&apos;s available and search for login input fields to pre-fill the saved auth data, avoiding this way a message from the ui to tell the extension when to get the DOM document.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840330</commentid>
    <comment_count>7</comment_count>
      <attachid>189782</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-02-23 01:33:39 -0800</bug_when>
    <thetext>Comment on attachment 189782
Patch

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

&gt; Source/WebKit2/ChangeLog:7
&gt; +

Please explain briefly here what this signal is for.

&gt; Source/WebKit2/UIProcess/API/gtk/tests/TestWebExtensions.cpp:51
&gt; +    WebViewTest* test = (WebViewTest*) user_data;

Use C++ style cast here. You can avoid the cast and use directly WebViewTest* test instead of gpointer user_data if you cast the function pointer in g_dbus_connection_signal_subscribe

&gt; Source/WebKit2/UIProcess/API/gtk/tests/TestWebExtensions.cpp:70
&gt; +    GRefPtr&lt;GVariant&gt; result = adoptGRef(g_dbus_proxy_call_sync(
&gt; +        proxy.get(),
&gt; +        &quot;ConnectDocumentLoadedSignal&quot;,
&gt; +        g_variant_new(&quot;(t)&quot;, webkit_web_view_get_page_id(test-&gt;m_webView)),
&gt; +        G_DBUS_CALL_FLAGS_NONE,
&gt; +        -1,
&gt; +        0,
&gt; +        0));
&gt; +    g_assert(result);

We don&apos;t need to send a message to the extension to connect to the signal, simply connect to the signal from the extension as soon as you have a page, connecting to the page-created signal of WebKitWebExtension.

&gt; Source/WebKit2/UIProcess/API/gtk/tests/TestWebExtensions.cpp:87
&gt; +    g_assert(documentLoadedSignalReceived);

I&apos;m not sure we need the global variable, since the callback finishes the loop, if the test doesn&apos;t timeout and you are here is because the callback was called.

&gt; Source/WebKit2/UIProcess/API/gtk/tests/WebExtensionTest.cpp:40
&gt; +static void documentLoadedCallback(WebKitWebPage*, gpointer user_data)

user_data -&gt; userData

&gt; Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:50
&gt; +static void didFinishLoadForFrame(WKBundlePageRef page, WKBundleFrameRef frame, WKTypeRef* userData, const void *clientInfo)

This is not the callback we want to implement, it&apos;s didFinishDocumentLoadForFrame, the eb page load is already tracked in the UI process.

&gt; Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:120
&gt; +     * This signal is emitted when a #WebKitWebPage load is finished.

This is wrong, this signal is equivalent to WebKitWebView::document-load-finished in WebKit1, emitted when the DOM document has been loaded. You should explain here that this can be used to get the DOM document with webkit_web_page_get_dom_document.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840349</commentid>
    <comment_count>8</comment_count>
      <attachid>189919</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-02-23 03:24:51 -0800</bug_when>
    <thetext>Created attachment 189919
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840358</commentid>
    <comment_count>9</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-02-23 04:20:22 -0800</bug_when>
    <thetext>The patch looks good to me if Martin and Gustavo don&apos;t have any objection. Adding WebKit2 owners to the CC.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840368</commentid>
    <comment_count>10</comment_count>
      <attachid>189919</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2013-02-23 07:14:41 -0800</bug_when>
    <thetext>Comment on attachment 189919
Patch

None from me =)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840370</commentid>
    <comment_count>11</comment_count>
      <attachid>189919</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2013-02-23 07:43:05 -0800</bug_when>
    <thetext>Comment on attachment 189919
Patch

Typically it&apos;s safe to start using the DOM after didClearWindowObject for frame instead of didFinishDocumentLoadForFrame and the signal would pass the actual Window object as a parameter.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840371</commentid>
    <comment_count>12</comment_count>
      <attachid>189919</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2013-02-23 07:47:22 -0800</bug_when>
    <thetext>Comment on attachment 189919
Patch

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

Sorry, I forgot to mention that otherwise the patch looks good. Thanks for explaining it to me. It makes a lot more sense. Another important thing is that if you are exposing these signal for WebExentions you should really also expose an isolated worlds API. It would be good to understand how that fits in properly to the API. For instance you likely want to pass the DOMWrapperWorld (maybe instead of the Window object) when you fire the window-object-cleared signal.

&gt; Source/WebKit2/UIProcess/API/gtk/tests/TestWebExtensions.cpp:56
&gt; +        &quot;/org/webkit/gtk/WebExtensionTest&quot; , &quot;org.webkit.gtk.WebExtensionTest&quot;, test-&gt;m_mainLoop));

Super minor nit: You have an extra space before the comma.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840430</commentid>
    <comment_count>13</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-02-23 12:18:22 -0800</bug_when>
    <thetext>(In reply to comment #11)
&gt; (From update of attachment 189919 [details])
&gt; Typically it&apos;s safe to start using the DOM after didClearWindowObject for frame instead of didFinishDocumentLoadForFrame and the signal would pass the actual Window object as a parameter.

Isn&apos;t that for injecting javascript? what is didFinishDocumentLoadFormFrame for then? is it still useful in the API?, I think I&apos;ve seen apps using document-loaded in wk1 to get the DOM document, is that wrong?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840431</commentid>
    <comment_count>14</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-02-23 12:21:55 -0800</bug_when>
    <thetext>(In reply to comment #12)
&gt; (From update of attachment 189919 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=189919&amp;action=review
&gt; 
&gt; Sorry, I forgot to mention that otherwise the patch looks good. Thanks for explaining it to me. It makes a lot more sense. Another important thing is that if you are exposing these signal for WebExentions you should really also expose an isolated worlds API. It would be good to understand how that fits in properly to the API. For instance you likely want to pass the DOMWrapperWorld (maybe instead of the Window object) when you fire the window-object-cleared signal.

Yes, I thought that was a different signal in the API to allow injecting javascript. I&apos;m adding dape to the CC because he has worked with that in webkit1. I have no idea about those APIs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840434</commentid>
    <comment_count>15</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2013-02-23 12:28:43 -0800</bug_when>
    <thetext>(In reply to comment #13)
&gt; (In reply to comment #11)
&gt; &gt; (From update of attachment 189919 [details] [details])
&gt; &gt; Typically it&apos;s safe to start using the DOM after didClearWindowObject for frame instead of didFinishDocumentLoadForFrame and the signal would pass the actual Window object as a parameter.
&gt; 
&gt; Isn&apos;t that for injecting javascript? what is didFinishDocumentLoadFormFrame for then? is it still useful in the API?, I think I&apos;ve seen apps using document-loaded in wk1 to get the DOM document, is that wrong?

Injecting JavaScript and touching the DOM are activities that are deeply interconnected. It looks like dispatchDidClearWindowObjectInWorld happens as soon as the Window object is ready while dispatchDidFinishDocumentLoad happens after parsing of the main resource is finished. Exposing both of these are really useful, because depending on your usecase you might want to modify the DOM as soon as possible.

I think this patch should expose both signals for completeness.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840435</commentid>
    <comment_count>16</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2013-02-23 12:29:33 -0800</bug_when>
    <thetext>(In reply to comment #15)

&gt; I think this patch should expose both signals for completeness.

Though, on second thought, if window-object-cleared needs an IsolatedWorlds API (and it probably does) then it might be a good candidate for splitting off.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840436</commentid>
    <comment_count>17</comment_count>
      <attachid>189919</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2013-02-23 12:34:27 -0800</bug_when>
    <thetext>Comment on attachment 189919
Patch

Restoring the review flag. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840580</commentid>
    <comment_count>18</comment_count>
      <attachid>189969</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-02-24 04:06:30 -0800</bug_when>
    <thetext>Created attachment 189969
Patch

Fix extra space before the comma.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840608</commentid>
    <comment_count>19</comment_count>
      <attachid>189969</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2013-02-24 07:40:34 -0800</bug_when>
    <thetext>Comment on attachment 189969
Patch

Looks good to me. Sorry for the confusion earlier!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>844841</commentid>
    <comment_count>20</comment_count>
      <attachid>190888</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-02-28 22:46:00 -0800</bug_when>
    <thetext>Created attachment 190888
Patch

Minor fix: some method names in the commets were truncated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>848655</commentid>
    <comment_count>21</comment_count>
      <attachid>190888</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-03-06 02:27:23 -0800</bug_when>
    <thetext>Comment on attachment 190888
Patch

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

Found a problem in the unit tests

&gt; Source/WebKit2/UIProcess/API/gtk/tests/TestWebExtensions.cpp:70
&gt; +    g_main_loop_run(test-&gt;m_mainLoop);

You should unsubscribe the signal here, or it will affect other tests finishing the main loop when document loaded is emitted. See g_dbus_connection_signal_unsubscribe().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>848665</commentid>
    <comment_count>22</comment_count>
      <attachid>191698</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-03-06 02:50:25 -0800</bug_when>
    <thetext>Created attachment 191698
Patch

Fixed issue unsubscribing the signal.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>848669</commentid>
    <comment_count>23</comment_count>
      <attachid>191698</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-03-06 02:53:57 -0800</bug_when>
    <thetext>Comment on attachment 191698
Patch

Perfect, thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>851912</commentid>
    <comment_count>24</comment_count>
      <attachid>191698</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-03-10 09:27:43 -0700</bug_when>
    <thetext>Comment on attachment 191698
Patch

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

Found a small issue, see below.

&gt; Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:52
&gt; +    g_signal_emit(WEBKIT_WEB_PAGE(clientInfo), signals[DOCUMENT_LOADED], 0);

Add an early return here if this it not the main frame, we only want to emit this signal for the main frame.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>852158</commentid>
    <comment_count>25</comment_count>
      <attachid>192433</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-03-11 03:22:19 -0700</bug_when>
    <thetext>Created attachment 192433
Patch

Add early return if it&apos;s not the main frame.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>852163</commentid>
    <comment_count>26</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-03-11 03:36:04 -0700</bug_when>
    <thetext>Ok, I think this is ready to land.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>860454</commentid>
    <comment_count>27</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-03-21 10:27:59 -0700</bug_when>
    <thetext>Pinging owners as this is ready since a while ago and it&apos;s blocking some other patches for WebKit2GTK+.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874378</commentid>
    <comment_count>28</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-04-11 23:38:12 -0700</bug_when>
    <thetext>ping owners, this is blocking some other patches.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874389</commentid>
    <comment_count>29</comment_count>
      <attachid>192433</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-04-12 00:03:44 -0700</bug_when>
    <thetext>Comment on attachment 192433
Patch

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

Ok for WebKit2.

&gt; Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:48
&gt; +enum {
&gt; +    DOCUMENT_LOADED,
&gt; +
&gt; +    LAST_SIGNAL
&gt; +};
&gt; +
&gt;  struct _WebKitWebPagePrivate {
&gt;      WebPage* webPage;
&gt;  };
&gt;  
&gt; +static guint signals[LAST_SIGNAL] = { 0, };
&gt; +

This looks like shooting a fly with a canon.
Any reason not to make this simpler?

&gt; Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:177
&gt; +        0 // didLayout

alignment?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874396</commentid>
    <comment_count>30</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-04-12 00:10:37 -0700</bug_when>
    <thetext>(In reply to comment #29)
&gt; (From update of attachment 192433 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=192433&amp;action=review
&gt; 
&gt; Ok for WebKit2.
&gt; 
&gt; &gt; Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:48
&gt; &gt; +enum {
&gt; &gt; +    DOCUMENT_LOADED,
&gt; &gt; +
&gt; &gt; +    LAST_SIGNAL
&gt; &gt; +};
&gt; &gt; +
&gt; &gt;  struct _WebKitWebPagePrivate {
&gt; &gt;      WebPage* webPage;
&gt; &gt;  };
&gt; &gt;  
&gt; &gt; +static guint signals[LAST_SIGNAL] = { 0, };
&gt; &gt; +
&gt; 
&gt; This looks like shooting a fly with a canon.
&gt; Any reason not to make this simpler?

This is the &quot;standard&quot; way of implementing signals in GTK+/GNOME. 

&gt; &gt; Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:177
&gt; &gt; +        0 // didLayout
&gt; 
&gt; alignment?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874405</commentid>
    <comment_count>31</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-04-12 00:21:49 -0700</bug_when>
    <thetext>(In reply to comment #29)
&gt; (From update of attachment 192433 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=192433&amp;action=review
&gt; 
&gt; Ok for WebKit2.

Thanks for the review.

&gt; &gt; Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:48
&gt; &gt; +enum {
&gt; &gt; +    DOCUMENT_LOADED,
&gt; &gt; +
&gt; &gt; +    LAST_SIGNAL
&gt; &gt; +};
&gt; &gt; +
&gt; &gt;  struct _WebKitWebPagePrivate {
&gt; &gt;      WebPage* webPage;
&gt; &gt;  };
&gt; &gt;  
&gt; &gt; +static guint signals[LAST_SIGNAL] = { 0, };
&gt; &gt; +
&gt; 
&gt; This looks like shooting a fly with a canon.
&gt; Any reason not to make this simpler?

As Carlos explained this is the standard way in GNOME.

&gt; &gt; Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:177
&gt; &gt; +        0 // didLayout
&gt; 
&gt; alignment?

What&apos;s the problem with alignment here? It&apos;s using 4-spaces and style checker didn&apos;t complain.
Are you talking about the alignment of the comment regarding the previous lines? Maybe I can add an extra space between &quot;0&quot; and &quot;//&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874418</commentid>
    <comment_count>32</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-04-12 00:58:18 -0700</bug_when>
    <thetext>&gt; &gt; &gt; Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:177
&gt; &gt; &gt; +        0 // didLayout
&gt; &gt; 
&gt; &gt; alignment?
&gt; 
&gt; What&apos;s the problem with alignment here? It&apos;s using 4-spaces and style checker didn&apos;t complain.
&gt; Are you talking about the alignment of the comment regarding the previous lines? Maybe I can add an extra space between &quot;0&quot; and &quot;//&quot;.

It was for the comment. I would just a comma for the last null.
I really don&apos;t mind if you you leave it as it is. I was just a nitpick on the way.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874446</commentid>
    <comment_count>33</comment_count>
      <attachid>197737</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-04-12 02:52:16 -0700</bug_when>
    <thetext>Created attachment 197737
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874796</commentid>
    <comment_count>34</comment_count>
      <attachid>197737</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-04-12 09:32:25 -0700</bug_when>
    <thetext>Comment on attachment 197737
Patch

Clearing flags on attachment: 197737

Committed r148281: &lt;http://trac.webkit.org/changeset/148281&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874797</commentid>
    <comment_count>35</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-04-12 09:32:28 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>189782</attachid>
            <date>2013-02-22 09:32:59 -0800</date>
            <delta_ts>2013-02-23 03:24:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-110614-20130222182918.patch</filename>
            <type>text/plain</type>
            <size>10204</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQzNzA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggOTI0ZDUxOGIxZDQ0NGU5
Njk5NWU2MjQzYmFjNzRjYjljNTVlYjQ0OC4uZjk3YWYwMmFlYzAwMzRjZDAzMTUxZWQ0MzdjNDQ4
OWE1NDY0NWVjYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEzLTAyLTIyICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtHVEtdW1dL
Ml0gQWRkIGRvY3VtZW50LWxvYWRlZCBzaWduYWwgdG8gV2ViS2l0V2ViUGFnZQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEwNjE0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2d0
ay90ZXN0cy9UZXN0V2ViRXh0ZW5zaW9ucy5jcHA6CisgICAgICAgIChkb2N1bWVudExvYWRlZENh
bGxiYWNrKToKKyAgICAgICAgKHRlc3REb2N1bWVudExvYWRlZFNpZ25hbCk6CisgICAgICAgIChi
ZWZvcmVBbGwpOiBBZGQgdGVzdCBmb3IgZG9jdW1lbnQtbG9hZGVkIHNpZ25hbC4KKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy9XZWJFeHRlbnNpb25UZXN0LmNwcDoKKyAgICAgICAg
KGRvY3VtZW50TG9hZGVkQ2FsbGJhY2spOgorICAgICAgICAobWV0aG9kQ2FsbENhbGxiYWNrKTog
QWRkIG5ldyBELUJ1cyBtZXRob2QgQ29ubmVjdERvY3VtZW50TG9hZGVkU2lnbmFsCisgICAgICAg
IGFuZCBzaWduYWwgRG9jdW1lbnRMb2FkZWQgaW4gb3JkZXIgdG8gdGVzdCBkb2N1bWVudC1sb2Fk
ZWQgc2lnbmFsLgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2d0ay9X
ZWJLaXRXZWJQYWdlLmNwcDoKKyAgICAgICAgKHdlYmtpdF93ZWJfcGFnZV9jbGFzc19pbml0KToK
KyAgICAgICAgKHdlYmtpdFdlYlBhZ2VDcmVhdGUpOiBBZGQgZG9jdW1lbnQtbG9hZGVkIHNpZ25h
bCBhbmQgZW1pdCBpdCB3aGVuCisgICAgICAgIGRpZEZpbmlzaExvYWRGb3JGcmFtZSBpcyBjYWxs
ZWQuCisKIDIwMTMtMDItMjIgIE1pa2hhaWwgUG96ZG55YWtvdiAgPG1pa2hhaWwucG96ZG55YWtv
dkBpbnRlbC5jb20+CiAKICAgICAgICAgW1dLMl1bRUZMXSBDbGVhbiB1cCBQYWdlVmlld3BvcnRD
b250cm9sbGVyQ2xpZW50RWZsIGNsYXNzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL2d0ay90ZXN0cy9UZXN0V2ViRXh0ZW5zaW9ucy5jcHAgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy9UZXN0V2ViRXh0ZW5zaW9ucy5jcHAKaW5kZXggMGRj
ZjU2OTJkNmIxNjg5MmQwZjY3MzIyYjk0YTU1MmYxNTg0MTgwZi4uYjc0NTViZDE2MDJhNmY5Nzdm
MmE0M2Y4N2RkNzgyNWUzYmFjNGQ4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9ndGsvdGVzdHMvVGVzdFdlYkV4dGVuc2lvbnMuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1Rlc3RXZWJFeHRlbnNpb25zLmNwcApAQCAtMjQs
NiArMjQsNyBAQAogI2luY2x1ZGUgPHd0Zi9nb2JqZWN0L0dSZWZQdHIuaD4KIAogc3RhdGljIFdl
YktpdFRlc3RCdXMqIGJ1czsKK3N0YXRpYyBib29sIGRvY3VtZW50TG9hZGVkU2lnbmFsUmVjZWl2
ZWQ7CiAKIHN0YXRpYyB2b2lkIHRlc3RXZWJFeHRlbnNpb24oV2ViVmlld1Rlc3QqIHRlc3QsIGdj
b25zdHBvaW50ZXIpCiB7CkBAIC00NSw2ICs0Niw0NyBAQCBzdGF0aWMgdm9pZCB0ZXN0V2ViRXh0
ZW5zaW9uKFdlYlZpZXdUZXN0KiB0ZXN0LCBnY29uc3Rwb2ludGVyKQogICAgIGdfYXNzZXJ0X2Nt
cHN0cih0aXRsZSwgPT0sICJXZWJLaXRHVEsrIFdlYiBFeHRlbnNpb25zIFRlc3QiKTsKIH0KIAor
c3RhdGljIHZvaWQgZG9jdW1lbnRMb2FkZWRDYWxsYmFjayhHREJ1c0Nvbm5lY3Rpb24qLCBjb25z
dCBjaGFyKiwgY29uc3QgY2hhciosIGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKiwgR1ZhcmlhbnQq
LCBncG9pbnRlciB1c2VyX2RhdGEpCit7CisgICAgV2ViVmlld1Rlc3QqIHRlc3QgPSAoV2ViVmll
d1Rlc3QqKSB1c2VyX2RhdGE7CisgICAgZG9jdW1lbnRMb2FkZWRTaWduYWxSZWNlaXZlZCA9IHRy
dWU7CisgICAgZ19tYWluX2xvb3BfcXVpdCh0ZXN0LT5tX21haW5Mb29wKTsKK30KKworc3RhdGlj
IHZvaWQgdGVzdERvY3VtZW50TG9hZGVkU2lnbmFsKFdlYlZpZXdUZXN0KiB0ZXN0LCBnY29uc3Rw
b2ludGVyKQoreworICAgIGRvY3VtZW50TG9hZGVkU2lnbmFsUmVjZWl2ZWQgPSBmYWxzZTsKKwor
ICAgIEdSZWZQdHI8R0RCdXNQcm94eT4gcHJveHkgPSBhZG9wdEdSZWYoYnVzLT5jcmVhdGVQcm94
eSgib3JnLndlYmtpdC5ndGsuV2ViRXh0ZW5zaW9uVGVzdCIsCisgICAgICAgICIvb3JnL3dlYmtp
dC9ndGsvV2ViRXh0ZW5zaW9uVGVzdCIgLCAib3JnLndlYmtpdC5ndGsuV2ViRXh0ZW5zaW9uVGVz
dCIsIHRlc3QtPm1fbWFpbkxvb3ApKTsKKyAgICBHUmVmUHRyPEdWYXJpYW50PiByZXN1bHQgPSBh
ZG9wdEdSZWYoZ19kYnVzX3Byb3h5X2NhbGxfc3luYygKKyAgICAgICAgcHJveHkuZ2V0KCksCisg
ICAgICAgICJDb25uZWN0RG9jdW1lbnRMb2FkZWRTaWduYWwiLAorICAgICAgICBnX3ZhcmlhbnRf
bmV3KCIodCkiLCB3ZWJraXRfd2ViX3ZpZXdfZ2V0X3BhZ2VfaWQodGVzdC0+bV93ZWJWaWV3KSks
CisgICAgICAgIEdfREJVU19DQUxMX0ZMQUdTX05PTkUsCisgICAgICAgIC0xLAorICAgICAgICAw
LAorICAgICAgICAwKSk7CisgICAgZ19hc3NlcnQocmVzdWx0KTsKKworICAgIGd1aW50IGlkID0g
Z19kYnVzX2Nvbm5lY3Rpb25fc2lnbmFsX3N1YnNjcmliZShnX2RidXNfcHJveHlfZ2V0X2Nvbm5l
Y3Rpb24ocHJveHkuZ2V0KCkpLAorICAgICAgICAwLAorICAgICAgICAib3JnLndlYmtpdC5ndGsu
V2ViRXh0ZW5zaW9uVGVzdCIsCisgICAgICAgICJEb2N1bWVudExvYWRlZCIsCisgICAgICAgICIv
b3JnL3dlYmtpdC9ndGsvV2ViRXh0ZW5zaW9uVGVzdCIsCisgICAgICAgIDAsCisgICAgICAgIEdf
REJVU19TSUdOQUxfRkxBR1NfTk9ORSwKKyAgICAgICAgZG9jdW1lbnRMb2FkZWRDYWxsYmFjaywK
KyAgICAgICAgdGVzdCwKKyAgICAgICAgMCk7CisgICAgZ19hc3NlcnQoaWQpOworCisgICAgdGVz
dC0+bG9hZEh0bWwoIjxodG1sPjxoZWFkPjx0aXRsZT5XZWJLaXRHVEsrIFdlYiBFeHRlbnNpb25z
IFRlc3Q8L3RpdGxlPjwvaGVhZD48Ym9keT48L2JvZHk+PC9odG1sPiIsIDApOworICAgIGdfbWFp
bl9sb29wX3J1bih0ZXN0LT5tX21haW5Mb29wKTsKKworICAgIGdfYXNzZXJ0KGRvY3VtZW50TG9h
ZGVkU2lnbmFsUmVjZWl2ZWQpOworfQorCiB2b2lkIGJlZm9yZUFsbCgpCiB7CiAgICAgd2Via2l0
X3dlYl9jb250ZXh0X3NldF93ZWJfZXh0ZW5zaW9uc19kaXJlY3Rvcnkod2Via2l0X3dlYl9jb250
ZXh0X2dldF9kZWZhdWx0KCksIFdFQktJVF9URVNUX1dFQl9FWFRFTlNJT05TX0RJUik7CkBAIC01
Myw2ICs5NSw3IEBAIHZvaWQgYmVmb3JlQWxsKCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgV2Vi
Vmlld1Rlc3Q6OmFkZCgiV2ViS2l0V2ViRXh0ZW5zaW9uIiwgImRvbS1kb2N1bWVudC10aXRsZSIs
IHRlc3RXZWJFeHRlbnNpb24pOworICAgIFdlYlZpZXdUZXN0OjphZGQoIldlYktpdFdlYkV4dGVu
c2lvbiIsICJkb2N1bWVudC1sb2FkZWQtc2lnbmFsIiwgdGVzdERvY3VtZW50TG9hZGVkU2lnbmFs
KTsKIH0KIAogdm9pZCBhZnRlckFsbCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL2d0ay90ZXN0cy9XZWJFeHRlbnNpb25UZXN0LmNwcCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1dlYkV4dGVuc2lvblRlc3QuY3BwCmluZGV4IGVhZjY4
YzU5YWM3YzYwNWMyNWIwOTdhYWIzMzY4MTIyNWNlMjJjNDQuLmE3OGRjYzVkZjIxYmY4MWVlMWI1
MzEwOGVkMzVlNGQ2NmZiNzkxMDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvZ3RrL3Rlc3RzL1dlYkV4dGVuc2lvblRlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1dlYkV4dGVuc2lvblRlc3QuY3BwCkBAIC0zMCwxMCAr
MzAsMjYgQEAgc3RhdGljIGNvbnN0IGNoYXIgaW50cm9zcGVjdGlvblhNTFtdID0KICAgICAiICAg
PGFyZyB0eXBlPSd0JyBuYW1lPSdwYWdlSUQnIGRpcmVjdGlvbj0naW4nLz4iCiAgICAgIiAgIDxh
cmcgdHlwZT0ncycgbmFtZT0ndGl0bGUnIGRpcmVjdGlvbj0nb3V0Jy8+IgogICAgICIgIDwvbWV0
aG9kPiIKKyAgICAiICA8bWV0aG9kIG5hbWU9J0Nvbm5lY3REb2N1bWVudExvYWRlZFNpZ25hbCc+
IgorICAgICIgICA8YXJnIHR5cGU9J3QnIG5hbWU9J3BhZ2VJRCcgZGlyZWN0aW9uPSdpbicvPiIK
KyAgICAiICA8L21ldGhvZD4iCisgICAgIiAgPHNpZ25hbCBuYW1lPSdEb2N1bWVudExvYWRlZCcv
PiIKICAgICAiIDwvaW50ZXJmYWNlPiIKICAgICAiPC9ub2RlPiI7CiAKLXN0YXRpYyB2b2lkIG1l
dGhvZENhbGxDYWxsYmFjayhHREJ1c0Nvbm5lY3Rpb24qLCBjb25zdCBjaGFyKiBzZW5kZXIsIGNv
bnN0IGNoYXIqIG9iamVjdFBhdGgsIGNvbnN0IGNoYXIqIGludGVyZmFjZU5hbWUsIGNvbnN0IGNo
YXIqIG1ldGhvZE5hbWUsIEdWYXJpYW50KiBwYXJhbWV0ZXJzLCBHREJ1c01ldGhvZEludm9jYXRp
b24qIGludm9jYXRpb24sIGdwb2ludGVyIHVzZXJEYXRhKQorc3RhdGljIHZvaWQgZG9jdW1lbnRM
b2FkZWRDYWxsYmFjayhXZWJLaXRXZWJQYWdlKiwgZ3BvaW50ZXIgdXNlcl9kYXRhKQoreworICAg
IGJvb2wgb2sgPSBnX2RidXNfY29ubmVjdGlvbl9lbWl0X3NpZ25hbChHX0RCVVNfQ09OTkVDVElP
Tih1c2VyX2RhdGEpLAorICAgICAgICAwLAorICAgICAgICAiL29yZy93ZWJraXQvZ3RrL1dlYkV4
dGVuc2lvblRlc3QiLAorICAgICAgICAib3JnLndlYmtpdC5ndGsuV2ViRXh0ZW5zaW9uVGVzdCIs
CisgICAgICAgICJEb2N1bWVudExvYWRlZCIsCisgICAgICAgIDAsCisgICAgICAgIDApOworICAg
IGdfYXNzZXJ0KG9rKTsKK30KKworc3RhdGljIHZvaWQgbWV0aG9kQ2FsbENhbGxiYWNrKEdEQnVz
Q29ubmVjdGlvbiogY29ubmVjdGlvbiwgY29uc3QgY2hhciogc2VuZGVyLCBjb25zdCBjaGFyKiBv
YmplY3RQYXRoLCBjb25zdCBjaGFyKiBpbnRlcmZhY2VOYW1lLCBjb25zdCBjaGFyKiBtZXRob2RO
YW1lLCBHVmFyaWFudCogcGFyYW1ldGVycywgR0RCdXNNZXRob2RJbnZvY2F0aW9uKiBpbnZvY2F0
aW9uLCBncG9pbnRlciB1c2VyRGF0YSkKIHsKICAgICBpZiAoZ19zdHJjbXAwKGludGVyZmFjZU5h
bWUsICJvcmcud2Via2l0Lmd0ay5XZWJFeHRlbnNpb25UZXN0IikpCiAgICAgICAgIHJldHVybjsK
QEAgLTU0LDYgKzcwLDIxIEBAIHN0YXRpYyB2b2lkIG1ldGhvZENhbGxDYWxsYmFjayhHREJ1c0Nv
bm5lY3Rpb24qLCBjb25zdCBjaGFyKiBzZW5kZXIsIGNvbnN0IGNoYXIqCiAgICAgICAgIFdlYktp
dERPTURvY3VtZW50KiBkb2N1bWVudCA9IHdlYmtpdF93ZWJfcGFnZV9nZXRfZG9tX2RvY3VtZW50
KHBhZ2UpOwogICAgICAgICBHT3duUHRyPGNoYXI+IHRpdGxlKHdlYmtpdF9kb21fZG9jdW1lbnRf
Z2V0X3RpdGxlKGRvY3VtZW50KSk7CiAgICAgICAgIGdfZGJ1c19tZXRob2RfaW52b2NhdGlvbl9y
ZXR1cm5fdmFsdWUoaW52b2NhdGlvbiwgZ192YXJpYW50X25ldygiKHMpIiwgdGl0bGUuZ2V0KCkp
KTsKKyAgICB9IGVsc2UgaWYgKCFnX3N0cmNtcDAobWV0aG9kTmFtZSwgIkNvbm5lY3REb2N1bWVu
dExvYWRlZFNpZ25hbCIpKSB7CisgICAgICAgIHVpbnQ2NF90IHBhZ2VJRDsKKyAgICAgICAgZ192
YXJpYW50X2dldChwYXJhbWV0ZXJzLCAiKHQpIiwgJnBhZ2VJRCk7CisKKyAgICAgICAgV2ViS2l0
V2ViRXh0ZW5zaW9uKiBleHRlbnNpb24gPSBXRUJLSVRfV0VCX0VYVEVOU0lPTih1c2VyRGF0YSk7
CisgICAgICAgIFdlYktpdFdlYlBhZ2UqIHBhZ2UgPSB3ZWJraXRfd2ViX2V4dGVuc2lvbl9nZXRf
cGFnZShleHRlbnNpb24sIHBhZ2VJRCk7CisgICAgICAgIGlmICghcGFnZSkgeworICAgICAgICAg
ICAgZ19kYnVzX21ldGhvZF9pbnZvY2F0aW9uX3JldHVybl9lcnJvcigKKyAgICAgICAgICAgICAg
ICBpbnZvY2F0aW9uLCBHX0RCVVNfRVJST1IsIEdfREJVU19FUlJPUl9JTlZBTElEX0FSR1MsCisg
ICAgICAgICAgICAgICAgIkludmFsaWQgcGFnZSBJRDogJSJHX0dVSU5UNjRfRk9STUFULCBwYWdl
SUQpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKKyAgICAgICAgZ19zaWduYWxf
Y29ubmVjdChwYWdlLCAiZG9jdW1lbnQtbG9hZGVkIiwgR19DQUxMQkFDSyhkb2N1bWVudExvYWRl
ZENhbGxiYWNrKSwgY29ubmVjdGlvbik7CisgICAgICAgIGdfZGJ1c19tZXRob2RfaW52b2NhdGlv
bl9yZXR1cm5fdmFsdWUoaW52b2NhdGlvbiwgMCk7CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9ndGsvV2ViS2l0V2Vi
UGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9n
dGsvV2ViS2l0V2ViUGFnZS5jcHAKaW5kZXggMWFjYTE3ZGVmNDdiZDllY2IyYTUwNTliNmJkYzBk
MDkwZWVmNDFjNy4uMzYyYmJhMDNkMDBmZDg0MDcwMTEwODA5YzQ1ZWIyODNlOWYwZDZjNiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvZ3Rr
L1dlYktpdFdlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0
ZWRCdW5kbGUvQVBJL2d0ay9XZWJLaXRXZWJQYWdlLmNwcApAQCAtMzMsMTIgKzMzLDI1IEBACiB1
c2luZyBuYW1lc3BhY2UgV2ViS2l0OwogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKK2VudW0g
eworICAgIERPQ1VNRU5UX0xPQURFRCwKKworICAgIExBU1RfU0lHTkFMCit9OworCiBzdHJ1Y3Qg
X1dlYktpdFdlYlBhZ2VQcml2YXRlIHsKICAgICBXZWJQYWdlKiB3ZWJQYWdlOwogfTsKIAorc3Rh
dGljIGd1aW50IHNpZ25hbHNbTEFTVF9TSUdOQUxdID0geyAwLCB9OworCiBXRUJLSVRfREVGSU5F
X1RZUEUoV2ViS2l0V2ViUGFnZSwgd2Via2l0X3dlYl9wYWdlLCBHX1RZUEVfT0JKRUNUKQogCitz
dGF0aWMgdm9pZCBkaWRGaW5pc2hMb2FkRm9yRnJhbWUoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdL
QnVuZGxlRnJhbWVSZWYgZnJhbWUsIFdLVHlwZVJlZiogdXNlckRhdGEsIGNvbnN0IHZvaWQgKmNs
aWVudEluZm8pCit7CisgICAgZ19zaWduYWxfZW1pdChXRUJLSVRfV0VCX1BBR0UoY2xpZW50SW5m
byksIHNpZ25hbHNbRE9DVU1FTlRfTE9BREVEXSwgMCk7Cit9CisKIHN0YXRpYyB2b2lkIGRpZElu
aXRpYXRlTG9hZEZvclJlc291cmNlKFdLQnVuZGxlUGFnZVJlZiBwYWdlLCBXS0J1bmRsZUZyYW1l
UmVmIGZyYW1lLCB1aW50NjRfdCBpZGVudGlmaWVyLCBXS1VSTFJlcXVlc3RSZWYgcmVxdWVzdCwg
Ym9vbCBwYWdlTG9hZElzUHJvdmlzaW9uYWwsIGNvbnN0IHZvaWQqKQogewogICAgIEltbXV0YWJs
ZURpY3Rpb25hcnk6Ok1hcFR5cGUgbWVzc2FnZTsKQEAgLTEwMCw2ICsxMTMsMTkgQEAgc3RhdGlj
IHZvaWQgZGlkRmFpbExvYWRGb3JSZXNvdXJjZShXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tCdW5k
bGVGcmFtZVJlZiwgdWludDYKIAogc3RhdGljIHZvaWQgd2Via2l0X3dlYl9wYWdlX2NsYXNzX2lu
aXQoV2ViS2l0V2ViUGFnZUNsYXNzKiBrbGFzcykKIHsKKyAgICAvKioKKyAgICAgKiBXZWJLaXRX
ZWJQYWdlOjpkb2N1bWVudC1sb2FkZWQ6CisgICAgICogQHdlYl9wYWdlOiB0aGUgI1dlYktpdFdl
YlBhZ2Ugb24gd2hpY2ggdGhlIHNpZ25hbCBpcyBlbWl0dGVkCisgICAgICoKKyAgICAgKiBUaGlz
IHNpZ25hbCBpcyBlbWl0dGVkIHdoZW4gYSAjV2ViS2l0V2ViUGFnZSBsb2FkIGlzIGZpbmlzaGVk
LgorICAgICAqLworICAgIHNpZ25hbHNbRE9DVU1FTlRfTE9BREVEXSA9IGdfc2lnbmFsX25ldygK
KyAgICAgICAgImRvY3VtZW50LWxvYWRlZCIsCisgICAgICAgIEdfVFlQRV9GUk9NX0NMQVNTKGts
YXNzKSwKKyAgICAgICAgR19TSUdOQUxfUlVOX0xBU1QsCisgICAgICAgIDAsIDAsIDAsCisgICAg
ICAgIGdfY2Nsb3N1cmVfbWFyc2hhbF9WT0lEX19PQkpFQ1QsCisgICAgICAgIEdfVFlQRV9OT05F
LCAwKTsKIH0KIAogV2ViS2l0V2ViUGFnZSogd2Via2l0V2ViUGFnZUNyZWF0ZShXZWJQYWdlKiB3
ZWJQYWdlKQpAQCAtMTA3LDYgKzEzMyw0MyBAQCBXZWJLaXRXZWJQYWdlKiB3ZWJraXRXZWJQYWdl
Q3JlYXRlKFdlYlBhZ2UqIHdlYlBhZ2UpCiAgICAgV2ViS2l0V2ViUGFnZSogcGFnZSA9IFdFQktJ
VF9XRUJfUEFHRShnX29iamVjdF9uZXcoV0VCS0lUX1RZUEVfV0VCX1BBR0UsIE5VTEwpKTsKICAg
ICBwYWdlLT5wcml2LT53ZWJQYWdlID0gd2ViUGFnZTsKIAorICAgIFdLQnVuZGxlUGFnZUxvYWRl
ckNsaWVudCBsb2FkZXJDbGllbnQgPSB7CisgICAgICAgIGtXS0J1bmRsZVBhZ2VSZXNvdXJjZUxv
YWRDbGllbnRDdXJyZW50VmVyc2lvbiwKKyAgICAgICAgcGFnZSwKKyAgICAgICAgMCwgLy8gZGlk
U3RhcnRQcm92aXNpb25hbExvYWRGb3JGcmEKKyAgICAgICAgMCwgLy8gZGlkUmVjZWl2ZVNlcnZl
clJlZGlyZWN0Rm9yUHIKKyAgICAgICAgMCwgLy8gZGlkRmFpbFByb3Zpc2lvbmFsTG9hZFdpdGhF
cnIKKyAgICAgICAgMCwgLy8gZGlkQ29tbWl0TG9hZEZvckZyYW1lCisgICAgICAgIDAsIC8vIGRp
ZEZpbmlzaERvY3VtZW50TG9hZEZvckZyYW1lCisgICAgICAgIGRpZEZpbmlzaExvYWRGb3JGcmFt
ZSwKKyAgICAgICAgMCwgLy8gZGlkRmFpbExvYWRXaXRoRXJyb3JGb3JGcmFtZQorICAgICAgICAw
LCAvLyBkaWRTYW1lRG9jdW1lbnROYXZpZ2F0aW9uRm9yRnJhbWUKKyAgICAgICAgMCwgLy8gZGlk
UmVjZWl2ZVRpdGxlRm9yRnJhbWUKKyAgICAgICAgMCwgLy8gZGlkRmlyc3RMYXlvdXRGb3JGcmFt
ZQorICAgICAgICAwLCAvLyBkaWRGaXJzdFZpc3VhbGx5Tm9uRW1wdHlMYXlvdXRGb3JGcmFtZQor
ICAgICAgICAwLCAvLyBkaWRSZW1vdmVGcmFtZUZyb21IaWVyYXJjaHkKKyAgICAgICAgMCwgLy8g
ZGlkRGlzcGxheUluc2VjdXJlQ29udGVudEZvckZyYW1lCisgICAgICAgIDAsIC8vIGRpZFJ1bklu
c2VjdXJlQ29udGVudEZvckZyYW1lCisgICAgICAgIDAsIC8vIGRpZENsZWFyV2luZG93T2JqZWN0
Rm9yRnJhbWUKKyAgICAgICAgMCwgLy8gZGlkQ2FuY2VsQ2xpZW50UmVkaXJlY3RGb3JGcmFtZQor
ICAgICAgICAwLCAvLyB3aWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0Rm9yRnJhbWUKKyAgICAgICAg
MCwgLy8gZGlkSGFuZGxlT25sb2FkRXZlbnRzRm9yRnJhbWUKKyAgICAgICAgMCwgLy8gZGlkTGF5
b3V0Rm9yRnJhbWUKKyAgICAgICAgMCwgLy8gZGlkTmV3Rmlyc3RWaXN1YWxseU5vbkVtcHR5TGF5
b3V0CisgICAgICAgIDAsIC8vIGRpZERldGVjdFhTU0ZvckZyYW1lCisgICAgICAgIDAsIC8vIHNo
b3VsZEdvVG9CYWNrRm9yd2FyZExpc3RJdGVtCisgICAgICAgIDAsIC8vIGdsb2JhbE9iamVjdElz
QXZhaWxhYmxlRm9yRnJhCisgICAgICAgIDAsIC8vIHdpbGxEaXNjb25uZWN0RE9NV2luZG93RXh0
ZW5zCisgICAgICAgIDAsIC8vIGRpZFJlY29ubmVjdERPTVdpbmRvd0V4dGVuc2lvCisgICAgICAg
IDAsIC8vIHdpbGxEZXN0cm95R2xvYmFsT2JqZWN0Rm9yRE9NCisgICAgICAgIDAsIC8vIGRpZEZp
bmlzaFByb2dyZXNzCisgICAgICAgIDAsIC8vIHNob3VsZEZvcmNlVW5pdmVyc2FsQWNjZXNzRnJv
CisgICAgICAgIDAsIC8vIGRpZFJlY2VpdmVJbnRlbnRGb3JGcmFtZV91bmF2YWlsYWJsZQorICAg
ICAgICAwLCAvLyByZWdpc3RlckludGVudFNlcnZpY2VGb3JGcmFtZV91bmF2YWlsYWJsZQorICAg
ICAgICAwIC8vIGRpZExheW91dAorICAgIH07CisgICAgV0tCdW5kbGVQYWdlU2V0UGFnZUxvYWRl
ckNsaWVudCh0b0FQSSh3ZWJQYWdlKSwgJmxvYWRlckNsaWVudCk7CisKICAgICBXS0J1bmRsZVBh
Z2VSZXNvdXJjZUxvYWRDbGllbnQgcmVzb3VyY2VMb2FkQ2xpZW50ID0gewogICAgICAgICBrV0tC
dW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50Q3VycmVudFZlcnNpb24sCiAgICAgICAgIHBhZ2Us
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>189919</attachid>
            <date>2013-02-23 03:24:51 -0800</date>
            <delta_ts>2013-02-24 04:06:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-110614-20130223122108.patch</filename>
            <type>text/plain</type>
            <size>9256</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQzNzA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggOTI0ZDUxOGIxZDQ0NGU5
Njk5NWU2MjQzYmFjNzRjYjljNTVlYjQ0OC4uODlkNDllNTMxODljYjY0NjgzM2JiODM0N2Q2ODFj
ZTJjY2ExOTQyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEzLTAyLTIzICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtHVEtdW1dL
Ml0gQWRkIGRvY3VtZW50LWxvYWRlZCBzaWduYWwgdG8gV2ViS2l0V2ViUGFnZQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEwNjE0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgbmV3IHNpZ25hbCBk
b2N1bWVudC1sb2FkZWQgdG8gV2ViS2l0V2ViUGFnZSB0aGF0IHdpbGwgYmUgZW1pdHRlZAorICAg
ICAgICB3aGVuIHRoZSBET00gZG9jdW1lbnQgaGFzIGJlZW4gbG9hZGVkLgorCisgICAgICAgICog
VUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvVGVzdFdlYkV4dGVuc2lvbnMuY3BwOgorICAgICAgICAo
ZG9jdW1lbnRMb2FkZWRDYWxsYmFjayk6CisgICAgICAgICh0ZXN0RG9jdW1lbnRMb2FkZWRTaWdu
YWwpOgorICAgICAgICAoYmVmb3JlQWxsKTogQWRkIHRlc3QgZm9yIGRvY3VtZW50LWxvYWRlZCBz
aWduYWwuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvV2ViRXh0ZW5zaW9uVGVz
dC5jcHA6CisgICAgICAgIChkb2N1bWVudExvYWRlZENhbGxiYWNrKToKKyAgICAgICAgKHBhZ2VD
cmVhdGVkQ2FsbGJhY2spOgorICAgICAgICAobWV0aG9kQ2FsbENhbGxiYWNrKTogQWRkIG5ldyBE
LUJ1cyBzaWduYWwgRG9jdW1lbnRMb2FkZWQgaW4gb3JkZXIgdG8KKyAgICAgICAgdGVzdCBkb2N1
bWVudC1sb2FkZWQgc2lnbmFsLgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUv
QVBJL2d0ay9XZWJLaXRXZWJQYWdlLmNwcDoKKyAgICAgICAgKHdlYmtpdF93ZWJfcGFnZV9jbGFz
c19pbml0KToKKyAgICAgICAgKHdlYmtpdFdlYlBhZ2VDcmVhdGUpOiBBZGQgZG9jdW1lbnQtbG9h
ZGVkIHNpZ25hbCBhbmQgZW1pdCBpdCB3aGVuCisgICAgICAgIGRpZEZpbmlzaERvY3VtZW50TG9h
ZEZvckZyYW1lIGlzIGNhbGxlZC4KKwogMjAxMy0wMi0yMiAgTWlraGFpbCBQb3pkbnlha292ICA8
bWlraGFpbC5wb3pkbnlha292QGludGVsLmNvbT4KIAogICAgICAgICBbV0syXVtFRkxdIENsZWFu
IHVwIFBhZ2VWaWV3cG9ydENvbnRyb2xsZXJDbGllbnRFZmwgY2xhc3MKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1Rlc3RXZWJFeHRlbnNpb25zLmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1Rlc3RXZWJFeHRlbnNp
b25zLmNwcAppbmRleCAwZGNmNTY5MmQ2YjE2ODkyZDBmNjczMjJiOTRhNTUyZjE1ODQxODBmLi41
NTQ2NmRmMDBjYzllZGM0ODNjZDdmM2I3ZTkzMGI4ODJlNDU1ZGU4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy9UZXN0V2ViRXh0ZW5zaW9ucy5jcHAK
KysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvVGVzdFdlYkV4dGVu
c2lvbnMuY3BwCkBAIC00NSw2ICs0NSwzMSBAQCBzdGF0aWMgdm9pZCB0ZXN0V2ViRXh0ZW5zaW9u
KFdlYlZpZXdUZXN0KiB0ZXN0LCBnY29uc3Rwb2ludGVyKQogICAgIGdfYXNzZXJ0X2NtcHN0cih0
aXRsZSwgPT0sICJXZWJLaXRHVEsrIFdlYiBFeHRlbnNpb25zIFRlc3QiKTsKIH0KIAorc3RhdGlj
IHZvaWQgZG9jdW1lbnRMb2FkZWRDYWxsYmFjayhHREJ1c0Nvbm5lY3Rpb24qLCBjb25zdCBjaGFy
KiwgY29uc3QgY2hhciosIGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKiwgR1ZhcmlhbnQqLCBXZWJW
aWV3VGVzdCogdGVzdCkKK3sKKyAgICBnX21haW5fbG9vcF9xdWl0KHRlc3QtPm1fbWFpbkxvb3Ap
OworfQorCitzdGF0aWMgdm9pZCB0ZXN0RG9jdW1lbnRMb2FkZWRTaWduYWwoV2ViVmlld1Rlc3Qq
IHRlc3QsIGdjb25zdHBvaW50ZXIpCit7CisgICAgR1JlZlB0cjxHREJ1c1Byb3h5PiBwcm94eSA9
IGFkb3B0R1JlZihidXMtPmNyZWF0ZVByb3h5KCJvcmcud2Via2l0Lmd0ay5XZWJFeHRlbnNpb25U
ZXN0IiwKKyAgICAgICAgIi9vcmcvd2Via2l0L2d0ay9XZWJFeHRlbnNpb25UZXN0IiAsICJvcmcu
d2Via2l0Lmd0ay5XZWJFeHRlbnNpb25UZXN0IiwgdGVzdC0+bV9tYWluTG9vcCkpOworICAgIGd1
aW50IGlkID0gZ19kYnVzX2Nvbm5lY3Rpb25fc2lnbmFsX3N1YnNjcmliZShnX2RidXNfcHJveHlf
Z2V0X2Nvbm5lY3Rpb24ocHJveHkuZ2V0KCkpLAorICAgICAgICAwLAorICAgICAgICAib3JnLndl
YmtpdC5ndGsuV2ViRXh0ZW5zaW9uVGVzdCIsCisgICAgICAgICJEb2N1bWVudExvYWRlZCIsCisg
ICAgICAgICIvb3JnL3dlYmtpdC9ndGsvV2ViRXh0ZW5zaW9uVGVzdCIsCisgICAgICAgIDAsCisg
ICAgICAgIEdfREJVU19TSUdOQUxfRkxBR1NfTk9ORSwKKyAgICAgICAgcmVpbnRlcnByZXRfY2Fz
dDxHREJ1c1NpZ25hbENhbGxiYWNrPihkb2N1bWVudExvYWRlZENhbGxiYWNrKSwKKyAgICAgICAg
dGVzdCwKKyAgICAgICAgMCk7CisgICAgZ19hc3NlcnQoaWQpOworCisgICAgdGVzdC0+bG9hZEh0
bWwoIjxodG1sPjxoZWFkPjx0aXRsZT5XZWJLaXRHVEsrIFdlYiBFeHRlbnNpb25zIFRlc3Q8L3Rp
dGxlPjwvaGVhZD48Ym9keT48L2JvZHk+PC9odG1sPiIsIDApOworICAgIGdfbWFpbl9sb29wX3J1
bih0ZXN0LT5tX21haW5Mb29wKTsKK30KKwogdm9pZCBiZWZvcmVBbGwoKQogewogICAgIHdlYmtp
dF93ZWJfY29udGV4dF9zZXRfd2ViX2V4dGVuc2lvbnNfZGlyZWN0b3J5KHdlYmtpdF93ZWJfY29u
dGV4dF9nZXRfZGVmYXVsdCgpLCBXRUJLSVRfVEVTVF9XRUJfRVhURU5TSU9OU19ESVIpOwpAQCAt
NTMsNiArNzgsNyBAQCB2b2lkIGJlZm9yZUFsbCgpCiAgICAgICAgIHJldHVybjsKIAogICAgIFdl
YlZpZXdUZXN0OjphZGQoIldlYktpdFdlYkV4dGVuc2lvbiIsICJkb20tZG9jdW1lbnQtdGl0bGUi
LCB0ZXN0V2ViRXh0ZW5zaW9uKTsKKyAgICBXZWJWaWV3VGVzdDo6YWRkKCJXZWJLaXRXZWJFeHRl
bnNpb24iLCAiZG9jdW1lbnQtbG9hZGVkLXNpZ25hbCIsIHRlc3REb2N1bWVudExvYWRlZFNpZ25h
bCk7CiB9CiAKIHZvaWQgYWZ0ZXJBbGwoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9ndGsvdGVzdHMvV2ViRXh0ZW5zaW9uVGVzdC5jcHAgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy9XZWJFeHRlbnNpb25UZXN0LmNwcAppbmRleCBlYWY2
OGM1OWFjN2M2MDVjMjViMDk3YWFiMzM2ODEyMjVjZTIyYzQ0Li5hYTY2MDQyYzhjOGQxMzI2MGZl
ZGI5ZGQzMzgwNDg1ZjYwOWQzOTllIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL2d0ay90ZXN0cy9XZWJFeHRlbnNpb25UZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy9XZWJFeHRlbnNpb25UZXN0LmNwcApAQCAtMzAsMTAg
KzMwLDI4IEBAIHN0YXRpYyBjb25zdCBjaGFyIGludHJvc3BlY3Rpb25YTUxbXSA9CiAgICAgIiAg
IDxhcmcgdHlwZT0ndCcgbmFtZT0ncGFnZUlEJyBkaXJlY3Rpb249J2luJy8+IgogICAgICIgICA8
YXJnIHR5cGU9J3MnIG5hbWU9J3RpdGxlJyBkaXJlY3Rpb249J291dCcvPiIKICAgICAiICA8L21l
dGhvZD4iCisgICAgIiAgPHNpZ25hbCBuYW1lPSdEb2N1bWVudExvYWRlZCcvPiIKICAgICAiIDwv
aW50ZXJmYWNlPiIKICAgICAiPC9ub2RlPiI7CiAKLXN0YXRpYyB2b2lkIG1ldGhvZENhbGxDYWxs
YmFjayhHREJ1c0Nvbm5lY3Rpb24qLCBjb25zdCBjaGFyKiBzZW5kZXIsIGNvbnN0IGNoYXIqIG9i
amVjdFBhdGgsIGNvbnN0IGNoYXIqIGludGVyZmFjZU5hbWUsIGNvbnN0IGNoYXIqIG1ldGhvZE5h
bWUsIEdWYXJpYW50KiBwYXJhbWV0ZXJzLCBHREJ1c01ldGhvZEludm9jYXRpb24qIGludm9jYXRp
b24sIGdwb2ludGVyIHVzZXJEYXRhKQorc3RhdGljIHZvaWQgZG9jdW1lbnRMb2FkZWRDYWxsYmFj
ayhXZWJLaXRXZWJQYWdlKiwgZ3BvaW50ZXIgdXNlckRhdGEpCit7CisgICAgYm9vbCBvayA9IGdf
ZGJ1c19jb25uZWN0aW9uX2VtaXRfc2lnbmFsKEdfREJVU19DT05ORUNUSU9OKHVzZXJEYXRhKSwK
KyAgICAgICAgMCwKKyAgICAgICAgIi9vcmcvd2Via2l0L2d0ay9XZWJFeHRlbnNpb25UZXN0IiwK
KyAgICAgICAgIm9yZy53ZWJraXQuZ3RrLldlYkV4dGVuc2lvblRlc3QiLAorICAgICAgICAiRG9j
dW1lbnRMb2FkZWQiLAorICAgICAgICAwLAorICAgICAgICAwKTsKKyAgICBnX2Fzc2VydChvayk7
Cit9CisKK3N0YXRpYyB2b2lkIHBhZ2VDcmVhdGVkQ2FsbGJhY2soV2ViS2l0V2ViRXh0ZW5zaW9u
KiwgV2ViS2l0V2ViUGFnZSogd2ViUGFnZSwgZ3BvaW50ZXIgdXNlckRhdGEpCit7CisgICAgZ19z
aWduYWxfY29ubmVjdCh3ZWJQYWdlLCAiZG9jdW1lbnQtbG9hZGVkIiwgR19DQUxMQkFDSyhkb2N1
bWVudExvYWRlZENhbGxiYWNrKSwgdXNlckRhdGEpOworfQorCitzdGF0aWMgdm9pZCBtZXRob2RD
YWxsQ2FsbGJhY2soR0RCdXNDb25uZWN0aW9uKiBjb25uZWN0aW9uLCBjb25zdCBjaGFyKiBzZW5k
ZXIsIGNvbnN0IGNoYXIqIG9iamVjdFBhdGgsIGNvbnN0IGNoYXIqIGludGVyZmFjZU5hbWUsIGNv
bnN0IGNoYXIqIG1ldGhvZE5hbWUsIEdWYXJpYW50KiBwYXJhbWV0ZXJzLCBHREJ1c01ldGhvZElu
dm9jYXRpb24qIGludm9jYXRpb24sIGdwb2ludGVyIHVzZXJEYXRhKQogewogICAgIGlmIChnX3N0
cmNtcDAoaW50ZXJmYWNlTmFtZSwgIm9yZy53ZWJraXQuZ3RrLldlYkV4dGVuc2lvblRlc3QiKSkK
ICAgICAgICAgcmV0dXJuOwpAQCAtNzgsNiArOTYsOCBAQCBzdGF0aWMgdm9pZCBidXNBY3F1aXJl
ZENhbGxiYWNrKEdEQnVzQ29ubmVjdGlvbiogY29ubmVjdGlvbiwgY29uc3QgY2hhciogbmFtZSwg
ZwogICAgICAgICAmZXJyb3Iub3V0UHRyKCkpOwogICAgIGlmICghcmVnaXN0cmF0aW9uSUQpCiAg
ICAgICAgIGdfd2FybmluZygiRmFpbGVkIHRvIHJlZ2lzdGVyIG9iamVjdDogJXNcbiIsIGVycm9y
LT5tZXNzYWdlKTsKKworICAgIGdfc2lnbmFsX2Nvbm5lY3QoV0VCS0lUX1dFQl9FWFRFTlNJT04o
dXNlckRhdGEpLCAicGFnZS1jcmVhdGVkIiwgR19DQUxMQkFDSyhwYWdlQ3JlYXRlZENhbGxiYWNr
KSwgY29ubmVjdGlvbik7CiB9CiAKIGV4dGVybiAiQyIgdm9pZCB3ZWJraXRfd2ViX2V4dGVuc2lv
bl9pbml0aWFsaXplKFdlYktpdFdlYkV4dGVuc2lvbiogZXh0ZW5zaW9uKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvZ3RrL1dlYktpdFdl
YlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkv
Z3RrL1dlYktpdFdlYlBhZ2UuY3BwCmluZGV4IDFhY2ExN2RlZjQ3YmQ5ZWNiMmE1MDU5YjZiZGMw
ZDA5MGVlZjQxYzcuLjNkZmM5OWVjYTZiNWM0MjU0N2Q1MTlmYWVmZmQ0ODA1YzVlZDUyYzAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2d0
ay9XZWJLaXRXZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVj
dGVkQnVuZGxlL0FQSS9ndGsvV2ViS2l0V2ViUGFnZS5jcHAKQEAgLTMzLDEyICszMywyNSBAQAog
dXNpbmcgbmFtZXNwYWNlIFdlYktpdDsKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCitlbnVt
IHsKKyAgICBET0NVTUVOVF9MT0FERUQsCisKKyAgICBMQVNUX1NJR05BTAorfTsKKwogc3RydWN0
IF9XZWJLaXRXZWJQYWdlUHJpdmF0ZSB7CiAgICAgV2ViUGFnZSogd2ViUGFnZTsKIH07CiAKK3N0
YXRpYyBndWludCBzaWduYWxzW0xBU1RfU0lHTkFMXSA9IHsgMCwgfTsKKwogV0VCS0lUX0RFRklO
RV9UWVBFKFdlYktpdFdlYlBhZ2UsIHdlYmtpdF93ZWJfcGFnZSwgR19UWVBFX09CSkVDVCkKIAor
c3RhdGljIHZvaWQgZGlkRmluaXNoRG9jdW1lbnRMb2FkRm9yRnJhbWUoV0tCdW5kbGVQYWdlUmVm
LCBXS0J1bmRsZUZyYW1lUmVmLCBXS1R5cGVSZWYqLCBjb25zdCB2b2lkICpjbGllbnRJbmZvKQor
eworICAgIGdfc2lnbmFsX2VtaXQoV0VCS0lUX1dFQl9QQUdFKGNsaWVudEluZm8pLCBzaWduYWxz
W0RPQ1VNRU5UX0xPQURFRF0sIDApOworfQorCiBzdGF0aWMgdm9pZCBkaWRJbml0aWF0ZUxvYWRG
b3JSZXNvdXJjZShXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tCdW5kbGVGcmFtZVJlZiBmcmFtZSwg
dWludDY0X3QgaWRlbnRpZmllciwgV0tVUkxSZXF1ZXN0UmVmIHJlcXVlc3QsIGJvb2wgcGFnZUxv
YWRJc1Byb3Zpc2lvbmFsLCBjb25zdCB2b2lkKikKIHsKICAgICBJbW11dGFibGVEaWN0aW9uYXJ5
OjpNYXBUeXBlIG1lc3NhZ2U7CkBAIC0xMDAsNiArMTEzLDIzIEBAIHN0YXRpYyB2b2lkIGRpZEZh
aWxMb2FkRm9yUmVzb3VyY2UoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLQnVuZGxlRnJhbWVSZWYs
IHVpbnQ2CiAKIHN0YXRpYyB2b2lkIHdlYmtpdF93ZWJfcGFnZV9jbGFzc19pbml0KFdlYktpdFdl
YlBhZ2VDbGFzcyoga2xhc3MpCiB7CisgICAgLyoqCisgICAgICogV2ViS2l0V2ViUGFnZTo6ZG9j
dW1lbnQtbG9hZGVkOgorICAgICAqIEB3ZWJfcGFnZTogdGhlICNXZWJLaXRXZWJQYWdlIG9uIHdo
aWNoIHRoZSBzaWduYWwgaXMgZW1pdHRlZAorICAgICAqCisgICAgICogVGhpcyBzaWduYWwgaXMg
ZW1pdHRlZCB3aGVuIHRoZSBET00gZG9jdW1lbnQgb2YgYSAjV2ViS2l0V2ViUGFnZSBoYXMgYmVl
bgorICAgICAqIGxvYWRlZC4KKyAgICAgKgorICAgICAqIFlvdSBjYW4gd2FpdCBmb3IgdGhpcyBz
aWduYWwgdG8gZ2V0IHRoZSBET00gZG9jdW1lbnQgd2l0aAorICAgICAqIHdlYmtpdF93ZWJfcGFn
ZV9nZXRfZG9tX2RvY3VtZW50KCkuCisgICAgICovCisgICAgc2lnbmFsc1tET0NVTUVOVF9MT0FE
RURdID0gZ19zaWduYWxfbmV3KAorICAgICAgICAiZG9jdW1lbnQtbG9hZGVkIiwKKyAgICAgICAg
R19UWVBFX0ZST01fQ0xBU1Moa2xhc3MpLAorICAgICAgICBHX1NJR05BTF9SVU5fTEFTVCwKKyAg
ICAgICAgMCwgMCwgMCwKKyAgICAgICAgZ19jY2xvc3VyZV9tYXJzaGFsX1ZPSURfX09CSkVDVCwK
KyAgICAgICAgR19UWVBFX05PTkUsIDApOwogfQogCiBXZWJLaXRXZWJQYWdlKiB3ZWJraXRXZWJQ
YWdlQ3JlYXRlKFdlYlBhZ2UqIHdlYlBhZ2UpCkBAIC0xMDcsNiArMTM3LDQzIEBAIFdlYktpdFdl
YlBhZ2UqIHdlYmtpdFdlYlBhZ2VDcmVhdGUoV2ViUGFnZSogd2ViUGFnZSkKICAgICBXZWJLaXRX
ZWJQYWdlKiBwYWdlID0gV0VCS0lUX1dFQl9QQUdFKGdfb2JqZWN0X25ldyhXRUJLSVRfVFlQRV9X
RUJfUEFHRSwgTlVMTCkpOwogICAgIHBhZ2UtPnByaXYtPndlYlBhZ2UgPSB3ZWJQYWdlOwogCisg
ICAgV0tCdW5kbGVQYWdlTG9hZGVyQ2xpZW50IGxvYWRlckNsaWVudCA9IHsKKyAgICAgICAga1dL
QnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudEN1cnJlbnRWZXJzaW9uLAorICAgICAgICBwYWdl
LAorICAgICAgICAwLCAvLyBkaWRTdGFydFByb3Zpc2lvbmFsTG9hZEZvckZyYQorICAgICAgICAw
LCAvLyBkaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcgorICAgICAgICAwLCAvLyBkaWRGYWls
UHJvdmlzaW9uYWxMb2FkV2l0aEVycgorICAgICAgICAwLCAvLyBkaWRDb21taXRMb2FkRm9yRnJh
bWUKKyAgICAgICAgZGlkRmluaXNoRG9jdW1lbnRMb2FkRm9yRnJhbWUsCisgICAgICAgIDAsIC8v
IGRpZEZpbmlzaExvYWRGb3JGcmFtZSwKKyAgICAgICAgMCwgLy8gZGlkRmFpbExvYWRXaXRoRXJy
b3JGb3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRTYW1lRG9jdW1lbnROYXZpZ2F0aW9uRm9yRnJh
bWUKKyAgICAgICAgMCwgLy8gZGlkUmVjZWl2ZVRpdGxlRm9yRnJhbWUKKyAgICAgICAgMCwgLy8g
ZGlkRmlyc3RMYXlvdXRGb3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRGaXJzdFZpc3VhbGx5Tm9u
RW1wdHlMYXlvdXRGb3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRSZW1vdmVGcmFtZUZyb21IaWVy
YXJjaHkKKyAgICAgICAgMCwgLy8gZGlkRGlzcGxheUluc2VjdXJlQ29udGVudEZvckZyYW1lCisg
ICAgICAgIDAsIC8vIGRpZFJ1bkluc2VjdXJlQ29udGVudEZvckZyYW1lCisgICAgICAgIDAsIC8v
IGRpZENsZWFyV2luZG93T2JqZWN0Rm9yRnJhbWUKKyAgICAgICAgMCwgLy8gZGlkQ2FuY2VsQ2xp
ZW50UmVkaXJlY3RGb3JGcmFtZQorICAgICAgICAwLCAvLyB3aWxsUGVyZm9ybUNsaWVudFJlZGly
ZWN0Rm9yRnJhbWUKKyAgICAgICAgMCwgLy8gZGlkSGFuZGxlT25sb2FkRXZlbnRzRm9yRnJhbWUK
KyAgICAgICAgMCwgLy8gZGlkTGF5b3V0Rm9yRnJhbWUKKyAgICAgICAgMCwgLy8gZGlkTmV3Rmly
c3RWaXN1YWxseU5vbkVtcHR5TGF5b3V0CisgICAgICAgIDAsIC8vIGRpZERldGVjdFhTU0ZvckZy
YW1lCisgICAgICAgIDAsIC8vIHNob3VsZEdvVG9CYWNrRm9yd2FyZExpc3RJdGVtCisgICAgICAg
IDAsIC8vIGdsb2JhbE9iamVjdElzQXZhaWxhYmxlRm9yRnJhCisgICAgICAgIDAsIC8vIHdpbGxE
aXNjb25uZWN0RE9NV2luZG93RXh0ZW5zCisgICAgICAgIDAsIC8vIGRpZFJlY29ubmVjdERPTVdp
bmRvd0V4dGVuc2lvCisgICAgICAgIDAsIC8vIHdpbGxEZXN0cm95R2xvYmFsT2JqZWN0Rm9yRE9N
CisgICAgICAgIDAsIC8vIGRpZEZpbmlzaFByb2dyZXNzCisgICAgICAgIDAsIC8vIHNob3VsZEZv
cmNlVW5pdmVyc2FsQWNjZXNzRnJvCisgICAgICAgIDAsIC8vIGRpZFJlY2VpdmVJbnRlbnRGb3JG
cmFtZV91bmF2YWlsYWJsZQorICAgICAgICAwLCAvLyByZWdpc3RlckludGVudFNlcnZpY2VGb3JG
cmFtZV91bmF2YWlsYWJsZQorICAgICAgICAwIC8vIGRpZExheW91dAorICAgIH07CisgICAgV0tC
dW5kbGVQYWdlU2V0UGFnZUxvYWRlckNsaWVudCh0b0FQSSh3ZWJQYWdlKSwgJmxvYWRlckNsaWVu
dCk7CisKICAgICBXS0J1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQgcmVzb3VyY2VMb2FkQ2xp
ZW50ID0gewogICAgICAgICBrV0tCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50Q3VycmVudFZl
cnNpb24sCiAgICAgICAgIHBhZ2UsCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>189969</attachid>
            <date>2013-02-24 04:06:30 -0800</date>
            <delta_ts>2013-02-28 22:45:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-110614-20130224130247.patch</filename>
            <type>text/plain</type>
            <size>9255</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQzNzA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggOTI0ZDUxOGIxZDQ0NGU5
Njk5NWU2MjQzYmFjNzRjYjljNTVlYjQ0OC4uODlkNDllNTMxODljYjY0NjgzM2JiODM0N2Q2ODFj
ZTJjY2ExOTQyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEzLTAyLTIzICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtHVEtdW1dL
Ml0gQWRkIGRvY3VtZW50LWxvYWRlZCBzaWduYWwgdG8gV2ViS2l0V2ViUGFnZQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEwNjE0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgbmV3IHNpZ25hbCBk
b2N1bWVudC1sb2FkZWQgdG8gV2ViS2l0V2ViUGFnZSB0aGF0IHdpbGwgYmUgZW1pdHRlZAorICAg
ICAgICB3aGVuIHRoZSBET00gZG9jdW1lbnQgaGFzIGJlZW4gbG9hZGVkLgorCisgICAgICAgICog
VUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvVGVzdFdlYkV4dGVuc2lvbnMuY3BwOgorICAgICAgICAo
ZG9jdW1lbnRMb2FkZWRDYWxsYmFjayk6CisgICAgICAgICh0ZXN0RG9jdW1lbnRMb2FkZWRTaWdu
YWwpOgorICAgICAgICAoYmVmb3JlQWxsKTogQWRkIHRlc3QgZm9yIGRvY3VtZW50LWxvYWRlZCBz
aWduYWwuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvV2ViRXh0ZW5zaW9uVGVz
dC5jcHA6CisgICAgICAgIChkb2N1bWVudExvYWRlZENhbGxiYWNrKToKKyAgICAgICAgKHBhZ2VD
cmVhdGVkQ2FsbGJhY2spOgorICAgICAgICAobWV0aG9kQ2FsbENhbGxiYWNrKTogQWRkIG5ldyBE
LUJ1cyBzaWduYWwgRG9jdW1lbnRMb2FkZWQgaW4gb3JkZXIgdG8KKyAgICAgICAgdGVzdCBkb2N1
bWVudC1sb2FkZWQgc2lnbmFsLgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUv
QVBJL2d0ay9XZWJLaXRXZWJQYWdlLmNwcDoKKyAgICAgICAgKHdlYmtpdF93ZWJfcGFnZV9jbGFz
c19pbml0KToKKyAgICAgICAgKHdlYmtpdFdlYlBhZ2VDcmVhdGUpOiBBZGQgZG9jdW1lbnQtbG9h
ZGVkIHNpZ25hbCBhbmQgZW1pdCBpdCB3aGVuCisgICAgICAgIGRpZEZpbmlzaERvY3VtZW50TG9h
ZEZvckZyYW1lIGlzIGNhbGxlZC4KKwogMjAxMy0wMi0yMiAgTWlraGFpbCBQb3pkbnlha292ICA8
bWlraGFpbC5wb3pkbnlha292QGludGVsLmNvbT4KIAogICAgICAgICBbV0syXVtFRkxdIENsZWFu
IHVwIFBhZ2VWaWV3cG9ydENvbnRyb2xsZXJDbGllbnRFZmwgY2xhc3MKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1Rlc3RXZWJFeHRlbnNpb25zLmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1Rlc3RXZWJFeHRlbnNp
b25zLmNwcAppbmRleCAwZGNmNTY5MmQ2YjE2ODkyZDBmNjczMjJiOTRhNTUyZjE1ODQxODBmLi5j
MzM1NDg4ZmZlNzAyYzI2OGFlZGZlZDI5MzhkZThjMDAwYWQ1OGI1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy9UZXN0V2ViRXh0ZW5zaW9ucy5jcHAK
KysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvVGVzdFdlYkV4dGVu
c2lvbnMuY3BwCkBAIC00NSw2ICs0NSwzMSBAQCBzdGF0aWMgdm9pZCB0ZXN0V2ViRXh0ZW5zaW9u
KFdlYlZpZXdUZXN0KiB0ZXN0LCBnY29uc3Rwb2ludGVyKQogICAgIGdfYXNzZXJ0X2NtcHN0cih0
aXRsZSwgPT0sICJXZWJLaXRHVEsrIFdlYiBFeHRlbnNpb25zIFRlc3QiKTsKIH0KIAorc3RhdGlj
IHZvaWQgZG9jdW1lbnRMb2FkZWRDYWxsYmFjayhHREJ1c0Nvbm5lY3Rpb24qLCBjb25zdCBjaGFy
KiwgY29uc3QgY2hhciosIGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKiwgR1ZhcmlhbnQqLCBXZWJW
aWV3VGVzdCogdGVzdCkKK3sKKyAgICBnX21haW5fbG9vcF9xdWl0KHRlc3QtPm1fbWFpbkxvb3Ap
OworfQorCitzdGF0aWMgdm9pZCB0ZXN0RG9jdW1lbnRMb2FkZWRTaWduYWwoV2ViVmlld1Rlc3Qq
IHRlc3QsIGdjb25zdHBvaW50ZXIpCit7CisgICAgR1JlZlB0cjxHREJ1c1Byb3h5PiBwcm94eSA9
IGFkb3B0R1JlZihidXMtPmNyZWF0ZVByb3h5KCJvcmcud2Via2l0Lmd0ay5XZWJFeHRlbnNpb25U
ZXN0IiwKKyAgICAgICAgIi9vcmcvd2Via2l0L2d0ay9XZWJFeHRlbnNpb25UZXN0IiwgIm9yZy53
ZWJraXQuZ3RrLldlYkV4dGVuc2lvblRlc3QiLCB0ZXN0LT5tX21haW5Mb29wKSk7CisgICAgZ3Vp
bnQgaWQgPSBnX2RidXNfY29ubmVjdGlvbl9zaWduYWxfc3Vic2NyaWJlKGdfZGJ1c19wcm94eV9n
ZXRfY29ubmVjdGlvbihwcm94eS5nZXQoKSksCisgICAgICAgIDAsCisgICAgICAgICJvcmcud2Vi
a2l0Lmd0ay5XZWJFeHRlbnNpb25UZXN0IiwKKyAgICAgICAgIkRvY3VtZW50TG9hZGVkIiwKKyAg
ICAgICAgIi9vcmcvd2Via2l0L2d0ay9XZWJFeHRlbnNpb25UZXN0IiwKKyAgICAgICAgMCwKKyAg
ICAgICAgR19EQlVTX1NJR05BTF9GTEFHU19OT05FLAorICAgICAgICByZWludGVycHJldF9jYXN0
PEdEQnVzU2lnbmFsQ2FsbGJhY2s+KGRvY3VtZW50TG9hZGVkQ2FsbGJhY2spLAorICAgICAgICB0
ZXN0LAorICAgICAgICAwKTsKKyAgICBnX2Fzc2VydChpZCk7CisKKyAgICB0ZXN0LT5sb2FkSHRt
bCgiPGh0bWw+PGhlYWQ+PHRpdGxlPldlYktpdEdUSysgV2ViIEV4dGVuc2lvbnMgVGVzdDwvdGl0
bGU+PC9oZWFkPjxib2R5PjwvYm9keT48L2h0bWw+IiwgMCk7CisgICAgZ19tYWluX2xvb3BfcnVu
KHRlc3QtPm1fbWFpbkxvb3ApOworfQorCiB2b2lkIGJlZm9yZUFsbCgpCiB7CiAgICAgd2Via2l0
X3dlYl9jb250ZXh0X3NldF93ZWJfZXh0ZW5zaW9uc19kaXJlY3Rvcnkod2Via2l0X3dlYl9jb250
ZXh0X2dldF9kZWZhdWx0KCksIFdFQktJVF9URVNUX1dFQl9FWFRFTlNJT05TX0RJUik7CkBAIC01
Myw2ICs3OCw3IEBAIHZvaWQgYmVmb3JlQWxsKCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgV2Vi
Vmlld1Rlc3Q6OmFkZCgiV2ViS2l0V2ViRXh0ZW5zaW9uIiwgImRvbS1kb2N1bWVudC10aXRsZSIs
IHRlc3RXZWJFeHRlbnNpb24pOworICAgIFdlYlZpZXdUZXN0OjphZGQoIldlYktpdFdlYkV4dGVu
c2lvbiIsICJkb2N1bWVudC1sb2FkZWQtc2lnbmFsIiwgdGVzdERvY3VtZW50TG9hZGVkU2lnbmFs
KTsKIH0KIAogdm9pZCBhZnRlckFsbCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL2d0ay90ZXN0cy9XZWJFeHRlbnNpb25UZXN0LmNwcCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1dlYkV4dGVuc2lvblRlc3QuY3BwCmluZGV4IGVhZjY4
YzU5YWM3YzYwNWMyNWIwOTdhYWIzMzY4MTIyNWNlMjJjNDQuLmFhNjYwNDJjOGM4ZDEzMjYwZmVk
YjlkZDMzODA0ODVmNjA5ZDM5OWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvZ3RrL3Rlc3RzL1dlYkV4dGVuc2lvblRlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1dlYkV4dGVuc2lvblRlc3QuY3BwCkBAIC0zMCwxMCAr
MzAsMjggQEAgc3RhdGljIGNvbnN0IGNoYXIgaW50cm9zcGVjdGlvblhNTFtdID0KICAgICAiICAg
PGFyZyB0eXBlPSd0JyBuYW1lPSdwYWdlSUQnIGRpcmVjdGlvbj0naW4nLz4iCiAgICAgIiAgIDxh
cmcgdHlwZT0ncycgbmFtZT0ndGl0bGUnIGRpcmVjdGlvbj0nb3V0Jy8+IgogICAgICIgIDwvbWV0
aG9kPiIKKyAgICAiICA8c2lnbmFsIG5hbWU9J0RvY3VtZW50TG9hZGVkJy8+IgogICAgICIgPC9p
bnRlcmZhY2U+IgogICAgICI8L25vZGU+IjsKIAotc3RhdGljIHZvaWQgbWV0aG9kQ2FsbENhbGxi
YWNrKEdEQnVzQ29ubmVjdGlvbiosIGNvbnN0IGNoYXIqIHNlbmRlciwgY29uc3QgY2hhciogb2Jq
ZWN0UGF0aCwgY29uc3QgY2hhciogaW50ZXJmYWNlTmFtZSwgY29uc3QgY2hhciogbWV0aG9kTmFt
ZSwgR1ZhcmlhbnQqIHBhcmFtZXRlcnMsIEdEQnVzTWV0aG9kSW52b2NhdGlvbiogaW52b2NhdGlv
biwgZ3BvaW50ZXIgdXNlckRhdGEpCitzdGF0aWMgdm9pZCBkb2N1bWVudExvYWRlZENhbGxiYWNr
KFdlYktpdFdlYlBhZ2UqLCBncG9pbnRlciB1c2VyRGF0YSkKK3sKKyAgICBib29sIG9rID0gZ19k
YnVzX2Nvbm5lY3Rpb25fZW1pdF9zaWduYWwoR19EQlVTX0NPTk5FQ1RJT04odXNlckRhdGEpLAor
ICAgICAgICAwLAorICAgICAgICAiL29yZy93ZWJraXQvZ3RrL1dlYkV4dGVuc2lvblRlc3QiLAor
ICAgICAgICAib3JnLndlYmtpdC5ndGsuV2ViRXh0ZW5zaW9uVGVzdCIsCisgICAgICAgICJEb2N1
bWVudExvYWRlZCIsCisgICAgICAgIDAsCisgICAgICAgIDApOworICAgIGdfYXNzZXJ0KG9rKTsK
K30KKworc3RhdGljIHZvaWQgcGFnZUNyZWF0ZWRDYWxsYmFjayhXZWJLaXRXZWJFeHRlbnNpb24q
LCBXZWJLaXRXZWJQYWdlKiB3ZWJQYWdlLCBncG9pbnRlciB1c2VyRGF0YSkKK3sKKyAgICBnX3Np
Z25hbF9jb25uZWN0KHdlYlBhZ2UsICJkb2N1bWVudC1sb2FkZWQiLCBHX0NBTExCQUNLKGRvY3Vt
ZW50TG9hZGVkQ2FsbGJhY2spLCB1c2VyRGF0YSk7Cit9CisKK3N0YXRpYyB2b2lkIG1ldGhvZENh
bGxDYWxsYmFjayhHREJ1c0Nvbm5lY3Rpb24qIGNvbm5lY3Rpb24sIGNvbnN0IGNoYXIqIHNlbmRl
ciwgY29uc3QgY2hhciogb2JqZWN0UGF0aCwgY29uc3QgY2hhciogaW50ZXJmYWNlTmFtZSwgY29u
c3QgY2hhciogbWV0aG9kTmFtZSwgR1ZhcmlhbnQqIHBhcmFtZXRlcnMsIEdEQnVzTWV0aG9kSW52
b2NhdGlvbiogaW52b2NhdGlvbiwgZ3BvaW50ZXIgdXNlckRhdGEpCiB7CiAgICAgaWYgKGdfc3Ry
Y21wMChpbnRlcmZhY2VOYW1lLCAib3JnLndlYmtpdC5ndGsuV2ViRXh0ZW5zaW9uVGVzdCIpKQog
ICAgICAgICByZXR1cm47CkBAIC03OCw2ICs5Niw4IEBAIHN0YXRpYyB2b2lkIGJ1c0FjcXVpcmVk
Q2FsbGJhY2soR0RCdXNDb25uZWN0aW9uKiBjb25uZWN0aW9uLCBjb25zdCBjaGFyKiBuYW1lLCBn
CiAgICAgICAgICZlcnJvci5vdXRQdHIoKSk7CiAgICAgaWYgKCFyZWdpc3RyYXRpb25JRCkKICAg
ICAgICAgZ193YXJuaW5nKCJGYWlsZWQgdG8gcmVnaXN0ZXIgb2JqZWN0OiAlc1xuIiwgZXJyb3It
Pm1lc3NhZ2UpOworCisgICAgZ19zaWduYWxfY29ubmVjdChXRUJLSVRfV0VCX0VYVEVOU0lPTih1
c2VyRGF0YSksICJwYWdlLWNyZWF0ZWQiLCBHX0NBTExCQUNLKHBhZ2VDcmVhdGVkQ2FsbGJhY2sp
LCBjb25uZWN0aW9uKTsKIH0KIAogZXh0ZXJuICJDIiB2b2lkIHdlYmtpdF93ZWJfZXh0ZW5zaW9u
X2luaXRpYWxpemUoV2ViS2l0V2ViRXh0ZW5zaW9uKiBleHRlbnNpb24pCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9ndGsvV2ViS2l0V2Vi
UGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9n
dGsvV2ViS2l0V2ViUGFnZS5jcHAKaW5kZXggMWFjYTE3ZGVmNDdiZDllY2IyYTUwNTliNmJkYzBk
MDkwZWVmNDFjNy4uM2RmYzk5ZWNhNmI1YzQyNTQ3ZDUxOWZhZWZmZDQ4MDVjNWVkNTJjMCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvZ3Rr
L1dlYktpdFdlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0
ZWRCdW5kbGUvQVBJL2d0ay9XZWJLaXRXZWJQYWdlLmNwcApAQCAtMzMsMTIgKzMzLDI1IEBACiB1
c2luZyBuYW1lc3BhY2UgV2ViS2l0OwogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKK2VudW0g
eworICAgIERPQ1VNRU5UX0xPQURFRCwKKworICAgIExBU1RfU0lHTkFMCit9OworCiBzdHJ1Y3Qg
X1dlYktpdFdlYlBhZ2VQcml2YXRlIHsKICAgICBXZWJQYWdlKiB3ZWJQYWdlOwogfTsKIAorc3Rh
dGljIGd1aW50IHNpZ25hbHNbTEFTVF9TSUdOQUxdID0geyAwLCB9OworCiBXRUJLSVRfREVGSU5F
X1RZUEUoV2ViS2l0V2ViUGFnZSwgd2Via2l0X3dlYl9wYWdlLCBHX1RZUEVfT0JKRUNUKQogCitz
dGF0aWMgdm9pZCBkaWRGaW5pc2hEb2N1bWVudExvYWRGb3JGcmFtZShXS0J1bmRsZVBhZ2VSZWYs
IFdLQnVuZGxlRnJhbWVSZWYsIFdLVHlwZVJlZiosIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pCit7
CisgICAgZ19zaWduYWxfZW1pdChXRUJLSVRfV0VCX1BBR0UoY2xpZW50SW5mbyksIHNpZ25hbHNb
RE9DVU1FTlRfTE9BREVEXSwgMCk7Cit9CisKIHN0YXRpYyB2b2lkIGRpZEluaXRpYXRlTG9hZEZv
clJlc291cmNlKFdLQnVuZGxlUGFnZVJlZiBwYWdlLCBXS0J1bmRsZUZyYW1lUmVmIGZyYW1lLCB1
aW50NjRfdCBpZGVudGlmaWVyLCBXS1VSTFJlcXVlc3RSZWYgcmVxdWVzdCwgYm9vbCBwYWdlTG9h
ZElzUHJvdmlzaW9uYWwsIGNvbnN0IHZvaWQqKQogewogICAgIEltbXV0YWJsZURpY3Rpb25hcnk6
Ok1hcFR5cGUgbWVzc2FnZTsKQEAgLTEwMCw2ICsxMTMsMjMgQEAgc3RhdGljIHZvaWQgZGlkRmFp
bExvYWRGb3JSZXNvdXJjZShXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tCdW5kbGVGcmFtZVJlZiwg
dWludDYKIAogc3RhdGljIHZvaWQgd2Via2l0X3dlYl9wYWdlX2NsYXNzX2luaXQoV2ViS2l0V2Vi
UGFnZUNsYXNzKiBrbGFzcykKIHsKKyAgICAvKioKKyAgICAgKiBXZWJLaXRXZWJQYWdlOjpkb2N1
bWVudC1sb2FkZWQ6CisgICAgICogQHdlYl9wYWdlOiB0aGUgI1dlYktpdFdlYlBhZ2Ugb24gd2hp
Y2ggdGhlIHNpZ25hbCBpcyBlbWl0dGVkCisgICAgICoKKyAgICAgKiBUaGlzIHNpZ25hbCBpcyBl
bWl0dGVkIHdoZW4gdGhlIERPTSBkb2N1bWVudCBvZiBhICNXZWJLaXRXZWJQYWdlIGhhcyBiZWVu
CisgICAgICogbG9hZGVkLgorICAgICAqCisgICAgICogWW91IGNhbiB3YWl0IGZvciB0aGlzIHNp
Z25hbCB0byBnZXQgdGhlIERPTSBkb2N1bWVudCB3aXRoCisgICAgICogd2Via2l0X3dlYl9wYWdl
X2dldF9kb21fZG9jdW1lbnQoKS4KKyAgICAgKi8KKyAgICBzaWduYWxzW0RPQ1VNRU5UX0xPQURF
RF0gPSBnX3NpZ25hbF9uZXcoCisgICAgICAgICJkb2N1bWVudC1sb2FkZWQiLAorICAgICAgICBH
X1RZUEVfRlJPTV9DTEFTUyhrbGFzcyksCisgICAgICAgIEdfU0lHTkFMX1JVTl9MQVNULAorICAg
ICAgICAwLCAwLCAwLAorICAgICAgICBnX2NjbG9zdXJlX21hcnNoYWxfVk9JRF9fT0JKRUNULAor
ICAgICAgICBHX1RZUEVfTk9ORSwgMCk7CiB9CiAKIFdlYktpdFdlYlBhZ2UqIHdlYmtpdFdlYlBh
Z2VDcmVhdGUoV2ViUGFnZSogd2ViUGFnZSkKQEAgLTEwNyw2ICsxMzcsNDMgQEAgV2ViS2l0V2Vi
UGFnZSogd2Via2l0V2ViUGFnZUNyZWF0ZShXZWJQYWdlKiB3ZWJQYWdlKQogICAgIFdlYktpdFdl
YlBhZ2UqIHBhZ2UgPSBXRUJLSVRfV0VCX1BBR0UoZ19vYmplY3RfbmV3KFdFQktJVF9UWVBFX1dF
Ql9QQUdFLCBOVUxMKSk7CiAgICAgcGFnZS0+cHJpdi0+d2ViUGFnZSA9IHdlYlBhZ2U7CiAKKyAg
ICBXS0J1bmRsZVBhZ2VMb2FkZXJDbGllbnQgbG9hZGVyQ2xpZW50ID0geworICAgICAgICBrV0tC
dW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50Q3VycmVudFZlcnNpb24sCisgICAgICAgIHBhZ2Us
CisgICAgICAgIDAsIC8vIGRpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkRm9yRnJhCisgICAgICAgIDAs
IC8vIGRpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByCisgICAgICAgIDAsIC8vIGRpZEZhaWxQ
cm92aXNpb25hbExvYWRXaXRoRXJyCisgICAgICAgIDAsIC8vIGRpZENvbW1pdExvYWRGb3JGcmFt
ZQorICAgICAgICBkaWRGaW5pc2hEb2N1bWVudExvYWRGb3JGcmFtZSwKKyAgICAgICAgMCwgLy8g
ZGlkRmluaXNoTG9hZEZvckZyYW1lLAorICAgICAgICAwLCAvLyBkaWRGYWlsTG9hZFdpdGhFcnJv
ckZvckZyYW1lCisgICAgICAgIDAsIC8vIGRpZFNhbWVEb2N1bWVudE5hdmlnYXRpb25Gb3JGcmFt
ZQorICAgICAgICAwLCAvLyBkaWRSZWNlaXZlVGl0bGVGb3JGcmFtZQorICAgICAgICAwLCAvLyBk
aWRGaXJzdExheW91dEZvckZyYW1lCisgICAgICAgIDAsIC8vIGRpZEZpcnN0VmlzdWFsbHlOb25F
bXB0eUxheW91dEZvckZyYW1lCisgICAgICAgIDAsIC8vIGRpZFJlbW92ZUZyYW1lRnJvbUhpZXJh
cmNoeQorICAgICAgICAwLCAvLyBkaWREaXNwbGF5SW5zZWN1cmVDb250ZW50Rm9yRnJhbWUKKyAg
ICAgICAgMCwgLy8gZGlkUnVuSW5zZWN1cmVDb250ZW50Rm9yRnJhbWUKKyAgICAgICAgMCwgLy8g
ZGlkQ2xlYXJXaW5kb3dPYmplY3RGb3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRDYW5jZWxDbGll
bnRSZWRpcmVjdEZvckZyYW1lCisgICAgICAgIDAsIC8vIHdpbGxQZXJmb3JtQ2xpZW50UmVkaXJl
Y3RGb3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRIYW5kbGVPbmxvYWRFdmVudHNGb3JGcmFtZQor
ICAgICAgICAwLCAvLyBkaWRMYXlvdXRGb3JGcmFtZQorICAgICAgICAwLCAvLyBkaWROZXdGaXJz
dFZpc3VhbGx5Tm9uRW1wdHlMYXlvdXQKKyAgICAgICAgMCwgLy8gZGlkRGV0ZWN0WFNTRm9yRnJh
bWUKKyAgICAgICAgMCwgLy8gc2hvdWxkR29Ub0JhY2tGb3J3YXJkTGlzdEl0ZW0KKyAgICAgICAg
MCwgLy8gZ2xvYmFsT2JqZWN0SXNBdmFpbGFibGVGb3JGcmEKKyAgICAgICAgMCwgLy8gd2lsbERp
c2Nvbm5lY3RET01XaW5kb3dFeHRlbnMKKyAgICAgICAgMCwgLy8gZGlkUmVjb25uZWN0RE9NV2lu
ZG93RXh0ZW5zaW8KKyAgICAgICAgMCwgLy8gd2lsbERlc3Ryb3lHbG9iYWxPYmplY3RGb3JET00K
KyAgICAgICAgMCwgLy8gZGlkRmluaXNoUHJvZ3Jlc3MKKyAgICAgICAgMCwgLy8gc2hvdWxkRm9y
Y2VVbml2ZXJzYWxBY2Nlc3NGcm8KKyAgICAgICAgMCwgLy8gZGlkUmVjZWl2ZUludGVudEZvckZy
YW1lX3VuYXZhaWxhYmxlCisgICAgICAgIDAsIC8vIHJlZ2lzdGVySW50ZW50U2VydmljZUZvckZy
YW1lX3VuYXZhaWxhYmxlCisgICAgICAgIDAgLy8gZGlkTGF5b3V0CisgICAgfTsKKyAgICBXS0J1
bmRsZVBhZ2VTZXRQYWdlTG9hZGVyQ2xpZW50KHRvQVBJKHdlYlBhZ2UpLCAmbG9hZGVyQ2xpZW50
KTsKKwogICAgIFdLQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudCByZXNvdXJjZUxvYWRDbGll
bnQgPSB7CiAgICAgICAgIGtXS0J1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnRDdXJyZW50VmVy
c2lvbiwKICAgICAgICAgcGFnZSwK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>190888</attachid>
            <date>2013-02-28 22:46:00 -0800</date>
            <delta_ts>2013-03-06 02:50:18 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-110614-20130301074211.patch</filename>
            <type>text/plain</type>
            <size>9347</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ0MjcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggM2RmY2RiNjZjZGFhMDAz
NjY3OWZiYmJkZTIwODc5MDEyNzYxMDQ3My4uMjM2MzNiNjNhNTRjMjUwNzhhZGQzNTExZWViMDNj
NTY4Y2MwMDAwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEzLTAyLTIzICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtHVEtdW1dL
Ml0gQWRkIGRvY3VtZW50LWxvYWRlZCBzaWduYWwgdG8gV2ViS2l0V2ViUGFnZQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEwNjE0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgbmV3IHNpZ25hbCBk
b2N1bWVudC1sb2FkZWQgdG8gV2ViS2l0V2ViUGFnZSB0aGF0IHdpbGwgYmUgZW1pdHRlZAorICAg
ICAgICB3aGVuIHRoZSBET00gZG9jdW1lbnQgaGFzIGJlZW4gbG9hZGVkLgorCisgICAgICAgICog
VUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvVGVzdFdlYkV4dGVuc2lvbnMuY3BwOgorICAgICAgICAo
ZG9jdW1lbnRMb2FkZWRDYWxsYmFjayk6CisgICAgICAgICh0ZXN0RG9jdW1lbnRMb2FkZWRTaWdu
YWwpOgorICAgICAgICAoYmVmb3JlQWxsKTogQWRkIHRlc3QgZm9yIGRvY3VtZW50LWxvYWRlZCBz
aWduYWwuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvV2ViRXh0ZW5zaW9uVGVz
dC5jcHA6CisgICAgICAgIChkb2N1bWVudExvYWRlZENhbGxiYWNrKToKKyAgICAgICAgKHBhZ2VD
cmVhdGVkQ2FsbGJhY2spOgorICAgICAgICAobWV0aG9kQ2FsbENhbGxiYWNrKTogQWRkIG5ldyBE
LUJ1cyBzaWduYWwgRG9jdW1lbnRMb2FkZWQgaW4gb3JkZXIgdG8KKyAgICAgICAgdGVzdCBkb2N1
bWVudC1sb2FkZWQgc2lnbmFsLgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUv
QVBJL2d0ay9XZWJLaXRXZWJQYWdlLmNwcDoKKyAgICAgICAgKHdlYmtpdF93ZWJfcGFnZV9jbGFz
c19pbml0KToKKyAgICAgICAgKHdlYmtpdFdlYlBhZ2VDcmVhdGUpOiBBZGQgZG9jdW1lbnQtbG9h
ZGVkIHNpZ25hbCBhbmQgZW1pdCBpdCB3aGVuCisgICAgICAgIGRpZEZpbmlzaERvY3VtZW50TG9h
ZEZvckZyYW1lIGlzIGNhbGxlZC4KKwogMjAxMy0wMi0yNyAgQ3NhYmEgT3N6dHJvZ29uw6FjICA8
b3NzeUB3ZWJraXQub3JnPgogCiAgICAgICAgIFtXSzJdIE9uZSBtb3JlIHVucmV2aWV3ZWQgYnVp
bGRmaXggZm9yIEVGTCwgR1RLIGFuZCBRdCBhZnRlciByMTQ0MjE4LgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvVGVzdFdlYkV4dGVuc2lvbnMuY3Bw
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvVGVzdFdlYkV4dGVuc2lv
bnMuY3BwCmluZGV4IDBkY2Y1NjkyZDZiMTY4OTJkMGY2NzMyMmI5NGE1NTJmMTU4NDE4MGYuLmMz
MzU0ODhmZmU3MDJjMjY4YWVkZmVkMjkzOGRlOGMwMDBhZDU4YjUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1Rlc3RXZWJFeHRlbnNpb25zLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy9UZXN0V2ViRXh0ZW5z
aW9ucy5jcHAKQEAgLTQ1LDYgKzQ1LDMxIEBAIHN0YXRpYyB2b2lkIHRlc3RXZWJFeHRlbnNpb24o
V2ViVmlld1Rlc3QqIHRlc3QsIGdjb25zdHBvaW50ZXIpCiAgICAgZ19hc3NlcnRfY21wc3RyKHRp
dGxlLCA9PSwgIldlYktpdEdUSysgV2ViIEV4dGVuc2lvbnMgVGVzdCIpOwogfQogCitzdGF0aWMg
dm9pZCBkb2N1bWVudExvYWRlZENhbGxiYWNrKEdEQnVzQ29ubmVjdGlvbiosIGNvbnN0IGNoYXIq
LCBjb25zdCBjaGFyKiwgY29uc3QgY2hhciosIGNvbnN0IGNoYXIqLCBHVmFyaWFudCosIFdlYlZp
ZXdUZXN0KiB0ZXN0KQoreworICAgIGdfbWFpbl9sb29wX3F1aXQodGVzdC0+bV9tYWluTG9vcCk7
Cit9CisKK3N0YXRpYyB2b2lkIHRlc3REb2N1bWVudExvYWRlZFNpZ25hbChXZWJWaWV3VGVzdCog
dGVzdCwgZ2NvbnN0cG9pbnRlcikKK3sKKyAgICBHUmVmUHRyPEdEQnVzUHJveHk+IHByb3h5ID0g
YWRvcHRHUmVmKGJ1cy0+Y3JlYXRlUHJveHkoIm9yZy53ZWJraXQuZ3RrLldlYkV4dGVuc2lvblRl
c3QiLAorICAgICAgICAiL29yZy93ZWJraXQvZ3RrL1dlYkV4dGVuc2lvblRlc3QiLCAib3JnLndl
YmtpdC5ndGsuV2ViRXh0ZW5zaW9uVGVzdCIsIHRlc3QtPm1fbWFpbkxvb3ApKTsKKyAgICBndWlu
dCBpZCA9IGdfZGJ1c19jb25uZWN0aW9uX3NpZ25hbF9zdWJzY3JpYmUoZ19kYnVzX3Byb3h5X2dl
dF9jb25uZWN0aW9uKHByb3h5LmdldCgpKSwKKyAgICAgICAgMCwKKyAgICAgICAgIm9yZy53ZWJr
aXQuZ3RrLldlYkV4dGVuc2lvblRlc3QiLAorICAgICAgICAiRG9jdW1lbnRMb2FkZWQiLAorICAg
ICAgICAiL29yZy93ZWJraXQvZ3RrL1dlYkV4dGVuc2lvblRlc3QiLAorICAgICAgICAwLAorICAg
ICAgICBHX0RCVVNfU0lHTkFMX0ZMQUdTX05PTkUsCisgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8
R0RCdXNTaWduYWxDYWxsYmFjaz4oZG9jdW1lbnRMb2FkZWRDYWxsYmFjayksCisgICAgICAgIHRl
c3QsCisgICAgICAgIDApOworICAgIGdfYXNzZXJ0KGlkKTsKKworICAgIHRlc3QtPmxvYWRIdG1s
KCI8aHRtbD48aGVhZD48dGl0bGU+V2ViS2l0R1RLKyBXZWIgRXh0ZW5zaW9ucyBUZXN0PC90aXRs
ZT48L2hlYWQ+PGJvZHk+PC9ib2R5PjwvaHRtbD4iLCAwKTsKKyAgICBnX21haW5fbG9vcF9ydW4o
dGVzdC0+bV9tYWluTG9vcCk7Cit9CisKIHZvaWQgYmVmb3JlQWxsKCkKIHsKICAgICB3ZWJraXRf
d2ViX2NvbnRleHRfc2V0X3dlYl9leHRlbnNpb25zX2RpcmVjdG9yeSh3ZWJraXRfd2ViX2NvbnRl
eHRfZ2V0X2RlZmF1bHQoKSwgV0VCS0lUX1RFU1RfV0VCX0VYVEVOU0lPTlNfRElSKTsKQEAgLTUz
LDYgKzc4LDcgQEAgdm9pZCBiZWZvcmVBbGwoKQogICAgICAgICByZXR1cm47CiAKICAgICBXZWJW
aWV3VGVzdDo6YWRkKCJXZWJLaXRXZWJFeHRlbnNpb24iLCAiZG9tLWRvY3VtZW50LXRpdGxlIiwg
dGVzdFdlYkV4dGVuc2lvbik7CisgICAgV2ViVmlld1Rlc3Q6OmFkZCgiV2ViS2l0V2ViRXh0ZW5z
aW9uIiwgImRvY3VtZW50LWxvYWRlZC1zaWduYWwiLCB0ZXN0RG9jdW1lbnRMb2FkZWRTaWduYWwp
OwogfQogCiB2b2lkIGFmdGVyQWxsKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvZ3RrL3Rlc3RzL1dlYkV4dGVuc2lvblRlc3QuY3BwIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvV2ViRXh0ZW5zaW9uVGVzdC5jcHAKaW5kZXggZWFmNjhj
NTlhYzdjNjA1YzI1YjA5N2FhYjMzNjgxMjI1Y2UyMmM0NC4uYWE2NjA0MmM4YzhkMTMyNjBmZWRi
OWRkMzM4MDQ4NWY2MDlkMzk5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9ndGsvdGVzdHMvV2ViRXh0ZW5zaW9uVGVzdC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvV2ViRXh0ZW5zaW9uVGVzdC5jcHAKQEAgLTMwLDEwICsz
MCwyOCBAQCBzdGF0aWMgY29uc3QgY2hhciBpbnRyb3NwZWN0aW9uWE1MW10gPQogICAgICIgICA8
YXJnIHR5cGU9J3QnIG5hbWU9J3BhZ2VJRCcgZGlyZWN0aW9uPSdpbicvPiIKICAgICAiICAgPGFy
ZyB0eXBlPSdzJyBuYW1lPSd0aXRsZScgZGlyZWN0aW9uPSdvdXQnLz4iCiAgICAgIiAgPC9tZXRo
b2Q+IgorICAgICIgIDxzaWduYWwgbmFtZT0nRG9jdW1lbnRMb2FkZWQnLz4iCiAgICAgIiA8L2lu
dGVyZmFjZT4iCiAgICAgIjwvbm9kZT4iOwogCi1zdGF0aWMgdm9pZCBtZXRob2RDYWxsQ2FsbGJh
Y2soR0RCdXNDb25uZWN0aW9uKiwgY29uc3QgY2hhciogc2VuZGVyLCBjb25zdCBjaGFyKiBvYmpl
Y3RQYXRoLCBjb25zdCBjaGFyKiBpbnRlcmZhY2VOYW1lLCBjb25zdCBjaGFyKiBtZXRob2ROYW1l
LCBHVmFyaWFudCogcGFyYW1ldGVycywgR0RCdXNNZXRob2RJbnZvY2F0aW9uKiBpbnZvY2F0aW9u
LCBncG9pbnRlciB1c2VyRGF0YSkKK3N0YXRpYyB2b2lkIGRvY3VtZW50TG9hZGVkQ2FsbGJhY2so
V2ViS2l0V2ViUGFnZSosIGdwb2ludGVyIHVzZXJEYXRhKQoreworICAgIGJvb2wgb2sgPSBnX2Ri
dXNfY29ubmVjdGlvbl9lbWl0X3NpZ25hbChHX0RCVVNfQ09OTkVDVElPTih1c2VyRGF0YSksCisg
ICAgICAgIDAsCisgICAgICAgICIvb3JnL3dlYmtpdC9ndGsvV2ViRXh0ZW5zaW9uVGVzdCIsCisg
ICAgICAgICJvcmcud2Via2l0Lmd0ay5XZWJFeHRlbnNpb25UZXN0IiwKKyAgICAgICAgIkRvY3Vt
ZW50TG9hZGVkIiwKKyAgICAgICAgMCwKKyAgICAgICAgMCk7CisgICAgZ19hc3NlcnQob2spOwor
fQorCitzdGF0aWMgdm9pZCBwYWdlQ3JlYXRlZENhbGxiYWNrKFdlYktpdFdlYkV4dGVuc2lvbios
IFdlYktpdFdlYlBhZ2UqIHdlYlBhZ2UsIGdwb2ludGVyIHVzZXJEYXRhKQoreworICAgIGdfc2ln
bmFsX2Nvbm5lY3Qod2ViUGFnZSwgImRvY3VtZW50LWxvYWRlZCIsIEdfQ0FMTEJBQ0soZG9jdW1l
bnRMb2FkZWRDYWxsYmFjayksIHVzZXJEYXRhKTsKK30KKworc3RhdGljIHZvaWQgbWV0aG9kQ2Fs
bENhbGxiYWNrKEdEQnVzQ29ubmVjdGlvbiogY29ubmVjdGlvbiwgY29uc3QgY2hhciogc2VuZGVy
LCBjb25zdCBjaGFyKiBvYmplY3RQYXRoLCBjb25zdCBjaGFyKiBpbnRlcmZhY2VOYW1lLCBjb25z
dCBjaGFyKiBtZXRob2ROYW1lLCBHVmFyaWFudCogcGFyYW1ldGVycywgR0RCdXNNZXRob2RJbnZv
Y2F0aW9uKiBpbnZvY2F0aW9uLCBncG9pbnRlciB1c2VyRGF0YSkKIHsKICAgICBpZiAoZ19zdHJj
bXAwKGludGVyZmFjZU5hbWUsICJvcmcud2Via2l0Lmd0ay5XZWJFeHRlbnNpb25UZXN0IikpCiAg
ICAgICAgIHJldHVybjsKQEAgLTc4LDYgKzk2LDggQEAgc3RhdGljIHZvaWQgYnVzQWNxdWlyZWRD
YWxsYmFjayhHREJ1c0Nvbm5lY3Rpb24qIGNvbm5lY3Rpb24sIGNvbnN0IGNoYXIqIG5hbWUsIGcK
ICAgICAgICAgJmVycm9yLm91dFB0cigpKTsKICAgICBpZiAoIXJlZ2lzdHJhdGlvbklEKQogICAg
ICAgICBnX3dhcm5pbmcoIkZhaWxlZCB0byByZWdpc3RlciBvYmplY3Q6ICVzXG4iLCBlcnJvci0+
bWVzc2FnZSk7CisKKyAgICBnX3NpZ25hbF9jb25uZWN0KFdFQktJVF9XRUJfRVhURU5TSU9OKHVz
ZXJEYXRhKSwgInBhZ2UtY3JlYXRlZCIsIEdfQ0FMTEJBQ0socGFnZUNyZWF0ZWRDYWxsYmFjayks
IGNvbm5lY3Rpb24pOwogfQogCiBleHRlcm4gIkMiIHZvaWQgd2Via2l0X3dlYl9leHRlbnNpb25f
aW5pdGlhbGl6ZShXZWJLaXRXZWJFeHRlbnNpb24qIGV4dGVuc2lvbikKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2d0ay9XZWJLaXRXZWJQ
YWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2d0
ay9XZWJLaXRXZWJQYWdlLmNwcAppbmRleCAxYWNhMTdkZWY0N2JkOWVjYjJhNTA1OWI2YmRjMGQw
OTBlZWY0MWM3Li4yZDViMzM1ZTNmYzI5OTI0YzQ5Yzc0ODk1ZGI5ZWEyODY1YjEyZmZhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9ndGsv
V2ViS2l0V2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3Rl
ZEJ1bmRsZS9BUEkvZ3RrL1dlYktpdFdlYlBhZ2UuY3BwCkBAIC0zMywxMiArMzMsMjUgQEAKIHVz
aW5nIG5hbWVzcGFjZSBXZWJLaXQ7CiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAorZW51bSB7
CisgICAgRE9DVU1FTlRfTE9BREVELAorCisgICAgTEFTVF9TSUdOQUwKK307CisKIHN0cnVjdCBf
V2ViS2l0V2ViUGFnZVByaXZhdGUgewogICAgIFdlYlBhZ2UqIHdlYlBhZ2U7CiB9OwogCitzdGF0
aWMgZ3VpbnQgc2lnbmFsc1tMQVNUX1NJR05BTF0gPSB7IDAsIH07CisKIFdFQktJVF9ERUZJTkVf
VFlQRShXZWJLaXRXZWJQYWdlLCB3ZWJraXRfd2ViX3BhZ2UsIEdfVFlQRV9PQkpFQ1QpCiAKK3N0
YXRpYyB2b2lkIGRpZEZpbmlzaERvY3VtZW50TG9hZEZvckZyYW1lKFdLQnVuZGxlUGFnZVJlZiwg
V0tCdW5kbGVGcmFtZVJlZiwgV0tUeXBlUmVmKiwgY29uc3Qgdm9pZCAqY2xpZW50SW5mbykKK3sK
KyAgICBnX3NpZ25hbF9lbWl0KFdFQktJVF9XRUJfUEFHRShjbGllbnRJbmZvKSwgc2lnbmFsc1tE
T0NVTUVOVF9MT0FERURdLCAwKTsKK30KKwogc3RhdGljIHZvaWQgZGlkSW5pdGlhdGVMb2FkRm9y
UmVzb3VyY2UoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLQnVuZGxlRnJhbWVSZWYgZnJhbWUsIHVp
bnQ2NF90IGlkZW50aWZpZXIsIFdLVVJMUmVxdWVzdFJlZiByZXF1ZXN0LCBib29sIHBhZ2VMb2Fk
SXNQcm92aXNpb25hbCwgY29uc3Qgdm9pZCopCiB7CiAgICAgSW1tdXRhYmxlRGljdGlvbmFyeTo6
TWFwVHlwZSBtZXNzYWdlOwpAQCAtMTAwLDYgKzExMywyMyBAQCBzdGF0aWMgdm9pZCBkaWRGYWls
TG9hZEZvclJlc291cmNlKFdLQnVuZGxlUGFnZVJlZiBwYWdlLCBXS0J1bmRsZUZyYW1lUmVmLCB1
aW50NgogCiBzdGF0aWMgdm9pZCB3ZWJraXRfd2ViX3BhZ2VfY2xhc3NfaW5pdChXZWJLaXRXZWJQ
YWdlQ2xhc3MqIGtsYXNzKQogeworICAgIC8qKgorICAgICAqIFdlYktpdFdlYlBhZ2U6OmRvY3Vt
ZW50LWxvYWRlZDoKKyAgICAgKiBAd2ViX3BhZ2U6IHRoZSAjV2ViS2l0V2ViUGFnZSBvbiB3aGlj
aCB0aGUgc2lnbmFsIGlzIGVtaXR0ZWQKKyAgICAgKgorICAgICAqIFRoaXMgc2lnbmFsIGlzIGVt
aXR0ZWQgd2hlbiB0aGUgRE9NIGRvY3VtZW50IG9mIGEgI1dlYktpdFdlYlBhZ2UgaGFzIGJlZW4K
KyAgICAgKiBsb2FkZWQuCisgICAgICoKKyAgICAgKiBZb3UgY2FuIHdhaXQgZm9yIHRoaXMgc2ln
bmFsIHRvIGdldCB0aGUgRE9NIGRvY3VtZW50IHdpdGgKKyAgICAgKiB3ZWJraXRfd2ViX3BhZ2Vf
Z2V0X2RvbV9kb2N1bWVudCgpLgorICAgICAqLworICAgIHNpZ25hbHNbRE9DVU1FTlRfTE9BREVE
XSA9IGdfc2lnbmFsX25ldygKKyAgICAgICAgImRvY3VtZW50LWxvYWRlZCIsCisgICAgICAgIEdf
VFlQRV9GUk9NX0NMQVNTKGtsYXNzKSwKKyAgICAgICAgR19TSUdOQUxfUlVOX0xBU1QsCisgICAg
ICAgIDAsIDAsIDAsCisgICAgICAgIGdfY2Nsb3N1cmVfbWFyc2hhbF9WT0lEX19PQkpFQ1QsCisg
ICAgICAgIEdfVFlQRV9OT05FLCAwKTsKIH0KIAogV2ViS2l0V2ViUGFnZSogd2Via2l0V2ViUGFn
ZUNyZWF0ZShXZWJQYWdlKiB3ZWJQYWdlKQpAQCAtMTA3LDYgKzEzNyw0MyBAQCBXZWJLaXRXZWJQ
YWdlKiB3ZWJraXRXZWJQYWdlQ3JlYXRlKFdlYlBhZ2UqIHdlYlBhZ2UpCiAgICAgV2ViS2l0V2Vi
UGFnZSogcGFnZSA9IFdFQktJVF9XRUJfUEFHRShnX29iamVjdF9uZXcoV0VCS0lUX1RZUEVfV0VC
X1BBR0UsIE5VTEwpKTsKICAgICBwYWdlLT5wcml2LT53ZWJQYWdlID0gd2ViUGFnZTsKIAorICAg
IFdLQnVuZGxlUGFnZUxvYWRlckNsaWVudCBsb2FkZXJDbGllbnQgPSB7CisgICAgICAgIGtXS0J1
bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnRDdXJyZW50VmVyc2lvbiwKKyAgICAgICAgcGFnZSwK
KyAgICAgICAgMCwgLy8gZGlkU3RhcnRQcm92aXNpb25hbExvYWRGb3JGcmFtZQorICAgICAgICAw
LCAvLyBkaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNpb25hbExvYWRGb3JGcmFtZQor
ICAgICAgICAwLCAvLyBkaWRGYWlsUHJvdmlzaW9uYWxMb2FkV2l0aEVycm9yRm9yRnJhbWUKKyAg
ICAgICAgMCwgLy8gZGlkQ29tbWl0TG9hZEZvckZyYW1lCisgICAgICAgIGRpZEZpbmlzaERvY3Vt
ZW50TG9hZEZvckZyYW1lLAorICAgICAgICAwLCAvLyBkaWRGaW5pc2hMb2FkRm9yRnJhbWUsCisg
ICAgICAgIDAsIC8vIGRpZEZhaWxMb2FkV2l0aEVycm9yRm9yRnJhbWUKKyAgICAgICAgMCwgLy8g
ZGlkU2FtZURvY3VtZW50TmF2aWdhdGlvbkZvckZyYW1lCisgICAgICAgIDAsIC8vIGRpZFJlY2Vp
dmVUaXRsZUZvckZyYW1lCisgICAgICAgIDAsIC8vIGRpZEZpcnN0TGF5b3V0Rm9yRnJhbWUKKyAg
ICAgICAgMCwgLy8gZGlkRmlyc3RWaXN1YWxseU5vbkVtcHR5TGF5b3V0Rm9yRnJhbWUKKyAgICAg
ICAgMCwgLy8gZGlkUmVtb3ZlRnJhbWVGcm9tSGllcmFyY2h5CisgICAgICAgIDAsIC8vIGRpZERp
c3BsYXlJbnNlY3VyZUNvbnRlbnRGb3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRSdW5JbnNlY3Vy
ZUNvbnRlbnRGb3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRDbGVhcldpbmRvd09iamVjdEZvckZy
YW1lCisgICAgICAgIDAsIC8vIGRpZENhbmNlbENsaWVudFJlZGlyZWN0Rm9yRnJhbWUKKyAgICAg
ICAgMCwgLy8gd2lsbFBlcmZvcm1DbGllbnRSZWRpcmVjdEZvckZyYW1lCisgICAgICAgIDAsIC8v
IGRpZEhhbmRsZU9ubG9hZEV2ZW50c0ZvckZyYW1lCisgICAgICAgIDAsIC8vIGRpZExheW91dEZv
ckZyYW1lCisgICAgICAgIDAsIC8vIGRpZE5ld0ZpcnN0VmlzdWFsbHlOb25FbXB0eUxheW91dAor
ICAgICAgICAwLCAvLyBkaWREZXRlY3RYU1NGb3JGcmFtZQorICAgICAgICAwLCAvLyBzaG91bGRH
b1RvQmFja0ZvcndhcmRMaXN0SXRlbQorICAgICAgICAwLCAvLyBnbG9iYWxPYmplY3RJc0F2YWls
YWJsZUZvckZyYW1lCisgICAgICAgIDAsIC8vIHdpbGxEaXNjb25uZWN0RE9NV2luZG93RXh0ZW5z
aW9uRnJvbUdsb2JhbE9iamVjdAorICAgICAgICAwLCAvLyBkaWRSZWNvbm5lY3RET01XaW5kb3dF
eHRlbnNpb25Ub0dsb2JhbE9iamVjdAorICAgICAgICAwLCAvLyB3aWxsRGVzdHJveUdsb2JhbE9i
amVjdEZvckRPTVdpbmRvd0V4dGVuc2lvbgorICAgICAgICAwLCAvLyBkaWRGaW5pc2hQcm9ncmVz
cworICAgICAgICAwLCAvLyBzaG91bGRGb3JjZVVuaXZlcnNhbEFjY2Vzc0Zyb21Mb2NhbFVSTAor
ICAgICAgICAwLCAvLyBkaWRSZWNlaXZlSW50ZW50Rm9yRnJhbWVfdW5hdmFpbGFibGUKKyAgICAg
ICAgMCwgLy8gcmVnaXN0ZXJJbnRlbnRTZXJ2aWNlRm9yRnJhbWVfdW5hdmFpbGFibGUKKyAgICAg
ICAgMCAvLyBkaWRMYXlvdXQKKyAgICB9OworICAgIFdLQnVuZGxlUGFnZVNldFBhZ2VMb2FkZXJD
bGllbnQodG9BUEkod2ViUGFnZSksICZsb2FkZXJDbGllbnQpOworCiAgICAgV0tCdW5kbGVQYWdl
UmVzb3VyY2VMb2FkQ2xpZW50IHJlc291cmNlTG9hZENsaWVudCA9IHsKICAgICAgICAga1dLQnVu
ZGxlUGFnZVJlc291cmNlTG9hZENsaWVudEN1cnJlbnRWZXJzaW9uLAogICAgICAgICBwYWdlLAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>191698</attachid>
            <date>2013-03-06 02:50:25 -0800</date>
            <delta_ts>2013-03-11 03:22:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-110614-20130306114630.patch</filename>
            <type>text/plain</type>
            <size>9361</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQzNzA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggOTI0ZDUxOGIxZDQ0NGU5
Njk5NWU2MjQzYmFjNzRjYjljNTVlYjQ0OC4uODlkNDllNTMxODljYjY0NjgzM2JiODM0N2Q2ODFj
ZTJjY2ExOTQyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEzLTAyLTIzICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtHVEtdW1dL
Ml0gQWRkIGRvY3VtZW50LWxvYWRlZCBzaWduYWwgdG8gV2ViS2l0V2ViUGFnZQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEwNjE0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgbmV3IHNpZ25hbCBk
b2N1bWVudC1sb2FkZWQgdG8gV2ViS2l0V2ViUGFnZSB0aGF0IHdpbGwgYmUgZW1pdHRlZAorICAg
ICAgICB3aGVuIHRoZSBET00gZG9jdW1lbnQgaGFzIGJlZW4gbG9hZGVkLgorCisgICAgICAgICog
VUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvVGVzdFdlYkV4dGVuc2lvbnMuY3BwOgorICAgICAgICAo
ZG9jdW1lbnRMb2FkZWRDYWxsYmFjayk6CisgICAgICAgICh0ZXN0RG9jdW1lbnRMb2FkZWRTaWdu
YWwpOgorICAgICAgICAoYmVmb3JlQWxsKTogQWRkIHRlc3QgZm9yIGRvY3VtZW50LWxvYWRlZCBz
aWduYWwuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvV2ViRXh0ZW5zaW9uVGVz
dC5jcHA6CisgICAgICAgIChkb2N1bWVudExvYWRlZENhbGxiYWNrKToKKyAgICAgICAgKHBhZ2VD
cmVhdGVkQ2FsbGJhY2spOgorICAgICAgICAobWV0aG9kQ2FsbENhbGxiYWNrKTogQWRkIG5ldyBE
LUJ1cyBzaWduYWwgRG9jdW1lbnRMb2FkZWQgaW4gb3JkZXIgdG8KKyAgICAgICAgdGVzdCBkb2N1
bWVudC1sb2FkZWQgc2lnbmFsLgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUv
QVBJL2d0ay9XZWJLaXRXZWJQYWdlLmNwcDoKKyAgICAgICAgKHdlYmtpdF93ZWJfcGFnZV9jbGFz
c19pbml0KToKKyAgICAgICAgKHdlYmtpdFdlYlBhZ2VDcmVhdGUpOiBBZGQgZG9jdW1lbnQtbG9h
ZGVkIHNpZ25hbCBhbmQgZW1pdCBpdCB3aGVuCisgICAgICAgIGRpZEZpbmlzaERvY3VtZW50TG9h
ZEZvckZyYW1lIGlzIGNhbGxlZC4KKwogMjAxMy0wMi0yMiAgTWlraGFpbCBQb3pkbnlha292ICA8
bWlraGFpbC5wb3pkbnlha292QGludGVsLmNvbT4KIAogICAgICAgICBbV0syXVtFRkxdIENsZWFu
IHVwIFBhZ2VWaWV3cG9ydENvbnRyb2xsZXJDbGllbnRFZmwgY2xhc3MKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1Rlc3RXZWJFeHRlbnNpb25zLmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1Rlc3RXZWJFeHRlbnNp
b25zLmNwcAppbmRleCAwZGNmNTY5MmQ2YjE2ODkyZDBmNjczMjJiOTRhNTUyZjE1ODQxODBmLi5m
MjllOWJlNzE0ZThhOWQ5ZjFlMmJhOGU2MDIwYzIwZGExZTlkNjA2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy9UZXN0V2ViRXh0ZW5zaW9ucy5jcHAK
KysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvVGVzdFdlYkV4dGVu
c2lvbnMuY3BwCkBAIC00NSw2ICs0NSwzMyBAQCBzdGF0aWMgdm9pZCB0ZXN0V2ViRXh0ZW5zaW9u
KFdlYlZpZXdUZXN0KiB0ZXN0LCBnY29uc3Rwb2ludGVyKQogICAgIGdfYXNzZXJ0X2NtcHN0cih0
aXRsZSwgPT0sICJXZWJLaXRHVEsrIFdlYiBFeHRlbnNpb25zIFRlc3QiKTsKIH0KIAorc3RhdGlj
IHZvaWQgZG9jdW1lbnRMb2FkZWRDYWxsYmFjayhHREJ1c0Nvbm5lY3Rpb24qLCBjb25zdCBjaGFy
KiwgY29uc3QgY2hhciosIGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKiwgR1ZhcmlhbnQqLCBXZWJW
aWV3VGVzdCogdGVzdCkKK3sKKyAgICBnX21haW5fbG9vcF9xdWl0KHRlc3QtPm1fbWFpbkxvb3Ap
OworfQorCitzdGF0aWMgdm9pZCB0ZXN0RG9jdW1lbnRMb2FkZWRTaWduYWwoV2ViVmlld1Rlc3Qq
IHRlc3QsIGdjb25zdHBvaW50ZXIpCit7CisgICAgR1JlZlB0cjxHREJ1c1Byb3h5PiBwcm94eSA9
IGFkb3B0R1JlZihidXMtPmNyZWF0ZVByb3h5KCJvcmcud2Via2l0Lmd0ay5XZWJFeHRlbnNpb25U
ZXN0IiwKKyAgICAgICAgIi9vcmcvd2Via2l0L2d0ay9XZWJFeHRlbnNpb25UZXN0IiwgIm9yZy53
ZWJraXQuZ3RrLldlYkV4dGVuc2lvblRlc3QiLCB0ZXN0LT5tX21haW5Mb29wKSk7CisgICAgR0RC
dXNDb25uZWN0aW9uKiBjb25uZWN0aW9uID0gZ19kYnVzX3Byb3h5X2dldF9jb25uZWN0aW9uKHBy
b3h5LmdldCgpKTsKKyAgICBndWludCBpZCA9IGdfZGJ1c19jb25uZWN0aW9uX3NpZ25hbF9zdWJz
Y3JpYmUoY29ubmVjdGlvbiwKKyAgICAgICAgMCwKKyAgICAgICAgIm9yZy53ZWJraXQuZ3RrLldl
YkV4dGVuc2lvblRlc3QiLAorICAgICAgICAiRG9jdW1lbnRMb2FkZWQiLAorICAgICAgICAiL29y
Zy93ZWJraXQvZ3RrL1dlYkV4dGVuc2lvblRlc3QiLAorICAgICAgICAwLAorICAgICAgICBHX0RC
VVNfU0lHTkFMX0ZMQUdTX05PTkUsCisgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8R0RCdXNTaWdu
YWxDYWxsYmFjaz4oZG9jdW1lbnRMb2FkZWRDYWxsYmFjayksCisgICAgICAgIHRlc3QsCisgICAg
ICAgIDApOworICAgIGdfYXNzZXJ0KGlkKTsKKworICAgIHRlc3QtPmxvYWRIdG1sKCI8aHRtbD48
aGVhZD48dGl0bGU+V2ViS2l0R1RLKyBXZWIgRXh0ZW5zaW9ucyBUZXN0PC90aXRsZT48L2hlYWQ+
PGJvZHk+PC9ib2R5PjwvaHRtbD4iLCAwKTsKKyAgICBnX21haW5fbG9vcF9ydW4odGVzdC0+bV9t
YWluTG9vcCk7CisgICAgZ19kYnVzX2Nvbm5lY3Rpb25fc2lnbmFsX3Vuc3Vic2NyaWJlKGNvbm5l
Y3Rpb24sIGlkKTsKK30KKwogdm9pZCBiZWZvcmVBbGwoKQogewogICAgIHdlYmtpdF93ZWJfY29u
dGV4dF9zZXRfd2ViX2V4dGVuc2lvbnNfZGlyZWN0b3J5KHdlYmtpdF93ZWJfY29udGV4dF9nZXRf
ZGVmYXVsdCgpLCBXRUJLSVRfVEVTVF9XRUJfRVhURU5TSU9OU19ESVIpOwpAQCAtNTMsNiArODAs
NyBAQCB2b2lkIGJlZm9yZUFsbCgpCiAgICAgICAgIHJldHVybjsKIAogICAgIFdlYlZpZXdUZXN0
OjphZGQoIldlYktpdFdlYkV4dGVuc2lvbiIsICJkb20tZG9jdW1lbnQtdGl0bGUiLCB0ZXN0V2Vi
RXh0ZW5zaW9uKTsKKyAgICBXZWJWaWV3VGVzdDo6YWRkKCJXZWJLaXRXZWJFeHRlbnNpb24iLCAi
ZG9jdW1lbnQtbG9hZGVkLXNpZ25hbCIsIHRlc3REb2N1bWVudExvYWRlZFNpZ25hbCk7CiB9CiAK
IHZvaWQgYWZ0ZXJBbGwoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9ndGsvdGVzdHMvV2ViRXh0ZW5zaW9uVGVzdC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL2d0ay90ZXN0cy9XZWJFeHRlbnNpb25UZXN0LmNwcAppbmRleCBlYWY2OGM1OWFjN2M2
MDVjMjViMDk3YWFiMzM2ODEyMjVjZTIyYzQ0Li5hYTY2MDQyYzhjOGQxMzI2MGZlZGI5ZGQzMzgw
NDg1ZjYwOWQzOTllIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0
ay90ZXN0cy9XZWJFeHRlbnNpb25UZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL2d0ay90ZXN0cy9XZWJFeHRlbnNpb25UZXN0LmNwcApAQCAtMzAsMTAgKzMwLDI4IEBA
IHN0YXRpYyBjb25zdCBjaGFyIGludHJvc3BlY3Rpb25YTUxbXSA9CiAgICAgIiAgIDxhcmcgdHlw
ZT0ndCcgbmFtZT0ncGFnZUlEJyBkaXJlY3Rpb249J2luJy8+IgogICAgICIgICA8YXJnIHR5cGU9
J3MnIG5hbWU9J3RpdGxlJyBkaXJlY3Rpb249J291dCcvPiIKICAgICAiICA8L21ldGhvZD4iCisg
ICAgIiAgPHNpZ25hbCBuYW1lPSdEb2N1bWVudExvYWRlZCcvPiIKICAgICAiIDwvaW50ZXJmYWNl
PiIKICAgICAiPC9ub2RlPiI7CiAKLXN0YXRpYyB2b2lkIG1ldGhvZENhbGxDYWxsYmFjayhHREJ1
c0Nvbm5lY3Rpb24qLCBjb25zdCBjaGFyKiBzZW5kZXIsIGNvbnN0IGNoYXIqIG9iamVjdFBhdGgs
IGNvbnN0IGNoYXIqIGludGVyZmFjZU5hbWUsIGNvbnN0IGNoYXIqIG1ldGhvZE5hbWUsIEdWYXJp
YW50KiBwYXJhbWV0ZXJzLCBHREJ1c01ldGhvZEludm9jYXRpb24qIGludm9jYXRpb24sIGdwb2lu
dGVyIHVzZXJEYXRhKQorc3RhdGljIHZvaWQgZG9jdW1lbnRMb2FkZWRDYWxsYmFjayhXZWJLaXRX
ZWJQYWdlKiwgZ3BvaW50ZXIgdXNlckRhdGEpCit7CisgICAgYm9vbCBvayA9IGdfZGJ1c19jb25u
ZWN0aW9uX2VtaXRfc2lnbmFsKEdfREJVU19DT05ORUNUSU9OKHVzZXJEYXRhKSwKKyAgICAgICAg
MCwKKyAgICAgICAgIi9vcmcvd2Via2l0L2d0ay9XZWJFeHRlbnNpb25UZXN0IiwKKyAgICAgICAg
Im9yZy53ZWJraXQuZ3RrLldlYkV4dGVuc2lvblRlc3QiLAorICAgICAgICAiRG9jdW1lbnRMb2Fk
ZWQiLAorICAgICAgICAwLAorICAgICAgICAwKTsKKyAgICBnX2Fzc2VydChvayk7Cit9CisKK3N0
YXRpYyB2b2lkIHBhZ2VDcmVhdGVkQ2FsbGJhY2soV2ViS2l0V2ViRXh0ZW5zaW9uKiwgV2ViS2l0
V2ViUGFnZSogd2ViUGFnZSwgZ3BvaW50ZXIgdXNlckRhdGEpCit7CisgICAgZ19zaWduYWxfY29u
bmVjdCh3ZWJQYWdlLCAiZG9jdW1lbnQtbG9hZGVkIiwgR19DQUxMQkFDSyhkb2N1bWVudExvYWRl
ZENhbGxiYWNrKSwgdXNlckRhdGEpOworfQorCitzdGF0aWMgdm9pZCBtZXRob2RDYWxsQ2FsbGJh
Y2soR0RCdXNDb25uZWN0aW9uKiBjb25uZWN0aW9uLCBjb25zdCBjaGFyKiBzZW5kZXIsIGNvbnN0
IGNoYXIqIG9iamVjdFBhdGgsIGNvbnN0IGNoYXIqIGludGVyZmFjZU5hbWUsIGNvbnN0IGNoYXIq
IG1ldGhvZE5hbWUsIEdWYXJpYW50KiBwYXJhbWV0ZXJzLCBHREJ1c01ldGhvZEludm9jYXRpb24q
IGludm9jYXRpb24sIGdwb2ludGVyIHVzZXJEYXRhKQogewogICAgIGlmIChnX3N0cmNtcDAoaW50
ZXJmYWNlTmFtZSwgIm9yZy53ZWJraXQuZ3RrLldlYkV4dGVuc2lvblRlc3QiKSkKICAgICAgICAg
cmV0dXJuOwpAQCAtNzgsNiArOTYsOCBAQCBzdGF0aWMgdm9pZCBidXNBY3F1aXJlZENhbGxiYWNr
KEdEQnVzQ29ubmVjdGlvbiogY29ubmVjdGlvbiwgY29uc3QgY2hhciogbmFtZSwgZwogICAgICAg
ICAmZXJyb3Iub3V0UHRyKCkpOwogICAgIGlmICghcmVnaXN0cmF0aW9uSUQpCiAgICAgICAgIGdf
d2FybmluZygiRmFpbGVkIHRvIHJlZ2lzdGVyIG9iamVjdDogJXNcbiIsIGVycm9yLT5tZXNzYWdl
KTsKKworICAgIGdfc2lnbmFsX2Nvbm5lY3QoV0VCS0lUX1dFQl9FWFRFTlNJT04odXNlckRhdGEp
LCAicGFnZS1jcmVhdGVkIiwgR19DQUxMQkFDSyhwYWdlQ3JlYXRlZENhbGxiYWNrKSwgY29ubmVj
dGlvbik7CiB9CiAKIGV4dGVybiAiQyIgdm9pZCB3ZWJraXRfd2ViX2V4dGVuc2lvbl9pbml0aWFs
aXplKFdlYktpdFdlYkV4dGVuc2lvbiogZXh0ZW5zaW9uKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvZ3RrL1dlYktpdFdlYlBhZ2UuY3Bw
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvZ3RrL1dlYktp
dFdlYlBhZ2UuY3BwCmluZGV4IDFhY2ExN2RlZjQ3YmQ5ZWNiMmE1MDU5YjZiZGMwZDA5MGVlZjQx
YzcuLjNkZmM5OWVjYTZiNWM0MjU0N2Q1MTlmYWVmZmQ0ODA1YzVlZDUyYzAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2d0ay9XZWJLaXRX
ZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxl
L0FQSS9ndGsvV2ViS2l0V2ViUGFnZS5jcHAKQEAgLTMzLDEyICszMywyNSBAQAogdXNpbmcgbmFt
ZXNwYWNlIFdlYktpdDsKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCitlbnVtIHsKKyAgICBE
T0NVTUVOVF9MT0FERUQsCisKKyAgICBMQVNUX1NJR05BTAorfTsKKwogc3RydWN0IF9XZWJLaXRX
ZWJQYWdlUHJpdmF0ZSB7CiAgICAgV2ViUGFnZSogd2ViUGFnZTsKIH07CiAKK3N0YXRpYyBndWlu
dCBzaWduYWxzW0xBU1RfU0lHTkFMXSA9IHsgMCwgfTsKKwogV0VCS0lUX0RFRklORV9UWVBFKFdl
YktpdFdlYlBhZ2UsIHdlYmtpdF93ZWJfcGFnZSwgR19UWVBFX09CSkVDVCkKIAorc3RhdGljIHZv
aWQgZGlkRmluaXNoRG9jdW1lbnRMb2FkRm9yRnJhbWUoV0tCdW5kbGVQYWdlUmVmLCBXS0J1bmRs
ZUZyYW1lUmVmLCBXS1R5cGVSZWYqLCBjb25zdCB2b2lkICpjbGllbnRJbmZvKQoreworICAgIGdf
c2lnbmFsX2VtaXQoV0VCS0lUX1dFQl9QQUdFKGNsaWVudEluZm8pLCBzaWduYWxzW0RPQ1VNRU5U
X0xPQURFRF0sIDApOworfQorCiBzdGF0aWMgdm9pZCBkaWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJj
ZShXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tCdW5kbGVGcmFtZVJlZiBmcmFtZSwgdWludDY0X3Qg
aWRlbnRpZmllciwgV0tVUkxSZXF1ZXN0UmVmIHJlcXVlc3QsIGJvb2wgcGFnZUxvYWRJc1Byb3Zp
c2lvbmFsLCBjb25zdCB2b2lkKikKIHsKICAgICBJbW11dGFibGVEaWN0aW9uYXJ5OjpNYXBUeXBl
IG1lc3NhZ2U7CkBAIC0xMDAsNiArMTEzLDIzIEBAIHN0YXRpYyB2b2lkIGRpZEZhaWxMb2FkRm9y
UmVzb3VyY2UoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLQnVuZGxlRnJhbWVSZWYsIHVpbnQ2CiAK
IHN0YXRpYyB2b2lkIHdlYmtpdF93ZWJfcGFnZV9jbGFzc19pbml0KFdlYktpdFdlYlBhZ2VDbGFz
cyoga2xhc3MpCiB7CisgICAgLyoqCisgICAgICogV2ViS2l0V2ViUGFnZTo6ZG9jdW1lbnQtbG9h
ZGVkOgorICAgICAqIEB3ZWJfcGFnZTogdGhlICNXZWJLaXRXZWJQYWdlIG9uIHdoaWNoIHRoZSBz
aWduYWwgaXMgZW1pdHRlZAorICAgICAqCisgICAgICogVGhpcyBzaWduYWwgaXMgZW1pdHRlZCB3
aGVuIHRoZSBET00gZG9jdW1lbnQgb2YgYSAjV2ViS2l0V2ViUGFnZSBoYXMgYmVlbgorICAgICAq
IGxvYWRlZC4KKyAgICAgKgorICAgICAqIFlvdSBjYW4gd2FpdCBmb3IgdGhpcyBzaWduYWwgdG8g
Z2V0IHRoZSBET00gZG9jdW1lbnQgd2l0aAorICAgICAqIHdlYmtpdF93ZWJfcGFnZV9nZXRfZG9t
X2RvY3VtZW50KCkuCisgICAgICovCisgICAgc2lnbmFsc1tET0NVTUVOVF9MT0FERURdID0gZ19z
aWduYWxfbmV3KAorICAgICAgICAiZG9jdW1lbnQtbG9hZGVkIiwKKyAgICAgICAgR19UWVBFX0ZS
T01fQ0xBU1Moa2xhc3MpLAorICAgICAgICBHX1NJR05BTF9SVU5fTEFTVCwKKyAgICAgICAgMCwg
MCwgMCwKKyAgICAgICAgZ19jY2xvc3VyZV9tYXJzaGFsX1ZPSURfX09CSkVDVCwKKyAgICAgICAg
R19UWVBFX05PTkUsIDApOwogfQogCiBXZWJLaXRXZWJQYWdlKiB3ZWJraXRXZWJQYWdlQ3JlYXRl
KFdlYlBhZ2UqIHdlYlBhZ2UpCkBAIC0xMDcsNiArMTM3LDQzIEBAIFdlYktpdFdlYlBhZ2UqIHdl
YmtpdFdlYlBhZ2VDcmVhdGUoV2ViUGFnZSogd2ViUGFnZSkKICAgICBXZWJLaXRXZWJQYWdlKiBw
YWdlID0gV0VCS0lUX1dFQl9QQUdFKGdfb2JqZWN0X25ldyhXRUJLSVRfVFlQRV9XRUJfUEFHRSwg
TlVMTCkpOwogICAgIHBhZ2UtPnByaXYtPndlYlBhZ2UgPSB3ZWJQYWdlOwogCisgICAgV0tCdW5k
bGVQYWdlTG9hZGVyQ2xpZW50IGxvYWRlckNsaWVudCA9IHsKKyAgICAgICAga1dLQnVuZGxlUGFn
ZVJlc291cmNlTG9hZENsaWVudEN1cnJlbnRWZXJzaW9uLAorICAgICAgICBwYWdlLAorICAgICAg
ICAwLCAvLyBkaWRTdGFydFByb3Zpc2lvbmFsTG9hZEZvckZyYQorICAgICAgICAwLCAvLyBkaWRS
ZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcgorICAgICAgICAwLCAvLyBkaWRGYWlsUHJvdmlzaW9u
YWxMb2FkV2l0aEVycgorICAgICAgICAwLCAvLyBkaWRDb21taXRMb2FkRm9yRnJhbWUKKyAgICAg
ICAgZGlkRmluaXNoRG9jdW1lbnRMb2FkRm9yRnJhbWUsCisgICAgICAgIDAsIC8vIGRpZEZpbmlz
aExvYWRGb3JGcmFtZSwKKyAgICAgICAgMCwgLy8gZGlkRmFpbExvYWRXaXRoRXJyb3JGb3JGcmFt
ZQorICAgICAgICAwLCAvLyBkaWRTYW1lRG9jdW1lbnROYXZpZ2F0aW9uRm9yRnJhbWUKKyAgICAg
ICAgMCwgLy8gZGlkUmVjZWl2ZVRpdGxlRm9yRnJhbWUKKyAgICAgICAgMCwgLy8gZGlkRmlyc3RM
YXlvdXRGb3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRGaXJzdFZpc3VhbGx5Tm9uRW1wdHlMYXlv
dXRGb3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRSZW1vdmVGcmFtZUZyb21IaWVyYXJjaHkKKyAg
ICAgICAgMCwgLy8gZGlkRGlzcGxheUluc2VjdXJlQ29udGVudEZvckZyYW1lCisgICAgICAgIDAs
IC8vIGRpZFJ1bkluc2VjdXJlQ29udGVudEZvckZyYW1lCisgICAgICAgIDAsIC8vIGRpZENsZWFy
V2luZG93T2JqZWN0Rm9yRnJhbWUKKyAgICAgICAgMCwgLy8gZGlkQ2FuY2VsQ2xpZW50UmVkaXJl
Y3RGb3JGcmFtZQorICAgICAgICAwLCAvLyB3aWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0Rm9yRnJh
bWUKKyAgICAgICAgMCwgLy8gZGlkSGFuZGxlT25sb2FkRXZlbnRzRm9yRnJhbWUKKyAgICAgICAg
MCwgLy8gZGlkTGF5b3V0Rm9yRnJhbWUKKyAgICAgICAgMCwgLy8gZGlkTmV3Rmlyc3RWaXN1YWxs
eU5vbkVtcHR5TGF5b3V0CisgICAgICAgIDAsIC8vIGRpZERldGVjdFhTU0ZvckZyYW1lCisgICAg
ICAgIDAsIC8vIHNob3VsZEdvVG9CYWNrRm9yd2FyZExpc3RJdGVtCisgICAgICAgIDAsIC8vIGds
b2JhbE9iamVjdElzQXZhaWxhYmxlRm9yRnJhCisgICAgICAgIDAsIC8vIHdpbGxEaXNjb25uZWN0
RE9NV2luZG93RXh0ZW5zCisgICAgICAgIDAsIC8vIGRpZFJlY29ubmVjdERPTVdpbmRvd0V4dGVu
c2lvCisgICAgICAgIDAsIC8vIHdpbGxEZXN0cm95R2xvYmFsT2JqZWN0Rm9yRE9NCisgICAgICAg
IDAsIC8vIGRpZEZpbmlzaFByb2dyZXNzCisgICAgICAgIDAsIC8vIHNob3VsZEZvcmNlVW5pdmVy
c2FsQWNjZXNzRnJvCisgICAgICAgIDAsIC8vIGRpZFJlY2VpdmVJbnRlbnRGb3JGcmFtZV91bmF2
YWlsYWJsZQorICAgICAgICAwLCAvLyByZWdpc3RlckludGVudFNlcnZpY2VGb3JGcmFtZV91bmF2
YWlsYWJsZQorICAgICAgICAwIC8vIGRpZExheW91dAorICAgIH07CisgICAgV0tCdW5kbGVQYWdl
U2V0UGFnZUxvYWRlckNsaWVudCh0b0FQSSh3ZWJQYWdlKSwgJmxvYWRlckNsaWVudCk7CisKICAg
ICBXS0J1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQgcmVzb3VyY2VMb2FkQ2xpZW50ID0gewog
ICAgICAgICBrV0tCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50Q3VycmVudFZlcnNpb24sCiAg
ICAgICAgIHBhZ2UsCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>192433</attachid>
            <date>2013-03-11 03:22:19 -0700</date>
            <delta_ts>2013-04-12 02:52:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-110614-20130311111818.patch</filename>
            <type>text/plain</type>
            <size>9663</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1MTgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZDIyNmNjYjg3ODViMTlj
MmQ1MTNhNjY1MjNkMjg3YTgwYTEwNzFhZC4uMjE2NzUyYTg5NjY5MDA4NGM2YzdhZTc1Mjk3MjIz
Y2U5MDU2ZTQwYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEzLTAyLTIzICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtHVEtdW1dL
Ml0gQWRkIGRvY3VtZW50LWxvYWRlZCBzaWduYWwgdG8gV2ViS2l0V2ViUGFnZQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEwNjE0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgbmV3IHNpZ25hbCBk
b2N1bWVudC1sb2FkZWQgdG8gV2ViS2l0V2ViUGFnZSB0aGF0IHdpbGwgYmUgZW1pdHRlZAorICAg
ICAgICB3aGVuIHRoZSBET00gZG9jdW1lbnQgaGFzIGJlZW4gbG9hZGVkIGZvciB0aGUgbWFpbiBm
cmFtZS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1Rlc3RXZWJFeHRlbnNp
b25zLmNwcDoKKyAgICAgICAgKGRvY3VtZW50TG9hZGVkQ2FsbGJhY2spOgorICAgICAgICAodGVz
dERvY3VtZW50TG9hZGVkU2lnbmFsKToKKyAgICAgICAgKGJlZm9yZUFsbCk6IEFkZCB0ZXN0IGZv
ciBkb2N1bWVudC1sb2FkZWQgc2lnbmFsLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL3Rl
c3RzL1dlYkV4dGVuc2lvblRlc3QuY3BwOgorICAgICAgICAoZG9jdW1lbnRMb2FkZWRDYWxsYmFj
ayk6CisgICAgICAgIChwYWdlQ3JlYXRlZENhbGxiYWNrKToKKyAgICAgICAgKG1ldGhvZENhbGxD
YWxsYmFjayk6IEFkZCBuZXcgRC1CdXMgc2lnbmFsIERvY3VtZW50TG9hZGVkIGluIG9yZGVyIHRv
CisgICAgICAgIHRlc3QgZG9jdW1lbnQtbG9hZGVkIHNpZ25hbC4KKyAgICAgICAgKiBXZWJQcm9j
ZXNzL0luamVjdGVkQnVuZGxlL0FQSS9ndGsvV2ViS2l0V2ViUGFnZS5jcHA6CisgICAgICAgICh3
ZWJraXRfd2ViX3BhZ2VfY2xhc3NfaW5pdCk6CisgICAgICAgICh3ZWJraXRXZWJQYWdlQ3JlYXRl
KTogQWRkIGRvY3VtZW50LWxvYWRlZCBzaWduYWwgYW5kIGVtaXQgaXQgd2hlbgorICAgICAgICBk
aWRGaW5pc2hEb2N1bWVudExvYWRGb3JGcmFtZSBpcyBjYWxsZWQuCisKIDIwMTMtMDMtMDcgIEFu
ZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgogCiAgICAgICAgIFJlc2l6aW5nIENhcHB1
Y2Npbm8gaXMgdmVyeSBsYWdneSBvbiBXZWJLaXQgc2luY2UgU2FmYXJpIDUuMQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvVGVzdFdlYkV4dGVuc2lv
bnMuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvVGVzdFdlYkV4
dGVuc2lvbnMuY3BwCmluZGV4IDBkY2Y1NjkyZDZiMTY4OTJkMGY2NzMyMmI5NGE1NTJmMTU4NDE4
MGYuLmYyOWU5YmU3MTRlOGE5ZDlmMWUyYmE4ZTYwMjBjMjBkYTFlOWQ2MDYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1Rlc3RXZWJFeHRlbnNpb25z
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy9UZXN0V2Vi
RXh0ZW5zaW9ucy5jcHAKQEAgLTQ1LDYgKzQ1LDMzIEBAIHN0YXRpYyB2b2lkIHRlc3RXZWJFeHRl
bnNpb24oV2ViVmlld1Rlc3QqIHRlc3QsIGdjb25zdHBvaW50ZXIpCiAgICAgZ19hc3NlcnRfY21w
c3RyKHRpdGxlLCA9PSwgIldlYktpdEdUSysgV2ViIEV4dGVuc2lvbnMgVGVzdCIpOwogfQogCitz
dGF0aWMgdm9pZCBkb2N1bWVudExvYWRlZENhbGxiYWNrKEdEQnVzQ29ubmVjdGlvbiosIGNvbnN0
IGNoYXIqLCBjb25zdCBjaGFyKiwgY29uc3QgY2hhciosIGNvbnN0IGNoYXIqLCBHVmFyaWFudCos
IFdlYlZpZXdUZXN0KiB0ZXN0KQoreworICAgIGdfbWFpbl9sb29wX3F1aXQodGVzdC0+bV9tYWlu
TG9vcCk7Cit9CisKK3N0YXRpYyB2b2lkIHRlc3REb2N1bWVudExvYWRlZFNpZ25hbChXZWJWaWV3
VGVzdCogdGVzdCwgZ2NvbnN0cG9pbnRlcikKK3sKKyAgICBHUmVmUHRyPEdEQnVzUHJveHk+IHBy
b3h5ID0gYWRvcHRHUmVmKGJ1cy0+Y3JlYXRlUHJveHkoIm9yZy53ZWJraXQuZ3RrLldlYkV4dGVu
c2lvblRlc3QiLAorICAgICAgICAiL29yZy93ZWJraXQvZ3RrL1dlYkV4dGVuc2lvblRlc3QiLCAi
b3JnLndlYmtpdC5ndGsuV2ViRXh0ZW5zaW9uVGVzdCIsIHRlc3QtPm1fbWFpbkxvb3ApKTsKKyAg
ICBHREJ1c0Nvbm5lY3Rpb24qIGNvbm5lY3Rpb24gPSBnX2RidXNfcHJveHlfZ2V0X2Nvbm5lY3Rp
b24ocHJveHkuZ2V0KCkpOworICAgIGd1aW50IGlkID0gZ19kYnVzX2Nvbm5lY3Rpb25fc2lnbmFs
X3N1YnNjcmliZShjb25uZWN0aW9uLAorICAgICAgICAwLAorICAgICAgICAib3JnLndlYmtpdC5n
dGsuV2ViRXh0ZW5zaW9uVGVzdCIsCisgICAgICAgICJEb2N1bWVudExvYWRlZCIsCisgICAgICAg
ICIvb3JnL3dlYmtpdC9ndGsvV2ViRXh0ZW5zaW9uVGVzdCIsCisgICAgICAgIDAsCisgICAgICAg
IEdfREJVU19TSUdOQUxfRkxBR1NfTk9ORSwKKyAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxHREJ1
c1NpZ25hbENhbGxiYWNrPihkb2N1bWVudExvYWRlZENhbGxiYWNrKSwKKyAgICAgICAgdGVzdCwK
KyAgICAgICAgMCk7CisgICAgZ19hc3NlcnQoaWQpOworCisgICAgdGVzdC0+bG9hZEh0bWwoIjxo
dG1sPjxoZWFkPjx0aXRsZT5XZWJLaXRHVEsrIFdlYiBFeHRlbnNpb25zIFRlc3Q8L3RpdGxlPjwv
aGVhZD48Ym9keT48L2JvZHk+PC9odG1sPiIsIDApOworICAgIGdfbWFpbl9sb29wX3J1bih0ZXN0
LT5tX21haW5Mb29wKTsKKyAgICBnX2RidXNfY29ubmVjdGlvbl9zaWduYWxfdW5zdWJzY3JpYmUo
Y29ubmVjdGlvbiwgaWQpOworfQorCiB2b2lkIGJlZm9yZUFsbCgpCiB7CiAgICAgd2Via2l0X3dl
Yl9jb250ZXh0X3NldF93ZWJfZXh0ZW5zaW9uc19kaXJlY3Rvcnkod2Via2l0X3dlYl9jb250ZXh0
X2dldF9kZWZhdWx0KCksIFdFQktJVF9URVNUX1dFQl9FWFRFTlNJT05TX0RJUik7CkBAIC01Myw2
ICs4MCw3IEBAIHZvaWQgYmVmb3JlQWxsKCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgV2ViVmll
d1Rlc3Q6OmFkZCgiV2ViS2l0V2ViRXh0ZW5zaW9uIiwgImRvbS1kb2N1bWVudC10aXRsZSIsIHRl
c3RXZWJFeHRlbnNpb24pOworICAgIFdlYlZpZXdUZXN0OjphZGQoIldlYktpdFdlYkV4dGVuc2lv
biIsICJkb2N1bWVudC1sb2FkZWQtc2lnbmFsIiwgdGVzdERvY3VtZW50TG9hZGVkU2lnbmFsKTsK
IH0KIAogdm9pZCBhZnRlckFsbCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL2d0ay90ZXN0cy9XZWJFeHRlbnNpb25UZXN0LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1dlYkV4dGVuc2lvblRlc3QuY3BwCmluZGV4IGVhZjY4YzU5
YWM3YzYwNWMyNWIwOTdhYWIzMzY4MTIyNWNlMjJjNDQuLmFhNjYwNDJjOGM4ZDEzMjYwZmVkYjlk
ZDMzODA0ODVmNjA5ZDM5OWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvZ3RrL3Rlc3RzL1dlYkV4dGVuc2lvblRlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1dlYkV4dGVuc2lvblRlc3QuY3BwCkBAIC0zMCwxMCArMzAs
MjggQEAgc3RhdGljIGNvbnN0IGNoYXIgaW50cm9zcGVjdGlvblhNTFtdID0KICAgICAiICAgPGFy
ZyB0eXBlPSd0JyBuYW1lPSdwYWdlSUQnIGRpcmVjdGlvbj0naW4nLz4iCiAgICAgIiAgIDxhcmcg
dHlwZT0ncycgbmFtZT0ndGl0bGUnIGRpcmVjdGlvbj0nb3V0Jy8+IgogICAgICIgIDwvbWV0aG9k
PiIKKyAgICAiICA8c2lnbmFsIG5hbWU9J0RvY3VtZW50TG9hZGVkJy8+IgogICAgICIgPC9pbnRl
cmZhY2U+IgogICAgICI8L25vZGU+IjsKIAotc3RhdGljIHZvaWQgbWV0aG9kQ2FsbENhbGxiYWNr
KEdEQnVzQ29ubmVjdGlvbiosIGNvbnN0IGNoYXIqIHNlbmRlciwgY29uc3QgY2hhciogb2JqZWN0
UGF0aCwgY29uc3QgY2hhciogaW50ZXJmYWNlTmFtZSwgY29uc3QgY2hhciogbWV0aG9kTmFtZSwg
R1ZhcmlhbnQqIHBhcmFtZXRlcnMsIEdEQnVzTWV0aG9kSW52b2NhdGlvbiogaW52b2NhdGlvbiwg
Z3BvaW50ZXIgdXNlckRhdGEpCitzdGF0aWMgdm9pZCBkb2N1bWVudExvYWRlZENhbGxiYWNrKFdl
YktpdFdlYlBhZ2UqLCBncG9pbnRlciB1c2VyRGF0YSkKK3sKKyAgICBib29sIG9rID0gZ19kYnVz
X2Nvbm5lY3Rpb25fZW1pdF9zaWduYWwoR19EQlVTX0NPTk5FQ1RJT04odXNlckRhdGEpLAorICAg
ICAgICAwLAorICAgICAgICAiL29yZy93ZWJraXQvZ3RrL1dlYkV4dGVuc2lvblRlc3QiLAorICAg
ICAgICAib3JnLndlYmtpdC5ndGsuV2ViRXh0ZW5zaW9uVGVzdCIsCisgICAgICAgICJEb2N1bWVu
dExvYWRlZCIsCisgICAgICAgIDAsCisgICAgICAgIDApOworICAgIGdfYXNzZXJ0KG9rKTsKK30K
Kworc3RhdGljIHZvaWQgcGFnZUNyZWF0ZWRDYWxsYmFjayhXZWJLaXRXZWJFeHRlbnNpb24qLCBX
ZWJLaXRXZWJQYWdlKiB3ZWJQYWdlLCBncG9pbnRlciB1c2VyRGF0YSkKK3sKKyAgICBnX3NpZ25h
bF9jb25uZWN0KHdlYlBhZ2UsICJkb2N1bWVudC1sb2FkZWQiLCBHX0NBTExCQUNLKGRvY3VtZW50
TG9hZGVkQ2FsbGJhY2spLCB1c2VyRGF0YSk7Cit9CisKK3N0YXRpYyB2b2lkIG1ldGhvZENhbGxD
YWxsYmFjayhHREJ1c0Nvbm5lY3Rpb24qIGNvbm5lY3Rpb24sIGNvbnN0IGNoYXIqIHNlbmRlciwg
Y29uc3QgY2hhciogb2JqZWN0UGF0aCwgY29uc3QgY2hhciogaW50ZXJmYWNlTmFtZSwgY29uc3Qg
Y2hhciogbWV0aG9kTmFtZSwgR1ZhcmlhbnQqIHBhcmFtZXRlcnMsIEdEQnVzTWV0aG9kSW52b2Nh
dGlvbiogaW52b2NhdGlvbiwgZ3BvaW50ZXIgdXNlckRhdGEpCiB7CiAgICAgaWYgKGdfc3RyY21w
MChpbnRlcmZhY2VOYW1lLCAib3JnLndlYmtpdC5ndGsuV2ViRXh0ZW5zaW9uVGVzdCIpKQogICAg
ICAgICByZXR1cm47CkBAIC03OCw2ICs5Niw4IEBAIHN0YXRpYyB2b2lkIGJ1c0FjcXVpcmVkQ2Fs
bGJhY2soR0RCdXNDb25uZWN0aW9uKiBjb25uZWN0aW9uLCBjb25zdCBjaGFyKiBuYW1lLCBnCiAg
ICAgICAgICZlcnJvci5vdXRQdHIoKSk7CiAgICAgaWYgKCFyZWdpc3RyYXRpb25JRCkKICAgICAg
ICAgZ193YXJuaW5nKCJGYWlsZWQgdG8gcmVnaXN0ZXIgb2JqZWN0OiAlc1xuIiwgZXJyb3ItPm1l
c3NhZ2UpOworCisgICAgZ19zaWduYWxfY29ubmVjdChXRUJLSVRfV0VCX0VYVEVOU0lPTih1c2Vy
RGF0YSksICJwYWdlLWNyZWF0ZWQiLCBHX0NBTExCQUNLKHBhZ2VDcmVhdGVkQ2FsbGJhY2spLCBj
b25uZWN0aW9uKTsKIH0KIAogZXh0ZXJuICJDIiB2b2lkIHdlYmtpdF93ZWJfZXh0ZW5zaW9uX2lu
aXRpYWxpemUoV2ViS2l0V2ViRXh0ZW5zaW9uKiBleHRlbnNpb24pCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9ndGsvV2ViS2l0V2ViUGFn
ZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9ndGsv
V2ViS2l0V2ViUGFnZS5jcHAKaW5kZXggMWFjYTE3ZGVmNDdiZDllY2IyYTUwNTliNmJkYzBkMDkw
ZWVmNDFjNy4uNGZiZmM0NWJmM2Q2ZGM3ZGJmOTc2ZmQyYzY3MzZjYTMwNDdjZjZlMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvZ3RrL1dl
YktpdFdlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvQVBJL2d0ay9XZWJLaXRXZWJQYWdlLmNwcApAQCAtMjMsNiArMjMsNyBAQAogI2luY2x1
ZGUgIkltbXV0YWJsZURpY3Rpb25hcnkuaCIKICNpbmNsdWRlICJJbmplY3RlZEJ1bmRsZS5oIgog
I2luY2x1ZGUgIldLQnVuZGxlQVBJQ2FzdC5oIgorI2luY2x1ZGUgIldLQnVuZGxlRnJhbWUuaCIK
ICNpbmNsdWRlICJXZWJGcmFtZS5oIgogI2luY2x1ZGUgIldlYktpdERPTURvY3VtZW50UHJpdmF0
ZS5oIgogI2luY2x1ZGUgIldlYktpdFByaXZhdGUuaCIKQEAgLTMzLDEyICszNCwyOCBAQAogdXNp
bmcgbmFtZXNwYWNlIFdlYktpdDsKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCitlbnVtIHsK
KyAgICBET0NVTUVOVF9MT0FERUQsCisKKyAgICBMQVNUX1NJR05BTAorfTsKKwogc3RydWN0IF9X
ZWJLaXRXZWJQYWdlUHJpdmF0ZSB7CiAgICAgV2ViUGFnZSogd2ViUGFnZTsKIH07CiAKK3N0YXRp
YyBndWludCBzaWduYWxzW0xBU1RfU0lHTkFMXSA9IHsgMCwgfTsKKwogV0VCS0lUX0RFRklORV9U
WVBFKFdlYktpdFdlYlBhZ2UsIHdlYmtpdF93ZWJfcGFnZSwgR19UWVBFX09CSkVDVCkKIAorc3Rh
dGljIHZvaWQgZGlkRmluaXNoRG9jdW1lbnRMb2FkRm9yRnJhbWUoV0tCdW5kbGVQYWdlUmVmLCBX
S0J1bmRsZUZyYW1lUmVmIGZyYW1lLCBXS1R5cGVSZWYqLCBjb25zdCB2b2lkICpjbGllbnRJbmZv
KQoreworICAgIGlmICghV0tCdW5kbGVGcmFtZUlzTWFpbkZyYW1lKGZyYW1lKSkKKyAgICAgICAg
cmV0dXJuOworCisgICAgZ19zaWduYWxfZW1pdChXRUJLSVRfV0VCX1BBR0UoY2xpZW50SW5mbyks
IHNpZ25hbHNbRE9DVU1FTlRfTE9BREVEXSwgMCk7Cit9CisKIHN0YXRpYyB2b2lkIGRpZEluaXRp
YXRlTG9hZEZvclJlc291cmNlKFdLQnVuZGxlUGFnZVJlZiBwYWdlLCBXS0J1bmRsZUZyYW1lUmVm
IGZyYW1lLCB1aW50NjRfdCBpZGVudGlmaWVyLCBXS1VSTFJlcXVlc3RSZWYgcmVxdWVzdCwgYm9v
bCBwYWdlTG9hZElzUHJvdmlzaW9uYWwsIGNvbnN0IHZvaWQqKQogewogICAgIEltbXV0YWJsZURp
Y3Rpb25hcnk6Ok1hcFR5cGUgbWVzc2FnZTsKQEAgLTEwMCw2ICsxMTcsMjMgQEAgc3RhdGljIHZv
aWQgZGlkRmFpbExvYWRGb3JSZXNvdXJjZShXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tCdW5kbGVG
cmFtZVJlZiwgdWludDYKIAogc3RhdGljIHZvaWQgd2Via2l0X3dlYl9wYWdlX2NsYXNzX2luaXQo
V2ViS2l0V2ViUGFnZUNsYXNzKiBrbGFzcykKIHsKKyAgICAvKioKKyAgICAgKiBXZWJLaXRXZWJQ
YWdlOjpkb2N1bWVudC1sb2FkZWQ6CisgICAgICogQHdlYl9wYWdlOiB0aGUgI1dlYktpdFdlYlBh
Z2Ugb24gd2hpY2ggdGhlIHNpZ25hbCBpcyBlbWl0dGVkCisgICAgICoKKyAgICAgKiBUaGlzIHNp
Z25hbCBpcyBlbWl0dGVkIHdoZW4gdGhlIERPTSBkb2N1bWVudCBvZiBhICNXZWJLaXRXZWJQYWdl
IGhhcyBiZWVuCisgICAgICogbG9hZGVkLgorICAgICAqCisgICAgICogWW91IGNhbiB3YWl0IGZv
ciB0aGlzIHNpZ25hbCB0byBnZXQgdGhlIERPTSBkb2N1bWVudCB3aXRoCisgICAgICogd2Via2l0
X3dlYl9wYWdlX2dldF9kb21fZG9jdW1lbnQoKS4KKyAgICAgKi8KKyAgICBzaWduYWxzW0RPQ1VN
RU5UX0xPQURFRF0gPSBnX3NpZ25hbF9uZXcoCisgICAgICAgICJkb2N1bWVudC1sb2FkZWQiLAor
ICAgICAgICBHX1RZUEVfRlJPTV9DTEFTUyhrbGFzcyksCisgICAgICAgIEdfU0lHTkFMX1JVTl9M
QVNULAorICAgICAgICAwLCAwLCAwLAorICAgICAgICBnX2NjbG9zdXJlX21hcnNoYWxfVk9JRF9f
T0JKRUNULAorICAgICAgICBHX1RZUEVfTk9ORSwgMCk7CiB9CiAKIFdlYktpdFdlYlBhZ2UqIHdl
YmtpdFdlYlBhZ2VDcmVhdGUoV2ViUGFnZSogd2ViUGFnZSkKQEAgLTEwNyw2ICsxNDEsNDMgQEAg
V2ViS2l0V2ViUGFnZSogd2Via2l0V2ViUGFnZUNyZWF0ZShXZWJQYWdlKiB3ZWJQYWdlKQogICAg
IFdlYktpdFdlYlBhZ2UqIHBhZ2UgPSBXRUJLSVRfV0VCX1BBR0UoZ19vYmplY3RfbmV3KFdFQktJ
VF9UWVBFX1dFQl9QQUdFLCBOVUxMKSk7CiAgICAgcGFnZS0+cHJpdi0+d2ViUGFnZSA9IHdlYlBh
Z2U7CiAKKyAgICBXS0J1bmRsZVBhZ2VMb2FkZXJDbGllbnQgbG9hZGVyQ2xpZW50ID0geworICAg
ICAgICBrV0tCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50Q3VycmVudFZlcnNpb24sCisgICAg
ICAgIHBhZ2UsCisgICAgICAgIDAsIC8vIGRpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkRm9yRnJhCisg
ICAgICAgIDAsIC8vIGRpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByCisgICAgICAgIDAsIC8v
IGRpZEZhaWxQcm92aXNpb25hbExvYWRXaXRoRXJyCisgICAgICAgIDAsIC8vIGRpZENvbW1pdExv
YWRGb3JGcmFtZQorICAgICAgICBkaWRGaW5pc2hEb2N1bWVudExvYWRGb3JGcmFtZSwKKyAgICAg
ICAgMCwgLy8gZGlkRmluaXNoTG9hZEZvckZyYW1lLAorICAgICAgICAwLCAvLyBkaWRGYWlsTG9h
ZFdpdGhFcnJvckZvckZyYW1lCisgICAgICAgIDAsIC8vIGRpZFNhbWVEb2N1bWVudE5hdmlnYXRp
b25Gb3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRSZWNlaXZlVGl0bGVGb3JGcmFtZQorICAgICAg
ICAwLCAvLyBkaWRGaXJzdExheW91dEZvckZyYW1lCisgICAgICAgIDAsIC8vIGRpZEZpcnN0Vmlz
dWFsbHlOb25FbXB0eUxheW91dEZvckZyYW1lCisgICAgICAgIDAsIC8vIGRpZFJlbW92ZUZyYW1l
RnJvbUhpZXJhcmNoeQorICAgICAgICAwLCAvLyBkaWREaXNwbGF5SW5zZWN1cmVDb250ZW50Rm9y
RnJhbWUKKyAgICAgICAgMCwgLy8gZGlkUnVuSW5zZWN1cmVDb250ZW50Rm9yRnJhbWUKKyAgICAg
ICAgMCwgLy8gZGlkQ2xlYXJXaW5kb3dPYmplY3RGb3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRD
YW5jZWxDbGllbnRSZWRpcmVjdEZvckZyYW1lCisgICAgICAgIDAsIC8vIHdpbGxQZXJmb3JtQ2xp
ZW50UmVkaXJlY3RGb3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRIYW5kbGVPbmxvYWRFdmVudHNG
b3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRMYXlvdXRGb3JGcmFtZQorICAgICAgICAwLCAvLyBk
aWROZXdGaXJzdFZpc3VhbGx5Tm9uRW1wdHlMYXlvdXQKKyAgICAgICAgMCwgLy8gZGlkRGV0ZWN0
WFNTRm9yRnJhbWUKKyAgICAgICAgMCwgLy8gc2hvdWxkR29Ub0JhY2tGb3J3YXJkTGlzdEl0ZW0K
KyAgICAgICAgMCwgLy8gZ2xvYmFsT2JqZWN0SXNBdmFpbGFibGVGb3JGcmEKKyAgICAgICAgMCwg
Ly8gd2lsbERpc2Nvbm5lY3RET01XaW5kb3dFeHRlbnMKKyAgICAgICAgMCwgLy8gZGlkUmVjb25u
ZWN0RE9NV2luZG93RXh0ZW5zaW8KKyAgICAgICAgMCwgLy8gd2lsbERlc3Ryb3lHbG9iYWxPYmpl
Y3RGb3JET00KKyAgICAgICAgMCwgLy8gZGlkRmluaXNoUHJvZ3Jlc3MKKyAgICAgICAgMCwgLy8g
c2hvdWxkRm9yY2VVbml2ZXJzYWxBY2Nlc3NGcm8KKyAgICAgICAgMCwgLy8gZGlkUmVjZWl2ZUlu
dGVudEZvckZyYW1lX3VuYXZhaWxhYmxlCisgICAgICAgIDAsIC8vIHJlZ2lzdGVySW50ZW50U2Vy
dmljZUZvckZyYW1lX3VuYXZhaWxhYmxlCisgICAgICAgIDAgLy8gZGlkTGF5b3V0CisgICAgfTsK
KyAgICBXS0J1bmRsZVBhZ2VTZXRQYWdlTG9hZGVyQ2xpZW50KHRvQVBJKHdlYlBhZ2UpLCAmbG9h
ZGVyQ2xpZW50KTsKKwogICAgIFdLQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudCByZXNvdXJj
ZUxvYWRDbGllbnQgPSB7CiAgICAgICAgIGtXS0J1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnRD
dXJyZW50VmVyc2lvbiwKICAgICAgICAgcGFnZSwK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>197737</attachid>
            <date>2013-04-12 02:52:16 -0700</date>
            <delta_ts>2013-04-12 09:32:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-110614-20130412115154.patch</filename>
            <type>text/plain</type>
            <size>9815</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ4MjY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYTI3YzMwZTMwNzFlY2Fi
MTczMjA3NzcwNzkxZDMxNTNkMDYzNTg5YS4uNzBkNzEyNDZmYTAwMjk2ODlmOWFhMzMxOGNlNTY4
NjQ5MGYwNWNhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEzLTA0LTEyICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtHVEtdW1dL
Ml0gQWRkIGRvY3VtZW50LWxvYWRlZCBzaWduYWwgdG8gV2ViS2l0V2ViUGFnZQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEwNjE0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgbmV3IHNpZ25hbCBk
b2N1bWVudC1sb2FkZWQgdG8gV2ViS2l0V2ViUGFnZSB0aGF0IHdpbGwgYmUgZW1pdHRlZAorICAg
ICAgICB3aGVuIHRoZSBET00gZG9jdW1lbnQgaGFzIGJlZW4gbG9hZGVkIGZvciB0aGUgbWFpbiBm
cmFtZS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1Rlc3RXZWJFeHRlbnNp
b25zLmNwcDoKKyAgICAgICAgKGRvY3VtZW50TG9hZGVkQ2FsbGJhY2spOgorICAgICAgICAodGVz
dERvY3VtZW50TG9hZGVkU2lnbmFsKToKKyAgICAgICAgKGJlZm9yZUFsbCk6IEFkZCB0ZXN0IGZv
ciBkb2N1bWVudC1sb2FkZWQgc2lnbmFsLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL3Rl
c3RzL1dlYkV4dGVuc2lvblRlc3QuY3BwOgorICAgICAgICAoZG9jdW1lbnRMb2FkZWRDYWxsYmFj
ayk6CisgICAgICAgIChwYWdlQ3JlYXRlZENhbGxiYWNrKToKKyAgICAgICAgKG1ldGhvZENhbGxD
YWxsYmFjayk6IEFkZCBuZXcgRC1CdXMgc2lnbmFsIERvY3VtZW50TG9hZGVkIGluIG9yZGVyIHRv
CisgICAgICAgIHRlc3QgZG9jdW1lbnQtbG9hZGVkIHNpZ25hbC4KKyAgICAgICAgKiBXZWJQcm9j
ZXNzL0luamVjdGVkQnVuZGxlL0FQSS9ndGsvV2ViS2l0V2ViUGFnZS5jcHA6CisgICAgICAgICh3
ZWJraXRfd2ViX3BhZ2VfY2xhc3NfaW5pdCk6CisgICAgICAgICh3ZWJraXRXZWJQYWdlQ3JlYXRl
KTogQWRkIGRvY3VtZW50LWxvYWRlZCBzaWduYWwgYW5kIGVtaXQgaXQgd2hlbgorICAgICAgICBk
aWRGaW5pc2hEb2N1bWVudExvYWRGb3JGcmFtZSBpcyBjYWxsZWQuCisKIDIwMTMtMDQtMTEgIFRp
bSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lP
TiAocjE0Njk1Nik6IEFTU0VSVGlvbiBmYWlsdXJlOiBXZWJLaXQ6OldlYlByb2Nlc3M6OnBhZ2VX
aWxsTGVhdmVXaW5kb3cKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Z3RrL3Rlc3RzL1Rlc3RXZWJFeHRlbnNpb25zLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvZ3RrL3Rlc3RzL1Rlc3RXZWJFeHRlbnNpb25zLmNwcAppbmRleCAwZGNmNTY5MmQ2YjE2
ODkyZDBmNjczMjJiOTRhNTUyZjE1ODQxODBmLi5mMjllOWJlNzE0ZThhOWQ5ZjFlMmJhOGU2MDIw
YzIwZGExZTlkNjA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0
ay90ZXN0cy9UZXN0V2ViRXh0ZW5zaW9ucy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9ndGsvdGVzdHMvVGVzdFdlYkV4dGVuc2lvbnMuY3BwCkBAIC00NSw2ICs0NSwzMyBA
QCBzdGF0aWMgdm9pZCB0ZXN0V2ViRXh0ZW5zaW9uKFdlYlZpZXdUZXN0KiB0ZXN0LCBnY29uc3Rw
b2ludGVyKQogICAgIGdfYXNzZXJ0X2NtcHN0cih0aXRsZSwgPT0sICJXZWJLaXRHVEsrIFdlYiBF
eHRlbnNpb25zIFRlc3QiKTsKIH0KIAorc3RhdGljIHZvaWQgZG9jdW1lbnRMb2FkZWRDYWxsYmFj
ayhHREJ1c0Nvbm5lY3Rpb24qLCBjb25zdCBjaGFyKiwgY29uc3QgY2hhciosIGNvbnN0IGNoYXIq
LCBjb25zdCBjaGFyKiwgR1ZhcmlhbnQqLCBXZWJWaWV3VGVzdCogdGVzdCkKK3sKKyAgICBnX21h
aW5fbG9vcF9xdWl0KHRlc3QtPm1fbWFpbkxvb3ApOworfQorCitzdGF0aWMgdm9pZCB0ZXN0RG9j
dW1lbnRMb2FkZWRTaWduYWwoV2ViVmlld1Rlc3QqIHRlc3QsIGdjb25zdHBvaW50ZXIpCit7Cisg
ICAgR1JlZlB0cjxHREJ1c1Byb3h5PiBwcm94eSA9IGFkb3B0R1JlZihidXMtPmNyZWF0ZVByb3h5
KCJvcmcud2Via2l0Lmd0ay5XZWJFeHRlbnNpb25UZXN0IiwKKyAgICAgICAgIi9vcmcvd2Via2l0
L2d0ay9XZWJFeHRlbnNpb25UZXN0IiwgIm9yZy53ZWJraXQuZ3RrLldlYkV4dGVuc2lvblRlc3Qi
LCB0ZXN0LT5tX21haW5Mb29wKSk7CisgICAgR0RCdXNDb25uZWN0aW9uKiBjb25uZWN0aW9uID0g
Z19kYnVzX3Byb3h5X2dldF9jb25uZWN0aW9uKHByb3h5LmdldCgpKTsKKyAgICBndWludCBpZCA9
IGdfZGJ1c19jb25uZWN0aW9uX3NpZ25hbF9zdWJzY3JpYmUoY29ubmVjdGlvbiwKKyAgICAgICAg
MCwKKyAgICAgICAgIm9yZy53ZWJraXQuZ3RrLldlYkV4dGVuc2lvblRlc3QiLAorICAgICAgICAi
RG9jdW1lbnRMb2FkZWQiLAorICAgICAgICAiL29yZy93ZWJraXQvZ3RrL1dlYkV4dGVuc2lvblRl
c3QiLAorICAgICAgICAwLAorICAgICAgICBHX0RCVVNfU0lHTkFMX0ZMQUdTX05PTkUsCisgICAg
ICAgIHJlaW50ZXJwcmV0X2Nhc3Q8R0RCdXNTaWduYWxDYWxsYmFjaz4oZG9jdW1lbnRMb2FkZWRD
YWxsYmFjayksCisgICAgICAgIHRlc3QsCisgICAgICAgIDApOworICAgIGdfYXNzZXJ0KGlkKTsK
KworICAgIHRlc3QtPmxvYWRIdG1sKCI8aHRtbD48aGVhZD48dGl0bGU+V2ViS2l0R1RLKyBXZWIg
RXh0ZW5zaW9ucyBUZXN0PC90aXRsZT48L2hlYWQ+PGJvZHk+PC9ib2R5PjwvaHRtbD4iLCAwKTsK
KyAgICBnX21haW5fbG9vcF9ydW4odGVzdC0+bV9tYWluTG9vcCk7CisgICAgZ19kYnVzX2Nvbm5l
Y3Rpb25fc2lnbmFsX3Vuc3Vic2NyaWJlKGNvbm5lY3Rpb24sIGlkKTsKK30KKwogdm9pZCBiZWZv
cmVBbGwoKQogewogICAgIHdlYmtpdF93ZWJfY29udGV4dF9zZXRfd2ViX2V4dGVuc2lvbnNfZGly
ZWN0b3J5KHdlYmtpdF93ZWJfY29udGV4dF9nZXRfZGVmYXVsdCgpLCBXRUJLSVRfVEVTVF9XRUJf
RVhURU5TSU9OU19ESVIpOwpAQCAtNTMsNiArODAsNyBAQCB2b2lkIGJlZm9yZUFsbCgpCiAgICAg
ICAgIHJldHVybjsKIAogICAgIFdlYlZpZXdUZXN0OjphZGQoIldlYktpdFdlYkV4dGVuc2lvbiIs
ICJkb20tZG9jdW1lbnQtdGl0bGUiLCB0ZXN0V2ViRXh0ZW5zaW9uKTsKKyAgICBXZWJWaWV3VGVz
dDo6YWRkKCJXZWJLaXRXZWJFeHRlbnNpb24iLCAiZG9jdW1lbnQtbG9hZGVkLXNpZ25hbCIsIHRl
c3REb2N1bWVudExvYWRlZFNpZ25hbCk7CiB9CiAKIHZvaWQgYWZ0ZXJBbGwoKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvV2ViRXh0ZW5zaW9uVGVz
dC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy9XZWJFeHRlbnNp
b25UZXN0LmNwcAppbmRleCBlYWY2OGM1OWFjN2M2MDVjMjViMDk3YWFiMzM2ODEyMjVjZTIyYzQ0
Li5hYTY2MDQyYzhjOGQxMzI2MGZlZGI5ZGQzMzgwNDg1ZjYwOWQzOTllIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy9XZWJFeHRlbnNpb25UZXN0LmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy9XZWJFeHRlbnNp
b25UZXN0LmNwcApAQCAtMzAsMTAgKzMwLDI4IEBAIHN0YXRpYyBjb25zdCBjaGFyIGludHJvc3Bl
Y3Rpb25YTUxbXSA9CiAgICAgIiAgIDxhcmcgdHlwZT0ndCcgbmFtZT0ncGFnZUlEJyBkaXJlY3Rp
b249J2luJy8+IgogICAgICIgICA8YXJnIHR5cGU9J3MnIG5hbWU9J3RpdGxlJyBkaXJlY3Rpb249
J291dCcvPiIKICAgICAiICA8L21ldGhvZD4iCisgICAgIiAgPHNpZ25hbCBuYW1lPSdEb2N1bWVu
dExvYWRlZCcvPiIKICAgICAiIDwvaW50ZXJmYWNlPiIKICAgICAiPC9ub2RlPiI7CiAKLXN0YXRp
YyB2b2lkIG1ldGhvZENhbGxDYWxsYmFjayhHREJ1c0Nvbm5lY3Rpb24qLCBjb25zdCBjaGFyKiBz
ZW5kZXIsIGNvbnN0IGNoYXIqIG9iamVjdFBhdGgsIGNvbnN0IGNoYXIqIGludGVyZmFjZU5hbWUs
IGNvbnN0IGNoYXIqIG1ldGhvZE5hbWUsIEdWYXJpYW50KiBwYXJhbWV0ZXJzLCBHREJ1c01ldGhv
ZEludm9jYXRpb24qIGludm9jYXRpb24sIGdwb2ludGVyIHVzZXJEYXRhKQorc3RhdGljIHZvaWQg
ZG9jdW1lbnRMb2FkZWRDYWxsYmFjayhXZWJLaXRXZWJQYWdlKiwgZ3BvaW50ZXIgdXNlckRhdGEp
Cit7CisgICAgYm9vbCBvayA9IGdfZGJ1c19jb25uZWN0aW9uX2VtaXRfc2lnbmFsKEdfREJVU19D
T05ORUNUSU9OKHVzZXJEYXRhKSwKKyAgICAgICAgMCwKKyAgICAgICAgIi9vcmcvd2Via2l0L2d0
ay9XZWJFeHRlbnNpb25UZXN0IiwKKyAgICAgICAgIm9yZy53ZWJraXQuZ3RrLldlYkV4dGVuc2lv
blRlc3QiLAorICAgICAgICAiRG9jdW1lbnRMb2FkZWQiLAorICAgICAgICAwLAorICAgICAgICAw
KTsKKyAgICBnX2Fzc2VydChvayk7Cit9CisKK3N0YXRpYyB2b2lkIHBhZ2VDcmVhdGVkQ2FsbGJh
Y2soV2ViS2l0V2ViRXh0ZW5zaW9uKiwgV2ViS2l0V2ViUGFnZSogd2ViUGFnZSwgZ3BvaW50ZXIg
dXNlckRhdGEpCit7CisgICAgZ19zaWduYWxfY29ubmVjdCh3ZWJQYWdlLCAiZG9jdW1lbnQtbG9h
ZGVkIiwgR19DQUxMQkFDSyhkb2N1bWVudExvYWRlZENhbGxiYWNrKSwgdXNlckRhdGEpOworfQor
CitzdGF0aWMgdm9pZCBtZXRob2RDYWxsQ2FsbGJhY2soR0RCdXNDb25uZWN0aW9uKiBjb25uZWN0
aW9uLCBjb25zdCBjaGFyKiBzZW5kZXIsIGNvbnN0IGNoYXIqIG9iamVjdFBhdGgsIGNvbnN0IGNo
YXIqIGludGVyZmFjZU5hbWUsIGNvbnN0IGNoYXIqIG1ldGhvZE5hbWUsIEdWYXJpYW50KiBwYXJh
bWV0ZXJzLCBHREJ1c01ldGhvZEludm9jYXRpb24qIGludm9jYXRpb24sIGdwb2ludGVyIHVzZXJE
YXRhKQogewogICAgIGlmIChnX3N0cmNtcDAoaW50ZXJmYWNlTmFtZSwgIm9yZy53ZWJraXQuZ3Rr
LldlYkV4dGVuc2lvblRlc3QiKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNzgsNiArOTYsOCBAQCBz
dGF0aWMgdm9pZCBidXNBY3F1aXJlZENhbGxiYWNrKEdEQnVzQ29ubmVjdGlvbiogY29ubmVjdGlv
biwgY29uc3QgY2hhciogbmFtZSwgZwogICAgICAgICAmZXJyb3Iub3V0UHRyKCkpOwogICAgIGlm
ICghcmVnaXN0cmF0aW9uSUQpCiAgICAgICAgIGdfd2FybmluZygiRmFpbGVkIHRvIHJlZ2lzdGVy
IG9iamVjdDogJXNcbiIsIGVycm9yLT5tZXNzYWdlKTsKKworICAgIGdfc2lnbmFsX2Nvbm5lY3Qo
V0VCS0lUX1dFQl9FWFRFTlNJT04odXNlckRhdGEpLCAicGFnZS1jcmVhdGVkIiwgR19DQUxMQkFD
SyhwYWdlQ3JlYXRlZENhbGxiYWNrKSwgY29ubmVjdGlvbik7CiB9CiAKIGV4dGVybiAiQyIgdm9p
ZCB3ZWJraXRfd2ViX2V4dGVuc2lvbl9pbml0aWFsaXplKFdlYktpdFdlYkV4dGVuc2lvbiogZXh0
ZW5zaW9uKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1
bmRsZS9BUEkvZ3RrL1dlYktpdFdlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9BUEkvZ3RrL1dlYktpdFdlYlBhZ2UuY3BwCmluZGV4IDFhY2ExN2Rl
ZjQ3YmQ5ZWNiMmE1MDU5YjZiZGMwZDA5MGVlZjQxYzcuLmY1ZDZiYTUyODE2NTA4MGQ2ODExOGVj
MDZmODM4M2JiYTg2Mjk2ZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
SW5qZWN0ZWRCdW5kbGUvQVBJL2d0ay9XZWJLaXRXZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9ndGsvV2ViS2l0V2ViUGFnZS5jcHAK
QEAgLTIzLDYgKzIzLDcgQEAKICNpbmNsdWRlICJJbW11dGFibGVEaWN0aW9uYXJ5LmgiCiAjaW5j
bHVkZSAiSW5qZWN0ZWRCdW5kbGUuaCIKICNpbmNsdWRlICJXS0J1bmRsZUFQSUNhc3QuaCIKKyNp
bmNsdWRlICJXS0J1bmRsZUZyYW1lLmgiCiAjaW5jbHVkZSAiV2ViRnJhbWUuaCIKICNpbmNsdWRl
ICJXZWJLaXRET01Eb2N1bWVudFByaXZhdGUuaCIKICNpbmNsdWRlICJXZWJLaXRQcml2YXRlLmgi
CkBAIC0zMywxMiArMzQsMjggQEAKIHVzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7CiB1c2luZyBuYW1l
c3BhY2UgV2ViQ29yZTsKIAorZW51bSB7CisgICAgRE9DVU1FTlRfTE9BREVELAorCisgICAgTEFT
VF9TSUdOQUwKK307CisKIHN0cnVjdCBfV2ViS2l0V2ViUGFnZVByaXZhdGUgewogICAgIFdlYlBh
Z2UqIHdlYlBhZ2U7CiB9OwogCitzdGF0aWMgZ3VpbnQgc2lnbmFsc1tMQVNUX1NJR05BTF0gPSB7
IDAsIH07CisKIFdFQktJVF9ERUZJTkVfVFlQRShXZWJLaXRXZWJQYWdlLCB3ZWJraXRfd2ViX3Bh
Z2UsIEdfVFlQRV9PQkpFQ1QpCiAKK3N0YXRpYyB2b2lkIGRpZEZpbmlzaERvY3VtZW50TG9hZEZv
ckZyYW1lKFdLQnVuZGxlUGFnZVJlZiwgV0tCdW5kbGVGcmFtZVJlZiBmcmFtZSwgV0tUeXBlUmVm
KiwgY29uc3Qgdm9pZCAqY2xpZW50SW5mbykKK3sKKyAgICBpZiAoIVdLQnVuZGxlRnJhbWVJc01h
aW5GcmFtZShmcmFtZSkpCisgICAgICAgIHJldHVybjsKKworICAgIGdfc2lnbmFsX2VtaXQoV0VC
S0lUX1dFQl9QQUdFKGNsaWVudEluZm8pLCBzaWduYWxzW0RPQ1VNRU5UX0xPQURFRF0sIDApOwor
fQorCiBzdGF0aWMgdm9pZCBkaWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJjZShXS0J1bmRsZVBhZ2VS
ZWYgcGFnZSwgV0tCdW5kbGVGcmFtZVJlZiBmcmFtZSwgdWludDY0X3QgaWRlbnRpZmllciwgV0tV
UkxSZXF1ZXN0UmVmIHJlcXVlc3QsIGJvb2wgcGFnZUxvYWRJc1Byb3Zpc2lvbmFsLCBjb25zdCB2
b2lkKikKIHsKICAgICBJbW11dGFibGVEaWN0aW9uYXJ5OjpNYXBUeXBlIG1lc3NhZ2U7CkBAIC0x
MDAsNiArMTE3LDIzIEBAIHN0YXRpYyB2b2lkIGRpZEZhaWxMb2FkRm9yUmVzb3VyY2UoV0tCdW5k
bGVQYWdlUmVmIHBhZ2UsIFdLQnVuZGxlRnJhbWVSZWYsIHVpbnQ2CiAKIHN0YXRpYyB2b2lkIHdl
YmtpdF93ZWJfcGFnZV9jbGFzc19pbml0KFdlYktpdFdlYlBhZ2VDbGFzcyoga2xhc3MpCiB7Cisg
ICAgLyoqCisgICAgICogV2ViS2l0V2ViUGFnZTo6ZG9jdW1lbnQtbG9hZGVkOgorICAgICAqIEB3
ZWJfcGFnZTogdGhlICNXZWJLaXRXZWJQYWdlIG9uIHdoaWNoIHRoZSBzaWduYWwgaXMgZW1pdHRl
ZAorICAgICAqCisgICAgICogVGhpcyBzaWduYWwgaXMgZW1pdHRlZCB3aGVuIHRoZSBET00gZG9j
dW1lbnQgb2YgYSAjV2ViS2l0V2ViUGFnZSBoYXMgYmVlbgorICAgICAqIGxvYWRlZC4KKyAgICAg
KgorICAgICAqIFlvdSBjYW4gd2FpdCBmb3IgdGhpcyBzaWduYWwgdG8gZ2V0IHRoZSBET00gZG9j
dW1lbnQgd2l0aAorICAgICAqIHdlYmtpdF93ZWJfcGFnZV9nZXRfZG9tX2RvY3VtZW50KCkuCisg
ICAgICovCisgICAgc2lnbmFsc1tET0NVTUVOVF9MT0FERURdID0gZ19zaWduYWxfbmV3KAorICAg
ICAgICAiZG9jdW1lbnQtbG9hZGVkIiwKKyAgICAgICAgR19UWVBFX0ZST01fQ0xBU1Moa2xhc3Mp
LAorICAgICAgICBHX1NJR05BTF9SVU5fTEFTVCwKKyAgICAgICAgMCwgMCwgMCwKKyAgICAgICAg
Z19jY2xvc3VyZV9tYXJzaGFsX1ZPSURfX09CSkVDVCwKKyAgICAgICAgR19UWVBFX05PTkUsIDAp
OwogfQogCiBXZWJLaXRXZWJQYWdlKiB3ZWJraXRXZWJQYWdlQ3JlYXRlKFdlYlBhZ2UqIHdlYlBh
Z2UpCkBAIC0xMDcsNiArMTQxLDQ0IEBAIFdlYktpdFdlYlBhZ2UqIHdlYmtpdFdlYlBhZ2VDcmVh
dGUoV2ViUGFnZSogd2ViUGFnZSkKICAgICBXZWJLaXRXZWJQYWdlKiBwYWdlID0gV0VCS0lUX1dF
Ql9QQUdFKGdfb2JqZWN0X25ldyhXRUJLSVRfVFlQRV9XRUJfUEFHRSwgTlVMTCkpOwogICAgIHBh
Z2UtPnByaXYtPndlYlBhZ2UgPSB3ZWJQYWdlOwogCisgICAgV0tCdW5kbGVQYWdlTG9hZGVyQ2xp
ZW50IGxvYWRlckNsaWVudCA9IHsKKyAgICAgICAga1dLQnVuZGxlUGFnZVJlc291cmNlTG9hZENs
aWVudEN1cnJlbnRWZXJzaW9uLAorICAgICAgICBwYWdlLAorICAgICAgICAwLCAvLyBkaWRTdGFy
dFByb3Zpc2lvbmFsTG9hZEZvckZyYW1lCisgICAgICAgIDAsIC8vIGRpZFJlY2VpdmVTZXJ2ZXJS
ZWRpcmVjdEZvclByb3Zpc2lvbmFsTG9hZEZvckZyYW1lCisgICAgICAgIDAsIC8vIGRpZEZhaWxQ
cm92aXNpb25hbExvYWRXaXRoRXJyb3JGb3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRDb21taXRM
b2FkRm9yRnJhbWUKKyAgICAgICAgZGlkRmluaXNoRG9jdW1lbnRMb2FkRm9yRnJhbWUsCisgICAg
ICAgIDAsIC8vIGRpZEZpbmlzaExvYWRGb3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRGYWlsTG9h
ZFdpdGhFcnJvckZvckZyYW1lCisgICAgICAgIDAsIC8vIGRpZFNhbWVEb2N1bWVudE5hdmlnYXRp
b25Gb3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRSZWNlaXZlVGl0bGVGb3JGcmFtZQorICAgICAg
ICAwLCAvLyBkaWRGaXJzdExheW91dEZvckZyYW1lCisgICAgICAgIDAsIC8vIGRpZEZpcnN0Vmlz
dWFsbHlOb25FbXB0eUxheW91dEZvckZyYW1lCisgICAgICAgIDAsIC8vIGRpZFJlbW92ZUZyYW1l
RnJvbUhpZXJhcmNoeQorICAgICAgICAwLCAvLyBkaWREaXNwbGF5SW5zZWN1cmVDb250ZW50Rm9y
RnJhbWUKKyAgICAgICAgMCwgLy8gZGlkUnVuSW5zZWN1cmVDb250ZW50Rm9yRnJhbWUKKyAgICAg
ICAgMCwgLy8gZGlkQ2xlYXJXaW5kb3dPYmplY3RGb3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRD
YW5jZWxDbGllbnRSZWRpcmVjdEZvckZyYW1lCisgICAgICAgIDAsIC8vIHdpbGxQZXJmb3JtQ2xp
ZW50UmVkaXJlY3RGb3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRIYW5kbGVPbmxvYWRFdmVudHNG
b3JGcmFtZQorICAgICAgICAwLCAvLyBkaWRMYXlvdXRGb3JGcmFtZQorICAgICAgICAwLCAvLyBk
aWROZXdGaXJzdFZpc3VhbGx5Tm9uRW1wdHlMYXlvdXQKKyAgICAgICAgMCwgLy8gZGlkRGV0ZWN0
WFNTRm9yRnJhbWUKKyAgICAgICAgMCwgLy8gc2hvdWxkR29Ub0JhY2tGb3J3YXJkTGlzdEl0ZW0K
KyAgICAgICAgMCwgLy8gZ2xvYmFsT2JqZWN0SXNBdmFpbGFibGVGb3JGcmFtZQorICAgICAgICAw
LCAvLyB3aWxsRGlzY29ubmVjdERPTVdpbmRvd0V4dGVuc2lvbkZyb21HbG9iYWxPYmplY3QKKyAg
ICAgICAgMCwgLy8gZGlkUmVjb25uZWN0RE9NV2luZG93RXh0ZW5zaW9uVG9HbG9iYWxPYmplY3QK
KyAgICAgICAgMCwgLy8gd2lsbERlc3Ryb3lHbG9iYWxPYmplY3RGb3JET01XaW5kb3dFeHRlbnNp
b24KKyAgICAgICAgMCwgLy8gZGlkRmluaXNoUHJvZ3Jlc3MKKyAgICAgICAgMCwgLy8gc2hvdWxk
Rm9yY2VVbml2ZXJzYWxBY2Nlc3NGcm9tTG9jYWxVUkwKKyAgICAgICAgMCwgLy8gZGlkUmVjZWl2
ZUludGVudEZvckZyYW1lX3VuYXZhaWxhYmxlCisgICAgICAgIDAsIC8vIHJlZ2lzdGVySW50ZW50
U2VydmljZUZvckZyYW1lX3VuYXZhaWxhYmxlCisgICAgICAgIDAsIC8vIGRpZExheW91dAorICAg
ICAgICAwLCAvLyBmZWF0dXJlc1VzZWRJblBhZ2UKKyAgICB9OworICAgIFdLQnVuZGxlUGFnZVNl
dFBhZ2VMb2FkZXJDbGllbnQodG9BUEkod2ViUGFnZSksICZsb2FkZXJDbGllbnQpOworCiAgICAg
V0tCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50IHJlc291cmNlTG9hZENsaWVudCA9IHsKICAg
ICAgICAga1dLQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudEN1cnJlbnRWZXJzaW9uLAogICAg
ICAgICBwYWdlLAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>