<?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>116611</bug_id>
          
          <creation_ts>2013-05-22 06:23:43 -0700</creation_ts>
          <short_desc>[GTK] Need a way to enable region based columns from the command line</short_desc>
          <delta_ts>2013-07-19 13:03:47 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Morten Stenshorne">mstensho</reporter>
          <assigned_to name="Morten Stenshorne">mstensho</assigned_to>
          <cc>aestes</cc>
    
    <cc>beidson</cc>
    
    <cc>cdumez</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>gustavo</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>mrobinson</cc>
    
    <cc>rakuco</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>892262</commentid>
    <comment_count>0</comment_count>
    <who name="Morten Stenshorne">mstensho</who>
    <bug_when>2013-05-22 06:23:43 -0700</bug_when>
    <thetext>I&apos;m working on the region based multicol implementation, and there&apos;s currently no way to enable it in the GTK port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892263</commentid>
    <comment_count>1</comment_count>
      <attachid>202533</attachid>
    <who name="Morten Stenshorne">mstensho</who>
    <bug_when>2013-05-22 06:29:31 -0700</bug_when>
    <thetext>Created attachment 202533
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892264</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-05-22 06:31:06 -0700</bug_when>
    <thetext>Attachment 202533 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebKit/gtk/ChangeLog&apos;, u&apos;Source/WebKit/gtk/webkit/webkitwebsettings.cpp&apos;, u&apos;Source/WebKit/gtk/webkit/webkitwebsettingsprivate.h&apos;, u&apos;Source/WebKit/gtk/webkit/webkitwebview.cpp&apos;]&quot; exit_code: 1
Source/WebKit/gtk/webkit/webkitwebsettings.cpp:556:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Source/WebKit/gtk/webkit/webkitwebsettings.cpp:558:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WebKit/gtk/webkit/webkitwebsettings.cpp:559:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WebKit/gtk/webkit/webkitwebsettings.cpp:560:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WebKit/gtk/webkit/webkitwebsettings.cpp:561:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 5 in 4 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892511</commentid>
    <comment_count>3</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2013-05-22 13:12:14 -0700</bug_when>
    <thetext>Are you bound to the WK1 layer? The focus is now on the GTK port of the WK2 layer, with the WK1 layer in some sort of a maintenance mode, meaning that API additions are now most welcome under WK2.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892562</commentid>
    <comment_count>4</comment_count>
    <who name="Morten Stenshorne">mstensho</who>
    <bug_when>2013-05-22 15:14:53 -0700</bug_when>
    <thetext>I wrote a patch for WK1 because that seems to be what I use by default. I can add it for WK2 as well. But how do I enable WK2? Rebuild with --no-webkit1 ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892607</commentid>
    <comment_count>5</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2013-05-22 17:33:35 -0700</bug_when>
    <thetext>This is not really something that should be in the public API. The implementation of a CSS feature should be a private detail of the library, not something the embedder should worry about. If this setting is required it should be private. You don&apos;t say why you need it, but if it&apos;s for running tests, look at DumpRenderTreeSupport.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892693</commentid>
    <comment_count>6</comment_count>
    <who name="Morten Stenshorne">mstensho</who>
    <bug_when>2013-05-23 00:37:03 -0700</bug_when>
    <thetext>I&apos;m working on the region based multicol implementation, and I need some way to run WebKit with this code enabled, so that I can see how it works, and debug it. The code for region based multicol is behind WebCore::Settings::regionBasedColumnsEnabled() checks. This patch provides a way to make that method return true when I want it to, without having to change or recompile any code.

When running LayoutTests, there&apos;s already internals.settings.setRegionBasedColumnsEnabled(true) to do this, but that doesn&apos;t work in the actual browser.

But if you know of a different or better way, maybe I don&apos;t need to add a command line switch and mess with your public API.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892873</commentid>
    <comment_count>7</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2013-05-23 07:35:50 -0700</bug_when>
    <thetext>(In reply to comment #6)

&gt; But if you know of a different or better way, maybe I don&apos;t need to add a command line switch and mess with your public API.

Perhaps an environment variable would be a better option? Other people are looking at adding settings for regions: https://bugs.webkit.org/show_bug.cgi?id=116043 so perhaps we could provide one environment variable for all experimental features.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892977</commentid>
    <comment_count>8</comment_count>
    <who name="Morten Stenshorne">mstensho</who>
    <bug_when>2013-05-23 11:43:28 -0700</bug_when>
    <thetext>Sure, that would work too. One environment variable to toggle experimental features sounds fine. After your last comment, a post in bug 116043 seems to suggest that it&apos;s being dropped, so I suppose I&apos;m on my own.

Any guidelines as to what to name the variable, or where exactly to put the code for it? You guys also seem eager to move me over to WK2. :) Exactly how would I go about that?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893048</commentid>
    <comment_count>9</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2013-05-23 14:45:50 -0700</bug_when>
    <thetext>(In reply to comment #8)
 
&gt; Any guidelines as to what to name the variable, or where exactly to put the code for it? You guys also seem eager to move me over to WK2. :) Exactly how would I go about that?

You might consider integrating the code into WebSettings.cpp. When settings are applied to the WebView might be a good time to look for the environment variable. I think it&apos;s really only important if this works for MiniBrowser. WebKitTestRunner doesn&apos;t use the GObject-based API, so no need to worry about the WebSettings code overriding that. Naming is up to you, but maybe something like WEBKITGTK_EXPERIMENTAL_FEATURES=&quot;CSS_REGIONS=1,CSS_MULTICOL_WITH_REGION=1&quot; ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893279</commentid>
    <comment_count>10</comment_count>
    <who name="Morten Stenshorne">mstensho</who>
    <bug_when>2013-05-24 05:58:37 -0700</bug_when>
    <thetext>$ find . | grep WebSettings.cpp
./Source/WebKit/blackberry/Api/WebSettings.cpp

Did you mean Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp ? What function should I hook this into?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893309</commentid>
    <comment_count>11</comment_count>
      <attachid>202822</attachid>
    <who name="Morten Stenshorne">mstensho</who>
    <bug_when>2013-05-24 08:15:00 -0700</bug_when>
    <thetext>Created attachment 202822
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893311</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-05-24 08:17:55 -0700</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>899494</commentid>
    <comment_count>13</comment_count>
    <who name="Morten Stenshorne">mstensho</who>
    <bug_when>2013-06-12 03:55:51 -0700</bug_when>
    <thetext>Any comments?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>899603</commentid>
    <comment_count>14</comment_count>
      <attachid>202822</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2013-06-12 10:12:13 -0700</bug_when>
    <thetext>Comment on attachment 202822
Patch

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

Looks pretty good to me. I have a few nits about the implementation.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:77
&gt; +#if 0
&gt; +}
&gt; +#endif

Why is this code disabled?

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:80
&gt; +    REGION_BASED_COLUMNS

This isn&apos;t the naming convention we use for private enums in WebKit.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:91
&gt; +bool envParsed;

In WebKit we avoid using abbreviations except for the most common words.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:95
&gt; +    if (const char* data = getenv(&quot;WEBKITGTK_EXPERIMENTAL_FEATURES&quot;)) {

I would rather see an early return here than a deeply nested if statement. That&apos;s more typical in WebKit.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:96
&gt; +        const int featureCount = sizeof(settings) / sizeof(Setting);

You could use WTF_ARRAY_LENGTH here I think.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:116
&gt; +            while (data &amp;&amp; *data) {
&gt; +                if (const char* keyEnd = strpbrk(data, &quot;=&quot;)) {
&gt; +                    const char* keyStart = data;
&gt; +                    const char* valStart = keyEnd + 1;
&gt; +                    for (int i = 0; i &lt; featureCount; i++) {
&gt; +                        if (!strncmp(settings[i].featureStr, keyStart, keyEnd - keyStart)) {
&gt; +                            settings[i].enabled = *valStart &amp;&amp; *valStart - &apos;0&apos;;
&gt; +                            break;
&gt; +                        }
&gt; +                    }
&gt; +                    data = strpbrk(valStart, &quot;,&quot;);
&gt; +                    if (data)
&gt; +                        data++;
&gt; +                } else
&gt; +                    break;
&gt; +            }

This code isn&apos;t performance critical, so perhaps it&apos;s better to use String.split here?

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:124
&gt; +    if (!envParsed)

It makes sense to make environmentParsed a static local instead of a global variable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>899723</commentid>
    <comment_count>15</comment_count>
      <attachid>202822</attachid>
    <who name="Morten Stenshorne">mstensho</who>
    <bug_when>2013-06-12 12:22:22 -0700</bug_when>
    <thetext>Comment on attachment 202822
Patch

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

&gt;&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:77
&gt;&gt; +#endif
&gt; 
&gt; Why is this code disabled?

According to the WebKit coding standards, namespace blocks are not indented, but my editor doesn&apos;t agree with that. :) But I&apos;ll remove it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>899724</commentid>
    <comment_count>16</comment_count>
      <attachid>204498</attachid>
    <who name="Morten Stenshorne">mstensho</who>
    <bug_when>2013-06-12 12:24:50 -0700</bug_when>
    <thetext>Created attachment 204498
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>899926</commentid>
    <comment_count>17</comment_count>
      <attachid>204498</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-06-13 00:46:20 -0700</bug_when>
    <thetext>Comment on attachment 204498
Patch

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

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:55
&gt; +
&gt; +        applyExperimentalFeatures();

I don&apos;t think this is the best place to apply the preferences. Here we get the default value of string and custom preferences. For string preferences we cache the utf8 value to compare with the given value in set methods without doing any charset conversion nor memory allocation. We need to cache the values here to make sure that when construct properties are set to their default value, the set method returns early without sending a PreferencesDidChange message to the WebProcess for every preference when WebKitSettings object is constructed. So, default values for experimental features could be set in GObjectClass::constructed() once all other preferences has been set already.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:93
&gt; +    const int featureCount = WTF_ARRAY_LENGTH(settings);

Use size_t or unsigned instead of int

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:95
&gt; +        for (int i = 0; i &lt; featureCount; i++)

Use size_t or unsigned here too.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:99
&gt; +        String(data).split(&quot;,&quot;, false, variables);

Since it&apos;s a single character you could use &apos;,&apos; instead of &quot;,&quot; which I think is more efficient.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:102
&gt; +            variables[i].split(&quot;=&quot;, false, keyAndValue);

Same here &apos;=&apos; instead of &quot;=&quot;

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:103
&gt; +            if (keyAndValue.size() == 2) {

You can save an indentation level by continuing the loop if this is false

if (keyAndValue.size() != 2)
    continue;

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:105
&gt; +                String key = keyAndValue[0];
&gt; +                String value = keyAndValue[1];

Are strings copied here? Should they be const String&amp; instead?

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:106
&gt; +                for (int i = 0; i &lt; featureCount; i++) {

use size_t or unsigned, this is a bit confusing because i, is already the iterator of the first loop.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:110
&gt; +                    }

Maybe we could move this inner loop to a helper function setEnableByName(const String&amp; featureName, bool enable); or something like that to make it a bit easier to read.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:131
&gt; +    preferences.get()-&gt;setRegionBasedColumnsEnabled(ExperimentalFeatures::isEnabled(ExperimentalFeatures::RegionBasedColumns));

You should check that the value we are setting is not the current one, to avoid sending a PreferencesDidChange message to the UI process.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:133
&gt; +}
&gt; +

I wonder if we could move all this ExperimentalFeatures to its own file, since WebKitSettings is already too long and experimental features are not actually settings from the API POV.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>899994</commentid>
    <comment_count>18</comment_count>
      <attachid>204576</attachid>
    <who name="Morten Stenshorne">mstensho</who>
    <bug_when>2013-06-13 05:50:17 -0700</bug_when>
    <thetext>Created attachment 204576
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>900001</commentid>
    <comment_count>19</comment_count>
      <attachid>204576</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-06-13 06:28:50 -0700</bug_when>
    <thetext>Comment on attachment 204576
Patch

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

Looks much better, thanks!

&gt; Source/WebKit2/ChangeLog:25
&gt; +        * UIProcess/API/gtk/ExperimentalFeatures.cpp: Added.

Since this is not part of the API, maybe it would be better to move it to UIProcess/gtk/

&gt; Source/WebKit2/UIProcess/API/gtk/ExperimentalFeatures.cpp:37
&gt; +    const char* featureStr;

Sorry, I didn&apos;t notice this in previous patch, instead of abbreviation Str, better use featureString or even featureName.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp:146
&gt; +    WebKitSettingsPrivate* priv = WEBKIT_SETTINGS(object)-&gt;priv;
&gt; +    WebPreferences* prefs = priv-&gt;preferences.get();

Since we don&apos;t need priv you can get the prefs directly with

WebPreferences* prefs = WEBKIT_SETTINGS(object)-&gt;priv-&gt;preferences.get();

&gt; Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-sections.txt:1023
&gt; +&lt;SECTION&gt;
&gt; +&lt;FILE&gt;ExperimentalFeatures&lt;/FILE&gt;
&gt; +isEnabled
&gt; +
&gt; +&lt;SUBSECTION Private&gt;
&gt; +parseEnvironment
&gt; +setEnableByName
&gt; +&lt;/SECTION&gt;

Do not add symbols here, this is only for public API.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>900002</commentid>
    <comment_count>20</comment_count>
      <attachid>204576</attachid>
    <who name="Morten Stenshorne">mstensho</who>
    <bug_when>2013-06-13 06:37:21 -0700</bug_when>
    <thetext>Comment on attachment 204576
Patch

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

&gt;&gt; Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-sections.txt:1023
&gt;&gt; +&lt;/SECTION&gt;
&gt; 
&gt; Do not add symbols here, this is only for public API.

I got warnings during building. That was my only reason for adding it. But perhaps the warnings won&apos;t be generated if I move the code as you suggested in another comment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>900006</commentid>
    <comment_count>21</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-06-13 06:48:37 -0700</bug_when>
    <thetext>(In reply to comment #20)
&gt; (From update of attachment 204576 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=204576&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-sections.txt:1023
&gt; &gt;&gt; +&lt;/SECTION&gt;
&gt; &gt; 
&gt; &gt; Do not add symbols here, this is only for public API.
&gt; 
&gt; I got warnings during building. That was my only reason for adding it. But perhaps the warnings won&apos;t be generated if I move the code as you suggested in another comment.

Yes, moving the file would fix the warnings.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>900463</commentid>
    <comment_count>22</comment_count>
      <attachid>204685</attachid>
    <who name="Morten Stenshorne">mstensho</who>
    <bug_when>2013-06-14 02:02:37 -0700</bug_when>
    <thetext>Created attachment 204685
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>900489</commentid>
    <comment_count>23</comment_count>
      <attachid>204685</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-06-14 03:35:57 -0700</bug_when>
    <thetext>Comment on attachment 204685
Patch

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

This looks good to me. Martin?

&gt; Source/WebKit2/ChangeLog:21
&gt; +        Reviewed by NOBODY (OOPS!).

The explanation should be after this line, sorry I didn&apos;t notice this in previous patches.

&gt; Source/WebKit2/UIProcess/gtk/ExperimentalFeatures.cpp:41
&gt; +static Setting settings[] = {

We can probably make this const</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>900493</commentid>
    <comment_count>24</comment_count>
      <attachid>204685</attachid>
    <who name="Morten Stenshorne">mstensho</who>
    <bug_when>2013-06-14 03:51:57 -0700</bug_when>
    <thetext>Comment on attachment 204685
Patch

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

&gt;&gt; Source/WebKit2/UIProcess/gtk/ExperimentalFeatures.cpp:41
&gt;&gt; +static Setting settings[] = {
&gt; 
&gt; We can probably make this const

It cannot, since it&apos;s changed when the environment variable is parsed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>900495</commentid>
    <comment_count>25</comment_count>
      <attachid>204695</attachid>
    <who name="Morten Stenshorne">mstensho</who>
    <bug_when>2013-06-14 03:53:42 -0700</bug_when>
    <thetext>Created attachment 204695
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>900512</commentid>
    <comment_count>26</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-06-14 05:20:09 -0700</bug_when>
    <thetext>(In reply to comment #24)
&gt; (From update of attachment 204685 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=204685&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebKit2/UIProcess/gtk/ExperimentalFeatures.cpp:41
&gt; &gt;&gt; +static Setting settings[] = {
&gt; &gt; 
&gt; &gt; We can probably make this const
&gt; 
&gt; It cannot, since it&apos;s changed when the environment variable is parsed.

Indeed, you are right</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>901843</commentid>
    <comment_count>27</comment_count>
    <who name="Morten Stenshorne">mstensho</who>
    <bug_when>2013-06-19 10:35:01 -0700</bug_when>
    <thetext>So is the last patch okay then?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902283</commentid>
    <comment_count>28</comment_count>
      <attachid>204695</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2013-06-20 13:21:40 -0700</bug_when>
    <thetext>Comment on attachment 204695
Patch

Looks good to me! A great improvement from the original patch. I think this just needs an owner to sign off on it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>904847</commentid>
    <comment_count>29</comment_count>
    <who name="Morten Stenshorne">mstensho</who>
    <bug_when>2013-06-29 03:57:12 -0700</bug_when>
    <thetext>Can someone cq+ me, please?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>905452</commentid>
    <comment_count>30</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2013-07-02 08:56:22 -0700</bug_when>
    <thetext>(In reply to comment #29)
&gt; Can someone cq+ me, please?

Please ask one of the WebKit2 owners to cq this patch. It is required that an owner give final approval to all WebKit2 patches.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>905720</commentid>
    <comment_count>31</comment_count>
    <who name="Morten Stenshorne">mstensho</who>
    <bug_when>2013-07-03 00:50:25 -0700</bug_when>
    <thetext>Picked three random people from Source/WebKit2/Owners

May I have a final approval from one of the WebKit2 owners, please?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>910288</commentid>
    <comment_count>32</comment_count>
      <attachid>204695</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2013-07-19 12:42:13 -0700</bug_when>
    <thetext>Comment on attachment 204695
Patch

This is only touching GTK+ stuff, and per the discussions in the contributors meeting I think it does not require owners approval to go in, so I&apos;m cq+ing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>910292</commentid>
    <comment_count>33</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2013-07-19 12:55:50 -0700</bug_when>
    <thetext>(In reply to comment #32)
&gt; (From update of attachment 204695 [details])
&gt; This is only touching GTK+ stuff, and per the discussions in the contributors meeting I think it does not require owners approval to go in, so I&apos;m cq+ing.

Apologies! The rules changed and I didn&apos;t keep up with them.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>910293</commentid>
    <comment_count>34</comment_count>
      <attachid>204695</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-07-19 13:03:41 -0700</bug_when>
    <thetext>Comment on attachment 204695
Patch

Clearing flags on attachment: 204695

Committed r152922: &lt;http://trac.webkit.org/changeset/152922&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>910294</commentid>
    <comment_count>35</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-07-19 13:03:47 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>202533</attachid>
            <date>2013-05-22 06:29:31 -0700</date>
            <delta_ts>2013-05-24 08:14:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-116611-20130522152822.patch</filename>
            <type>text/plain</type>
            <size>6107</size>
            <attacher name="Morten Stenshorne">mstensho</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwNTExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2d0
ay9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKaW5kZXggZmE4MmE3Y2Jh
OTQ0ZDhmMGMxZjM4MTQ3OTFmYjNmMjBjMjNlYjYzZC4uNDNmYzEyM2YzM2MzYzUwYWM1MmY2YTg0
ZmMwYTJkZWNhZTQ0OTEzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ndGsvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEz
LTA1LTIyICBNb3J0ZW4gU3RlbnNob3JuZSAgPG1zdGVuc2hvQG9wZXJhLmNvbT4KKworICAgICAg
ICBbR1RLXSBOZWVkIGEgd2F5IHRvIGVuYWJsZSByZWdpb24gYmFzZWQgY29sdW1ucyBmcm9tIHRo
ZSBjb21tYW5kIGxpbmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTExNjYxMQorCisgICAgICAgIEFkZCBjb21tYW5kIGxpbmUgb3B0aW9uIC0tZW5hYmxl
LXJlZ2lvbi1iYXNlZC1jb2x1bW5zCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiB3ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOgorICAgICAgICAo
d2Via2l0X3dlYl9zZXR0aW5nc19jbGFzc19pbml0KToKKyAgICAgICAgKHdlYmtpdF93ZWJfc2V0
dGluZ3Nfc2V0X3Byb3BlcnR5KToKKyAgICAgICAgKHdlYmtpdF93ZWJfc2V0dGluZ3NfZ2V0X3By
b3BlcnR5KToKKyAgICAgICAgKiB3ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Nwcml2YXRlLmg6Cisg
ICAgICAgICogd2Via2l0L3dlYmtpdHdlYnZpZXcuY3BwOgorICAgICAgICAod2Via2l0X3dlYl92
aWV3X3VwZGF0ZV9zZXR0aW5ncyk6CisgICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfc2V0dGluZ3Nf
bm90aWZ5KToKKwogMjAxMy0wNS0xOSAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUu
Y29tPgogCiAgICAgICAgIFJlbW92ZSBDaHJvbWVDbGllbnQ6OndlYlZpZXcoKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHAKaW5kZXggMjJjZTZiYjM2
MzdjZTAwYWZiY2RiYTBiYTQyNjVhMjQ3NWNhN2VhZC4uNzZkMTIyZGRiY2YwNjZjODZmMTZhMmRj
NjBlNWVlZjFhNDAxOTAxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dl
YmtpdHdlYnNldHRpbmdzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3MuY3BwCkBAIC05Nyw2ICs5Nyw3IEBAIGVudW0gewogICAgIFBST1BfRU5BQkxF
X1hTU19BVURJVE9SLAogICAgIFBST1BfRU5BQkxFX1NQQVRJQUxfTkFWSUdBVElPTiwKICAgICBQ
Uk9QX0VOQUJMRV9GUkFNRV9GTEFUVEVOSU5HLAorICAgIFBST1BfRU5BQkxFX1JFR0lPTl9CQVNF
RF9DT0xVTU5TLAogICAgIFBST1BfVVNFUl9BR0VOVCwKICAgICBQUk9QX0pBVkFTQ1JJUFRfQ0FO
X09QRU5fV0lORE9XU19BVVRPTUFUSUNBTExZLAogICAgIFBST1BfSkFWQVNDUklQVF9DQU5fQUND
RVNTX0NMSVBCT0FSRCwKQEAgLTU0NSw2ICs1NDYsMjAgQEAgc3RhdGljIHZvaWQgd2Via2l0X3dl
Yl9zZXR0aW5nc19jbGFzc19pbml0KFdlYktpdFdlYlNldHRpbmdzQ2xhc3MqIGtsYXNzKQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRkFM
U0UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBmbGFncykpOwogICAgIC8qKgorICAgICogV2ViS2l0V2ViU2V0dGluZ3M6ZW5hYmxlLXJl
Z2lvbi1iYXNlZC1jb2x1bW5zOgorICAgICoKKyAgICAqIEVuYWJsZSB0aGUgQ1NTIG11bHRpY29s
IGltcGxlbWVudGF0aW9uIHRoYXQncyBiYXNlZCBvbiB0aGUgQ1NTIHJlZ2lvbnMgY29kZS4KKyAg
ICAqCisgICAgKiBTaW5jZTogMi4xLjAKKyAgICAqLworICAgIGdfb2JqZWN0X2NsYXNzX2luc3Rh
bGxfcHJvcGVydHkoZ29iamVjdF9jbGFzcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFBST1BfRU5BQkxFX1JFR0lPTl9CQVNFRF9DT0xVTU5TLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZ19wYXJhbV9zcGVjX2Jvb2xlYW4oImVuYWJsZS1yZWdpb24t
YmFzZWQtY29sdW1ucyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBfKCJFbmFibGUgUmVnaW9uIEJhc2VkIENvbHVtbnMiKSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF8oIldo
ZXRoZXIgdG8gZW5hYmxlIHRoZSBtdWx0aWNvbCBpbXBsZW1lbnRhdGlvbiB0aGF0IHVzZXMgcmVn
aW9ucyBpbnRlcm5hbGx5IiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBGQUxTRSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzKSk7CisgICAgLyoqCiAgICAgICogV2Vi
S2l0V2ViU2V0dGluZ3M6dXNlci1hZ2VudDoKICAgICAgKgogICAgICAqIFRoZSBVc2VyLUFnZW50
IHN0cmluZyB1c2VkIGJ5IFdlYktpdEd0ay4KQEAgLTExMzksNiArMTE1NCw5IEBAIHN0YXRpYyB2
b2lkIHdlYmtpdF93ZWJfc2V0dGluZ3Nfc2V0X3Byb3BlcnR5KEdPYmplY3QqIG9iamVjdCwgZ3Vp
bnQgcHJvcF9pZCwgY29uCiAgICAgY2FzZSBQUk9QX0VOQUJMRV9GUkFNRV9GTEFUVEVOSU5HOgog
ICAgICAgICBwcml2LT5lbmFibGVGcmFtZUZsYXR0ZW5pbmcgPSBnX3ZhbHVlX2dldF9ib29sZWFu
KHZhbHVlKTsKICAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQUk9QX0VOQUJMRV9SRUdJT05fQkFT
RURfQ09MVU1OUzoKKyAgICAgICAgcHJpdi0+ZW5hYmxlUmVnaW9uQmFzZWRDb2x1bW5zID0gZ192
YWx1ZV9nZXRfYm9vbGVhbih2YWx1ZSk7CisgICAgICAgIGJyZWFrOwogICAgIGNhc2UgUFJPUF9V
U0VSX0FHRU5UOgogICAgICAgICBpZiAoIWdfdmFsdWVfZ2V0X3N0cmluZyh2YWx1ZSkgfHwgIXN0
cmxlbihnX3ZhbHVlX2dldF9zdHJpbmcodmFsdWUpKSkKICAgICAgICAgICAgIHByaXYtPnVzZXJB
Z2VudCA9IHN0YW5kYXJkVXNlckFnZW50KCkudXRmOCgpOwpAQCAtMTMzMSw2ICsxMzQ5LDkgQEAg
c3RhdGljIHZvaWQgd2Via2l0X3dlYl9zZXR0aW5nc19nZXRfcHJvcGVydHkoR09iamVjdCogb2Jq
ZWN0LCBndWludCBwcm9wX2lkLCBHVmEKICAgICBjYXNlIFBST1BfRU5BQkxFX0ZSQU1FX0ZMQVRU
RU5JTkc6CiAgICAgICAgIGdfdmFsdWVfc2V0X2Jvb2xlYW4odmFsdWUsIHByaXYtPmVuYWJsZUZy
YW1lRmxhdHRlbmluZyk7CiAgICAgICAgIGJyZWFrOworICAgIGNhc2UgUFJPUF9FTkFCTEVfUkVH
SU9OX0JBU0VEX0NPTFVNTlM6CisgICAgICAgIGdfdmFsdWVfc2V0X2Jvb2xlYW4odmFsdWUsIHBy
aXYtPmVuYWJsZVJlZ2lvbkJhc2VkQ29sdW1ucyk7CisgICAgICAgIGJyZWFrOwogICAgIGNhc2Ug
UFJPUF9VU0VSX0FHRU5UOgogICAgICAgICBnX3ZhbHVlX3NldF9zdHJpbmcodmFsdWUsIHByaXYt
PnVzZXJBZ2VudC5kYXRhKCkpOwogICAgICAgICBicmVhazsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5nc3ByaXZhdGUuaCBiL1NvdXJjZS9XZWJL
aXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5nc3ByaXZhdGUuaAppbmRleCA3MGI4ODY1N2Mz
NmE3MTljNWNlNzNhMjQ3MDQwMWY4YjNiYzM0MDc3Li5iMDg2ZjZlNzBlNzU5MDdkZDEwYTVkNmZm
YjlkNjFhNDUxMTkxZTZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Vi
a2l0d2Vic2V0dGluZ3Nwcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dl
YmtpdHdlYnNldHRpbmdzcHJpdmF0ZS5oCkBAIC02MSw2ICs2MSw3IEBAIHN0cnVjdCBfV2ViS2l0
V2ViU2V0dGluZ3NQcml2YXRlIHsKICAgICBnYm9vbGVhbiBlbmFibGVYU1NBdWRpdG9yOwogICAg
IGdib29sZWFuIGVuYWJsZVNwYXRpYWxOYXZpZ2F0aW9uOwogICAgIGdib29sZWFuIGVuYWJsZUZy
YW1lRmxhdHRlbmluZzsKKyAgICBnYm9vbGVhbiBlbmFibGVSZWdpb25CYXNlZENvbHVtbnM7CiAg
ICAgQ1N0cmluZyB1c2VyQWdlbnQ7CiAgICAgZ2Jvb2xlYW4gamF2YXNjcmlwdENhbk9wZW5XaW5k
b3dzQXV0b21hdGljYWxseTsKICAgICBnYm9vbGVhbiBqYXZhc2NyaXB0Q2FuQWNjZXNzQ2xpcGJv
YXJkOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnZpZXcu
Y3BwIGIvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnZpZXcuY3BwCmluZGV4IGMz
OTVjMzBiMDg4MDE0YzVjOWJhZWUzN2ViYjY1YzFiNzYyZmE3MTcuLmRlOTQ3MGQwMWFmNTMzZTJj
YjZiYWQ3MmM5YTQyMmIzNWM4Njk4NWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZ3RrL3dl
YmtpdC93ZWJraXR3ZWJ2aWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Vi
a2l0d2Vidmlldy5jcHAKQEAgLTM1MjMsNiArMzUyMyw3IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF93
ZWJfdmlld191cGRhdGVfc2V0dGluZ3MoV2ViS2l0V2ViVmlldyogd2ViVmlldykKICAgICBjb3Jl
U2V0dGluZ3MtPnNldFhTU0F1ZGl0b3JFbmFibGVkKHNldHRpbmdzUHJpdmF0ZS0+ZW5hYmxlWFNT
QXVkaXRvcik7CiAgICAgY29yZVNldHRpbmdzLT5zZXRTcGF0aWFsTmF2aWdhdGlvbkVuYWJsZWQo
c2V0dGluZ3NQcml2YXRlLT5lbmFibGVTcGF0aWFsTmF2aWdhdGlvbik7CiAgICAgY29yZVNldHRp
bmdzLT5zZXRGcmFtZUZsYXR0ZW5pbmdFbmFibGVkKHNldHRpbmdzUHJpdmF0ZS0+ZW5hYmxlRnJh
bWVGbGF0dGVuaW5nKTsKKyAgICBjb3JlU2V0dGluZ3MtPnNldFJlZ2lvbkJhc2VkQ29sdW1uc0Vu
YWJsZWQoc2V0dGluZ3NQcml2YXRlLT5lbmFibGVSZWdpb25CYXNlZENvbHVtbnMpOwogICAgIGNv
cmVTZXR0aW5ncy0+c2V0SmF2YVNjcmlwdENhbk9wZW5XaW5kb3dzQXV0b21hdGljYWxseShzZXR0
aW5nc1ByaXZhdGUtPmphdmFzY3JpcHRDYW5PcGVuV2luZG93c0F1dG9tYXRpY2FsbHkpOwogICAg
IGNvcmVTZXR0aW5ncy0+c2V0SmF2YVNjcmlwdENhbkFjY2Vzc0NsaXBib2FyZChzZXR0aW5nc1By
aXZhdGUtPmphdmFzY3JpcHRDYW5BY2Nlc3NDbGlwYm9hcmQpOwogICAgIGNvcmVTZXR0aW5ncy0+
c2V0T2ZmbGluZVdlYkFwcGxpY2F0aW9uQ2FjaGVFbmFibGVkKHNldHRpbmdzUHJpdmF0ZS0+ZW5h
YmxlT2ZmbGluZVdlYkFwcGxpY2F0aW9uQ2FjaGUpOwpAQCAtMzY2NCw2ICszNjY1LDggQEAgc3Rh
dGljIHZvaWQgd2Via2l0X3dlYl92aWV3X3NldHRpbmdzX25vdGlmeShXZWJLaXRXZWJTZXR0aW5n
cyogd2ViU2V0dGluZ3MsIEdQYXIKICAgICAgICAgc2V0dGluZ3MtPnNldFNwYXRpYWxOYXZpZ2F0
aW9uRW5hYmxlZChnX3ZhbHVlX2dldF9ib29sZWFuKCZ2YWx1ZSkpOwogICAgIGVsc2UgaWYgKG5h
bWUgPT0gZ19pbnRlcm5fc3RyaW5nKCJlbmFibGUtZnJhbWUtZmxhdHRlbmluZyIpKQogICAgICAg
ICBzZXR0aW5ncy0+c2V0RnJhbWVGbGF0dGVuaW5nRW5hYmxlZChnX3ZhbHVlX2dldF9ib29sZWFu
KCZ2YWx1ZSkpOworICAgIGVsc2UgaWYgKG5hbWUgPT0gZ19pbnRlcm5fc3RyaW5nKCJlbmFibGUt
cmVnaW9uLWJhc2VkLWNvbHVtbnMiKSkKKyAgICAgICAgc2V0dGluZ3MtPnNldFJlZ2lvbkJhc2Vk
Q29sdW1uc0VuYWJsZWQoZ192YWx1ZV9nZXRfYm9vbGVhbigmdmFsdWUpKTsKICAgICBlbHNlIGlm
IChuYW1lID09IGdfaW50ZXJuX3N0cmluZygiamF2YXNjcmlwdC1jYW4tb3Blbi13aW5kb3dzLWF1
dG9tYXRpY2FsbHkiKSkKICAgICAgICAgc2V0dGluZ3MtPnNldEphdmFTY3JpcHRDYW5PcGVuV2lu
ZG93c0F1dG9tYXRpY2FsbHkoZ192YWx1ZV9nZXRfYm9vbGVhbigmdmFsdWUpKTsKICAgICBlbHNl
IGlmIChuYW1lID09IGdfaW50ZXJuX3N0cmluZygiamF2YXNjcmlwdC1jYW4tYWNjZXNzLWNsaXBi
b2FyZCIpKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>202822</attachid>
            <date>2013-05-24 08:15:00 -0700</date>
            <delta_ts>2013-06-12 12:24:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-116611-20130524171349.patch</filename>
            <type>text/plain</type>
            <size>4339</size>
            <attacher name="Morten Stenshorne">mstensho</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwNTExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNmRmYjlkNTY2OTAzMzA5
ZGJiMGJlMTY5NDJlMzQxYmQyMmJmZWMyZi4uZWY5MTI2NDI4YzViNzI5MjEwMDgwYzcwYmEyMjhi
NDEwMmQwN2U1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEzLTA1LTI0ICBNb3J0
ZW4gU3RlbnNob3JuZSAgPG1zdGVuc2hvQG9wZXJhLmNvbT4KKworICAgICAgICBbR1RLXSBOZWVk
IGEgd2F5IHRvIGVuYWJsZSByZWdpb24gYmFzZWQgY29sdW1ucyBmcm9tIHRoZSBjb21tYW5kIGxp
bmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNjYx
MQorCisgICAgICAgIEFkZCBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZSB0byBlbmFibGUgZXhwZXJp
bWVudGFsIGZlYXR1cmVzIC0gYnVnIDExNjYxMS4KKworICAgICAgICBUaGlzIHByb3ZpZGVzIGEg
bWVhbnMgdG8gZW5hYmxlIGV4cGVyaW1lbnRhbCBmZWF0dXJlcyB3aXRob3V0IHBvbGx1dGluZwor
ICAgICAgICB0aGUgcHVibGljIEFQSS4KKworICAgICAgICBFbnZpcm9ubWVudCB2YXJpYWJsZSBu
YW1lOiBXRUJLSVRHVEtfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTCisKKyAgICAgICAgRm9ybWF0OiBX
RUJLSVRHVEtfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTPSI8ZmVhdHVyZTE+PTEsPGZlYXR1cmUyPj0x
LC4uLiIKKyAgICAgICAgT3IsIHRvIGVuYWJsZSBhbGwgZXhwZXJpbWVudGFsIGZlYXR1cmVzOiBX
RUJLSVRHVEtfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTPWFsbAorCisgICAgICAgIFNvIGZhciB0aGUg
b25seSBmZWF0dXJlIGlzIHJlZ2lvbiBiYXNlZCBjb2x1bW5zIChpbXBsZW1lbnQgbXVsdGljb2wg
dXNpbmcKKyAgICAgICAgdGhlIENTUyByZWdpb25zIGltcGxlbWVudGF0aW9uIHJhdGhlciB0aGFu
IENvbHVtbkluZm8gJiBjbykgLSBSRUdJT05fQkFTRURfQ09MVU1OUy4KKworICAgICAgICBFeGFt
cGxlOiBXRUJLSVRHVEtfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTPSJSRUdJT05fQkFTRURfQ09MVU1O
Uz0xIgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
VUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0U2V0dGluZ3MuY3BwOgorICAgICAgICAoX1dlYktpdFNl
dHRpbmdzUHJpdmF0ZTo6X1dlYktpdFNldHRpbmdzUHJpdmF0ZSk6CisgICAgICAgIChfV2ViS2l0
U2V0dGluZ3NQcml2YXRlKToKKyAgICAgICAgKEV4cGVyaW1lbnRhbEZlYXR1cmVzKToKKyAgICAg
ICAgKFNldHRpbmcpOgorICAgICAgICAoaXNFbmFibGVkKToKKyAgICAgICAgKF9XZWJLaXRTZXR0
aW5nc1ByaXZhdGU6OmFwcGx5RXhwZXJpbWVudGFsRmVhdHVyZXMpOgorCiAyMDEzLTA1LTIyICBN
aWNoYcWCIFBha3XFgmEgdmVsIFJ1dGthICA8bS5wYWt1bGFAc2Ftc3VuZy5jb20+CiAKICAgICAg
ICAgW0VGTF1bV0syXSBDaGFuZ2UgRXdrX0NvbnRleHRfTWVudV9JdGVtJ3MgcGFyZW50IG1lbnUg
dG8gcmF3IHBvaW50ZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Z3RrL1dlYktpdFNldHRpbmdzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3Rr
L1dlYktpdFNldHRpbmdzLmNwcAppbmRleCA0Y2U4NDQyYTE1OTNmNDFjMDIxNzgwMmFlZjE0ZmMw
ZTQ3OWJiZWFlLi44ODQzNTRhZGMxMThiNzBhMjM1YTg2ODAzM2I3YTQwMTQxOWMyYzRlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRTZXR0aW5ncy5j
cHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0U2V0dGluZ3Mu
Y3BwCkBAIC01MSw4ICs1MSwxMiBAQCBzdHJ1Y3QgX1dlYktpdFNldHRpbmdzUHJpdmF0ZSB7CiAg
ICAgICAgIGZhbnRhc3lGb250RmFtaWx5ID0gcHJlZmVyZW5jZXMtPmZhbnRhc3lGb250RmFtaWx5
KCkudXRmOCgpOwogICAgICAgICBwaWN0b2dyYXBoRm9udEZhbWlseSA9IHByZWZlcmVuY2VzLT5w
aWN0b2dyYXBoRm9udEZhbWlseSgpLnV0ZjgoKTsKICAgICAgICAgZGVmYXVsdENoYXJzZXQgPSBw
cmVmZXJlbmNlcy0+ZGVmYXVsdFRleHRFbmNvZGluZ05hbWUoKS51dGY4KCk7CisKKyAgICAgICAg
YXBwbHlFeHBlcmltZW50YWxGZWF0dXJlcygpOwogICAgIH0KIAorICAgIHZvaWQgYXBwbHlFeHBl
cmltZW50YWxGZWF0dXJlcygpOworCiAgICAgUmVmUHRyPFdlYlByZWZlcmVuY2VzPiBwcmVmZXJl
bmNlczsKICAgICBDU3RyaW5nIGRlZmF1bHRGb250RmFtaWx5OwogICAgIENTdHJpbmcgbW9ub3Nw
YWNlRm9udEZhbWlseTsKQEAgLTY3LDYgKzcxLDcxIEBAIHN0cnVjdCBfV2ViS2l0U2V0dGluZ3NQ
cml2YXRlIHsKICAgICBib29sIHpvb21UZXh0T25seTsKIH07CiAKK25hbWVzcGFjZSBFeHBlcmlt
ZW50YWxGZWF0dXJlcyB7CisjaWYgMAorfQorI2VuZGlmCisKK2VudW0gRmVhdHVyZSB7CisgICAg
UkVHSU9OX0JBU0VEX0NPTFVNTlMKK307CisKK3N0cnVjdCBTZXR0aW5nIHsKKyAgICBGZWF0dXJl
IGZlYXR1cmU7CisgICAgY29uc3QgY2hhciogZmVhdHVyZVN0cjsKKyAgICBib29sIGVuYWJsZWQ7
Cit9IHNldHRpbmdzW10gPSB7CisgICAgeyBSRUdJT05fQkFTRURfQ09MVU1OUywgIlJFR0lPTl9C
QVNFRF9DT0xVTU5TIiwgZmFsc2UgfQorfTsKKworYm9vbCBlbnZQYXJzZWQ7CisKK3ZvaWQgcGFy
c2VFbnYoKQoreworICAgIGlmIChjb25zdCBjaGFyKiBkYXRhID0gZ2V0ZW52KCJXRUJLSVRHVEtf
RVhQRVJJTUVOVEFMX0ZFQVRVUkVTIikpIHsKKyAgICAgICAgY29uc3QgaW50IGZlYXR1cmVDb3Vu
dCA9IHNpemVvZihzZXR0aW5ncykgLyBzaXplb2YoU2V0dGluZyk7CisgICAgICAgIGlmICghc3Ry
Y21wKGRhdGEsICJhbGwiKSkgeworICAgICAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBmZWF0
dXJlQ291bnQ7IGkrKykKKyAgICAgICAgICAgICAgICBzZXR0aW5nc1tpXS5lbmFibGVkID0gdHJ1
ZTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHdoaWxlIChkYXRhICYmICpkYXRhKSB7
CisgICAgICAgICAgICAgICAgaWYgKGNvbnN0IGNoYXIqIGtleUVuZCA9IHN0cnBicmsoZGF0YSwg
Ij0iKSkgeworICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyKiBrZXlTdGFydCA9IGRhdGE7
CisgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIHZhbFN0YXJ0ID0ga2V5RW5kICsgMTsK
KyAgICAgICAgICAgICAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBmZWF0dXJlQ291bnQ7IGkr
KykgeworICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFzdHJuY21wKHNldHRpbmdzW2ldLmZl
YXR1cmVTdHIsIGtleVN0YXJ0LCBrZXlFbmQgLSBrZXlTdGFydCkpIHsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzZXR0aW5nc1tpXS5lbmFibGVkID0gKnZhbFN0YXJ0ICYmICp2YWxTdGFy
dCAtICcwJzsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAg
ICBkYXRhID0gc3RycGJyayh2YWxTdGFydCwgIiwiKTsKKyAgICAgICAgICAgICAgICAgICAgaWYg
KGRhdGEpCisgICAgICAgICAgICAgICAgICAgICAgICBkYXRhKys7CisgICAgICAgICAgICAgICAg
fSBlbHNlCisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQorICAgICAg
ICB9CisgICAgfQorICAgIGVudlBhcnNlZCA9IHRydWU7Cit9CisKK2Jvb2wgaXNFbmFibGVkKEZl
YXR1cmUgZmVhdHVyZSkKK3sKKyAgICBpZiAoIWVudlBhcnNlZCkKKyAgICAgICAgcGFyc2VFbnYo
KTsKKyAgICByZXR1cm4gc2V0dGluZ3NbZmVhdHVyZV0uZW5hYmxlZDsKK30KKworI2lmIDAKK3sK
KyNlbmRpZgorfSAvLyBuYW1lc3BhY2UgRXhwZXJpbWVudGFsRmVhdHVyZXMKKwordm9pZCBfV2Vi
S2l0U2V0dGluZ3NQcml2YXRlOjphcHBseUV4cGVyaW1lbnRhbEZlYXR1cmVzKCkKK3sKKyAgICBw
cmVmZXJlbmNlcy5nZXQoKS0+c2V0UmVnaW9uQmFzZWRDb2x1bW5zRW5hYmxlZChFeHBlcmltZW50
YWxGZWF0dXJlczo6aXNFbmFibGVkKEV4cGVyaW1lbnRhbEZlYXR1cmVzOjpSRUdJT05fQkFTRURf
Q09MVU1OUykpOworfQorCiAvKioKICAqIFNFQ1RJT046V2ViS2l0U2V0dGluZ3MKICAqIEBzaG9y
dF9kZXNjcmlwdGlvbjogQ29udHJvbCB0aGUgYmVoYXZpb3VyIG9mICNXZWJLaXRXZWJWaWV3PCEt
LSAtLT5zCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>204498</attachid>
            <date>2013-06-12 12:24:50 -0700</date>
            <delta_ts>2013-06-13 05:50:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-116611-20130612212310.patch</filename>
            <type>text/plain</type>
            <size>4296</size>
            <attacher name="Morten Stenshorne">mstensho</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwNTExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNmRmYjlkNTY2OTAzMzA5
ZGJiMGJlMTY5NDJlMzQxYmQyMmJmZWMyZi4uMTE1YjVlOTA2MTQxZmUwYmQ1NjdhNTMzMjA5N2Zj
NTNiNzg3NDQwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEzLTA2LTEyICBNb3J0
ZW4gU3RlbnNob3JuZSAgPG1zdGVuc2hvQG9wZXJhLmNvbT4KKworICAgICAgICBbR1RLXSBOZWVk
IGEgd2F5IHRvIGVuYWJsZSByZWdpb24gYmFzZWQgY29sdW1ucyBmcm9tIHRoZSBjb21tYW5kIGxp
bmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNjYx
MQorCisgICAgICAgIEFkZCBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZSB0byBlbmFibGUgZXhwZXJp
bWVudGFsIGZlYXR1cmVzIC0gYnVnIDExNjYxMS4KKworICAgICAgICBUaGlzIHByb3ZpZGVzIGEg
bWVhbnMgdG8gZW5hYmxlIGV4cGVyaW1lbnRhbCBmZWF0dXJlcyB3aXRob3V0IHBvbGx1dGluZwor
ICAgICAgICB0aGUgcHVibGljIEFQSS4KKworICAgICAgICBFbnZpcm9ubWVudCB2YXJpYWJsZSBu
YW1lOiBXRUJLSVRHVEtfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTCisKKyAgICAgICAgRm9ybWF0OiBX
RUJLSVRHVEtfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTPSI8ZmVhdHVyZTE+PTEsPGZlYXR1cmUyPj0x
LC4uLiIKKyAgICAgICAgT3IsIHRvIGVuYWJsZSBhbGwgZXhwZXJpbWVudGFsIGZlYXR1cmVzOiBX
RUJLSVRHVEtfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTPWFsbAorCisgICAgICAgIFNvIGZhciB0aGUg
b25seSBmZWF0dXJlIGlzIHJlZ2lvbiBiYXNlZCBjb2x1bW5zIChpbXBsZW1lbnQgbXVsdGljb2wg
dXNpbmcKKyAgICAgICAgdGhlIENTUyByZWdpb25zIGltcGxlbWVudGF0aW9uIHJhdGhlciB0aGFu
IENvbHVtbkluZm8gJiBjbykgLSBSRUdJT05fQkFTRURfQ09MVU1OUy4KKworICAgICAgICBFeGFt
cGxlOiBXRUJLSVRHVEtfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTPSJSRUdJT05fQkFTRURfQ09MVU1O
Uz0xIgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
VUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0U2V0dGluZ3MuY3BwOgorICAgICAgICAoX1dlYktpdFNl
dHRpbmdzUHJpdmF0ZTo6X1dlYktpdFNldHRpbmdzUHJpdmF0ZSk6CisgICAgICAgIChfV2ViS2l0
U2V0dGluZ3NQcml2YXRlKToKKyAgICAgICAgKEV4cGVyaW1lbnRhbEZlYXR1cmVzKToKKyAgICAg
ICAgKFNldHRpbmcpOgorICAgICAgICAoaXNFbmFibGVkKToKKyAgICAgICAgKF9XZWJLaXRTZXR0
aW5nc1ByaXZhdGU6OmFwcGx5RXhwZXJpbWVudGFsRmVhdHVyZXMpOgorCiAyMDEzLTA1LTIyICBN
aWNoYcWCIFBha3XFgmEgdmVsIFJ1dGthICA8bS5wYWt1bGFAc2Ftc3VuZy5jb20+CiAKICAgICAg
ICAgW0VGTF1bV0syXSBDaGFuZ2UgRXdrX0NvbnRleHRfTWVudV9JdGVtJ3MgcGFyZW50IG1lbnUg
dG8gcmF3IHBvaW50ZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Z3RrL1dlYktpdFNldHRpbmdzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3Rr
L1dlYktpdFNldHRpbmdzLmNwcAppbmRleCA0Y2U4NDQyYTE1OTNmNDFjMDIxNzgwMmFlZjE0ZmMw
ZTQ3OWJiZWFlLi40NjZlODExOWM3YzgzYWE3ZTQ3YzE0YmZkMDQyNTI4NDUxMzE3MTQxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRTZXR0aW5ncy5j
cHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0U2V0dGluZ3Mu
Y3BwCkBAIC01MSw4ICs1MSwxMiBAQCBzdHJ1Y3QgX1dlYktpdFNldHRpbmdzUHJpdmF0ZSB7CiAg
ICAgICAgIGZhbnRhc3lGb250RmFtaWx5ID0gcHJlZmVyZW5jZXMtPmZhbnRhc3lGb250RmFtaWx5
KCkudXRmOCgpOwogICAgICAgICBwaWN0b2dyYXBoRm9udEZhbWlseSA9IHByZWZlcmVuY2VzLT5w
aWN0b2dyYXBoRm9udEZhbWlseSgpLnV0ZjgoKTsKICAgICAgICAgZGVmYXVsdENoYXJzZXQgPSBw
cmVmZXJlbmNlcy0+ZGVmYXVsdFRleHRFbmNvZGluZ05hbWUoKS51dGY4KCk7CisKKyAgICAgICAg
YXBwbHlFeHBlcmltZW50YWxGZWF0dXJlcygpOwogICAgIH0KIAorICAgIHZvaWQgYXBwbHlFeHBl
cmltZW50YWxGZWF0dXJlcygpOworCiAgICAgUmVmUHRyPFdlYlByZWZlcmVuY2VzPiBwcmVmZXJl
bmNlczsKICAgICBDU3RyaW5nIGRlZmF1bHRGb250RmFtaWx5OwogICAgIENTdHJpbmcgbW9ub3Nw
YWNlRm9udEZhbWlseTsKQEAgLTY3LDYgKzcxLDY2IEBAIHN0cnVjdCBfV2ViS2l0U2V0dGluZ3NQ
cml2YXRlIHsKICAgICBib29sIHpvb21UZXh0T25seTsKIH07CiAKK25hbWVzcGFjZSBFeHBlcmlt
ZW50YWxGZWF0dXJlcyB7CisKK2VudW0gRmVhdHVyZSB7CisgICAgUmVnaW9uQmFzZWRDb2x1bW5z
Cit9OworCitzdHJ1Y3QgU2V0dGluZyB7CisgICAgRmVhdHVyZSBmZWF0dXJlOworICAgIGNvbnN0
IGNoYXIqIGZlYXR1cmVTdHI7CisgICAgYm9vbCBlbmFibGVkOworfSBzZXR0aW5nc1tdID0gewor
ICAgIHsgUmVnaW9uQmFzZWRDb2x1bW5zLCAiUkVHSU9OX0JBU0VEX0NPTFVNTlMiLCBmYWxzZSB9
Cit9OworCit2b2lkIHBhcnNlRW52aXJvbm1lbnQoKQoreworICAgIGNvbnN0IGNoYXIqIGRhdGEg
PSBnZXRlbnYoIldFQktJVEdUS19FWFBFUklNRU5UQUxfRkVBVFVSRVMiKTsKKyAgICBpZiAoIWRh
dGEpCisgICAgICAgIHJldHVybjsKKyAgICBjb25zdCBpbnQgZmVhdHVyZUNvdW50ID0gV1RGX0FS
UkFZX0xFTkdUSChzZXR0aW5ncyk7CisgICAgaWYgKCFzdHJjbXAoZGF0YSwgImFsbCIpKSB7Cisg
ICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgZmVhdHVyZUNvdW50OyBpKyspCisgICAgICAgICAg
ICBzZXR0aW5nc1tpXS5lbmFibGVkID0gdHJ1ZTsKKyAgICB9IGVsc2UgeworICAgICAgICBWZWN0
b3I8U3RyaW5nPiB2YXJpYWJsZXM7CisgICAgICAgIFN0cmluZyhkYXRhKS5zcGxpdCgiLCIsIGZh
bHNlLCB2YXJpYWJsZXMpOworICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgdmFyaWFi
bGVzLnNpemUoKTsgaSsrKSB7CisgICAgICAgICAgICBWZWN0b3I8U3RyaW5nPiBrZXlBbmRWYWx1
ZTsKKyAgICAgICAgICAgIHZhcmlhYmxlc1tpXS5zcGxpdCgiPSIsIGZhbHNlLCBrZXlBbmRWYWx1
ZSk7CisgICAgICAgICAgICBpZiAoa2V5QW5kVmFsdWUuc2l6ZSgpID09IDIpIHsKKyAgICAgICAg
ICAgICAgICBTdHJpbmcga2V5ID0ga2V5QW5kVmFsdWVbMF07CisgICAgICAgICAgICAgICAgU3Ry
aW5nIHZhbHVlID0ga2V5QW5kVmFsdWVbMV07CisgICAgICAgICAgICAgICAgZm9yIChpbnQgaSA9
IDA7IGkgPCBmZWF0dXJlQ291bnQ7IGkrKykgeworICAgICAgICAgICAgICAgICAgICBpZiAoa2V5
ID09IHNldHRpbmdzW2ldLmZlYXR1cmVTdHIpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHNl
dHRpbmdzW2ldLmVuYWJsZWQgPSB2YWx1ZVswXSAtICcwJzsKKyAgICAgICAgICAgICAgICAgICAg
ICAgIGJyZWFrOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorfQorCitib29sIGlzRW5hYmxlZChGZWF0dXJl
IGZlYXR1cmUpCit7CisgICAgc3RhdGljIGJvb2wgZW52aXJvbm1lbnRQYXJzZWQ7CisgICAgaWYg
KCFlbnZpcm9ubWVudFBhcnNlZCkgeworICAgICAgICBwYXJzZUVudmlyb25tZW50KCk7CisgICAg
ICAgIGVudmlyb25tZW50UGFyc2VkID0gdHJ1ZTsKKyAgICB9CisgICAgcmV0dXJuIHNldHRpbmdz
W2ZlYXR1cmVdLmVuYWJsZWQ7Cit9CisKK30gLy8gbmFtZXNwYWNlIEV4cGVyaW1lbnRhbEZlYXR1
cmVzCisKK3ZvaWQgX1dlYktpdFNldHRpbmdzUHJpdmF0ZTo6YXBwbHlFeHBlcmltZW50YWxGZWF0
dXJlcygpCit7CisgICAgcHJlZmVyZW5jZXMuZ2V0KCktPnNldFJlZ2lvbkJhc2VkQ29sdW1uc0Vu
YWJsZWQoRXhwZXJpbWVudGFsRmVhdHVyZXM6OmlzRW5hYmxlZChFeHBlcmltZW50YWxGZWF0dXJl
czo6UmVnaW9uQmFzZWRDb2x1bW5zKSk7Cit9CisKIC8qKgogICogU0VDVElPTjpXZWJLaXRTZXR0
aW5ncwogICogQHNob3J0X2Rlc2NyaXB0aW9uOiBDb250cm9sIHRoZSBiZWhhdmlvdXIgb2YgI1dl
YktpdFdlYlZpZXc8IS0tIC0tPnMK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>204576</attachid>
            <date>2013-06-13 05:50:17 -0700</date>
            <delta_ts>2013-06-14 02:02:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-116611-20130613144845.patch</filename>
            <type>text/plain</type>
            <size>11588</size>
            <attacher name="Morten Stenshorne">mstensho</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwNTExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNmRmYjlkNTY2OTAzMzA5
ZGJiMGJlMTY5NDJlMzQxYmQyMmJmZWMyZi4uMGMyMzliMGVhMzQzNjBiNmZkODBiZTZjYzJkODU1
NGYxMmQyNTRjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDEzLTA2LTEzICBNb3J0
ZW4gU3RlbnNob3JuZSAgPG1zdGVuc2hvQG9wZXJhLmNvbT4KKworICAgICAgICBbR1RLXSBOZWVk
IGEgd2F5IHRvIGVuYWJsZSByZWdpb24gYmFzZWQgY29sdW1ucyBmcm9tIHRoZSBjb21tYW5kIGxp
bmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNjYx
MQorCisgICAgICAgIEFkZCBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZSB0byBlbmFibGUgZXhwZXJp
bWVudGFsIGZlYXR1cmVzLgorCisgICAgICAgIFRoaXMgcHJvdmlkZXMgYSBtZWFucyB0byBlbmFi
bGUgZXhwZXJpbWVudGFsIGZlYXR1cmVzIHdpdGhvdXQgcG9sbHV0aW5nCisgICAgICAgIHRoZSBw
dWJsaWMgQVBJLgorCisgICAgICAgIEVudmlyb25tZW50IHZhcmlhYmxlIG5hbWU6IFdFQktJVEdU
S19FWFBFUklNRU5UQUxfRkVBVFVSRVMKKworICAgICAgICBGb3JtYXQ6IFdFQktJVEdUS19FWFBF
UklNRU5UQUxfRkVBVFVSRVM9IjxmZWF0dXJlMT49MSw8ZmVhdHVyZTI+PTEsLi4uIgorICAgICAg
ICBPciwgdG8gZW5hYmxlIGFsbCBleHBlcmltZW50YWwgZmVhdHVyZXM6IFdFQktJVEdUS19FWFBF
UklNRU5UQUxfRkVBVFVSRVM9YWxsCisKKyAgICAgICAgU28gZmFyIHRoZSBvbmx5IGZlYXR1cmUg
aXMgcmVnaW9uIGJhc2VkIGNvbHVtbnMgKGltcGxlbWVudCBtdWx0aWNvbCB1c2luZworICAgICAg
ICB0aGUgQ1NTIHJlZ2lvbnMgaW1wbGVtZW50YXRpb24gcmF0aGVyIHRoYW4gQ29sdW1uSW5mbyAm
IGNvKSAtIFJFR0lPTl9CQVNFRF9DT0xVTU5TLgorCisgICAgICAgIEV4YW1wbGU6IFdFQktJVEdU
S19FWFBFUklNRU5UQUxfRkVBVFVSRVM9IlJFR0lPTl9CQVNFRF9DT0xVTU5TPTEiCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5s
aXN0LmFtOgorICAgICAgICAqIFBsYXRmb3JtR1RLLmNtYWtlOgorICAgICAgICAqIFVJUHJvY2Vz
cy9BUEkvZ3RrL0V4cGVyaW1lbnRhbEZlYXR1cmVzLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJL
aXQpOgorICAgICAgICAoU2V0dGluZyk6CisgICAgICAgIChXZWJLaXQ6OkV4cGVyaW1lbnRhbEZl
YXR1cmVzOjpFeHBlcmltZW50YWxGZWF0dXJlcyk6CisgICAgICAgIChXZWJLaXQ6OkV4cGVyaW1l
bnRhbEZlYXR1cmVzOjppc0VuYWJsZWQpOgorICAgICAgICAoV2ViS2l0OjpFeHBlcmltZW50YWxG
ZWF0dXJlczo6c2V0RW5hYmxlQnlOYW1lKToKKyAgICAgICAgKFdlYktpdDo6RXhwZXJpbWVudGFs
RmVhdHVyZXM6OnBhcnNlRW52aXJvbm1lbnQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3Rr
L0V4cGVyaW1lbnRhbEZlYXR1cmVzLmg6IEFkZGVkLgorICAgICAgICAoV2ViS2l0KToKKyAgICAg
ICAgKEV4cGVyaW1lbnRhbEZlYXR1cmVzKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2d0ay9X
ZWJLaXRTZXR0aW5ncy5jcHA6CisgICAgICAgICh3ZWJLaXRTZXR0aW5nc0NvbnN0cnVjdGVkKToK
KyAgICAgICAgKHdlYmtpdF9zZXR0aW5nc19jbGFzc19pbml0KToKKyAgICAgICAgKiBVSVByb2Nl
c3MvQVBJL2d0ay9kb2NzL3dlYmtpdDJndGstc2VjdGlvbnMudHh0OgorCiAyMDEzLTA1LTIyICBN
aWNoYcWCIFBha3XFgmEgdmVsIFJ1dGthICA8bS5wYWt1bGFAc2Ftc3VuZy5jb20+CiAKICAgICAg
ICAgW0VGTF1bV0syXSBDaGFuZ2UgRXdrX0NvbnRleHRfTWVudV9JdGVtJ3MgcGFyZW50IG1lbnUg
dG8gcmF3IHBvaW50ZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0dOVW1ha2VmaWxlLmxp
c3QuYW0gYi9Tb3VyY2UvV2ViS2l0Mi9HTlVtYWtlZmlsZS5saXN0LmFtCmluZGV4IGRhYzI5MjUx
MzgzZmFiMmM1MmU3YjliMWVmMWMyZjEwNWI2NjBjNWYuLmNlZTI5Y2I3Nzk4YjI5Yzc4N2Q0MjYy
NGI1ZWZjYmYyM2M1NTQ3OTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0dOVW1ha2VmaWxl
Lmxpc3QuYW0KKysrIGIvU291cmNlL1dlYktpdDIvR05VbWFrZWZpbGUubGlzdC5hbQpAQCAtNjQ3
LDYgKzY0Nyw4IEBAIHdlYmtpdDJfc291cmNlcyArPSBcCiAJU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9DL1dLVmlicmF0aW9uLmNwcCBcCiAJU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9DL1dLVmlicmF0aW9uLmggXAogCVNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvY3BwL1dL
UmV0YWluUHRyLmggXAorCVNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL0V4cGVyaW1l
bnRhbEZlYXR1cmVzLmNwcCBcCisJU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvRXhw
ZXJpbWVudGFsRmVhdHVyZXMuaCBcCiAJU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsv
UGFnZUNsaWVudEltcGwuaCBcCiAJU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvUGFn
ZUNsaWVudEltcGwuY3BwIFwKIAlTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJL
aXRBdXRoZW50aWNhdGlvbkRpYWxvZy5jcHAgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
UGxhdGZvcm1HVEsuY21ha2UgYi9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybUdUSy5jbWFrZQppbmRl
eCAxNTBlMDIzMmQ0ZjRmMTc5MDliMDk5NzQzZTBhNjM0YTUxODQyZWJlLi41MjJjZjg5NGU0ZTRl
N2NiNzExNDg2ZDIxODI0OTZiYzUyNWNlNjdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9Q
bGF0Zm9ybUdUSy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybUdUSy5jbWFrZQpA
QCAtMTA0LDYgKzEwNCw4IEBAIGxpc3QoQVBQRU5EIFdlYktpdDJfU09VUkNFUwogICAgIFdlYlBy
b2Nlc3Mvc291cC9XZWJLaXRTb3VwUmVxdWVzdEdlbmVyaWMuY3BwCiAgICAgV2ViUHJvY2Vzcy9z
b3VwL1dlYktpdFNvdXBSZXF1ZXN0SW5wdXRTdHJlYW0uY3BwCiAKKyAgICBVSVByb2Nlc3MvQVBJ
L2d0ay9FeHBlcmltZW50YWxGZWF0dXJlcy5jcHAKKyAgICBVSVByb2Nlc3MvQVBJL2d0ay9FeHBl
cmltZW50YWxGZWF0dXJlcy5oCiAgICAgVUlQcm9jZXNzL0FQSS9ndGsvUGFnZUNsaWVudEltcGwu
Y3BwCiAgICAgVUlQcm9jZXNzL0FQSS9ndGsvUGFnZUNsaWVudEltcGwuaAogICAgIFVJUHJvY2Vz
cy9BUEkvZ3RrL3dlYmtpdDIuaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9ndGsvRXhwZXJpbWVudGFsRmVhdHVyZXMuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9ndGsvRXhwZXJpbWVudGFsRmVhdHVyZXMuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJkMjg5NzFj
ODA4MDBkNWNkOTIxZTI2NTM1MjJlYWMxYTgyM2MwZmQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9FeHBlcmltZW50YWxGZWF0dXJlcy5jcHAKQEAg
LTAsMCArMSw4NiBAQAorLyoKKyAqIENvcHlyaWdodCAoYykgMjAxMywgT3BlcmEgU29mdHdhcmUg
QVNBLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFt
ZSBvZiBPcGVyYSBTb2Z0d2FyZSBBU0Egbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqICAgIGNvbnRy
aWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZl
ZAorICogICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRl
biBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwKKyAqIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SCisgKiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwKKyAqIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQKKyAqIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5j
bHVkZSAiRXhwZXJpbWVudGFsRmVhdHVyZXMuaCIKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK3N0
cnVjdCBTZXR0aW5nIHsKKyAgICBFeHBlcmltZW50YWxGZWF0dXJlczo6RmVhdHVyZSBmZWF0dXJl
OworICAgIGNvbnN0IGNoYXIqIGZlYXR1cmVTdHI7CisgICAgYm9vbCBlbmFibGVkOworfTsKKwor
c3RhdGljIFNldHRpbmcgc2V0dGluZ3NbXSA9IHsKKyAgICB7IEV4cGVyaW1lbnRhbEZlYXR1cmVz
OjpSZWdpb25CYXNlZENvbHVtbnMsICJSRUdJT05fQkFTRURfQ09MVU1OUyIsIGZhbHNlIH0KK307
CisKK0V4cGVyaW1lbnRhbEZlYXR1cmVzOjpFeHBlcmltZW50YWxGZWF0dXJlcygpCit7CisgICAg
cGFyc2VFbnZpcm9ubWVudCgpOworfQorCitib29sIEV4cGVyaW1lbnRhbEZlYXR1cmVzOjppc0Vu
YWJsZWQoRmVhdHVyZSBmZWF0dXJlKQoreworICAgIHJldHVybiBzZXR0aW5nc1tmZWF0dXJlXS5l
bmFibGVkOworfQorCit2b2lkIEV4cGVyaW1lbnRhbEZlYXR1cmVzOjpzZXRFbmFibGVCeU5hbWUo
Y29uc3QgU3RyaW5nJiBrZXksIGJvb2wgZW5hYmxlKQoreworICAgIGZvciAodW5zaWduZWQgaSA9
IDA7IGkgPCBXVEZfQVJSQVlfTEVOR1RIKHNldHRpbmdzKTsgaSsrKSB7CisgICAgICAgIGlmIChr
ZXkgPT0gc2V0dGluZ3NbaV0uZmVhdHVyZVN0cikgeworICAgICAgICAgICAgc2V0dGluZ3NbaV0u
ZW5hYmxlZCA9IGVuYWJsZTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgfQor
fQorCit2b2lkIEV4cGVyaW1lbnRhbEZlYXR1cmVzOjpwYXJzZUVudmlyb25tZW50KCkKK3sKKyAg
ICBjb25zdCBjaGFyKiBkYXRhID0gZ2V0ZW52KCJXRUJLSVRHVEtfRVhQRVJJTUVOVEFMX0ZFQVRV
UkVTIik7CisgICAgaWYgKCFkYXRhKQorICAgICAgICByZXR1cm47CisgICAgaWYgKCFzdHJjbXAo
ZGF0YSwgImFsbCIpKSB7CisgICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBXVEZfQVJS
QVlfTEVOR1RIKHNldHRpbmdzKTsgaSsrKQorICAgICAgICAgICAgc2V0dGluZ3NbaV0uZW5hYmxl
ZCA9IHRydWU7CisgICAgfSBlbHNlIHsKKyAgICAgICAgVmVjdG9yPFN0cmluZz4gdmFyaWFibGVz
OworICAgICAgICBTdHJpbmcoZGF0YSkuc3BsaXQoJywnLCBmYWxzZSwgdmFyaWFibGVzKTsKKyAg
ICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHZhcmlhYmxlcy5zaXplKCk7IGkrKykgewor
ICAgICAgICAgICAgVmVjdG9yPFN0cmluZz4ga2V5QW5kVmFsdWU7CisgICAgICAgICAgICB2YXJp
YWJsZXNbaV0uc3BsaXQoJz0nLCBmYWxzZSwga2V5QW5kVmFsdWUpOworICAgICAgICAgICAgaWYg
KGtleUFuZFZhbHVlLnNpemUoKSAhPSAyKQorICAgICAgICAgICAgICAgIGNvbnRpbnVlOworICAg
ICAgICAgICAgc2V0RW5hYmxlQnlOYW1lKGtleUFuZFZhbHVlWzBdLCBrZXlBbmRWYWx1ZVsxXVsw
XSAtICcwJyk7CisgICAgICAgIH0KKyAgICB9Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvRXhwZXJpbWVudGFs
RmVhdHVyZXMuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL0V4cGVyaW1lbnRh
bEZlYXR1cmVzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWIwNDIyODg0MGNmZWNmY2Y5ODE2MzQ3OTJhODljZGE2
YzJjODE4NAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Z3RrL0V4cGVyaW1lbnRhbEZlYXR1cmVzLmgKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENvcHly
aWdodCAoYykgMjAxMywgT3BlcmEgU29mdHdhcmUgQVNBLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiBPcGVyYSBTb2Z0d2FyZSBBU0Egbm9y
IHRoZSBuYW1lcyBvZiBpdHMKKyAqICAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAorICogICAgZnJvbSB0aGlzIHNvZnR3YXJl
IHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklC
VVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBI
T0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwKKyAqIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFN
QUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SCisgKiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwKKyAqIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQKKyAqIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjaWZuZGVmIEV4cGVyaW1lbnRhbEZlYXR1cmVzX2gKKyNkZWZpbmUgRXhwZXJpbWVudGFs
RmVhdHVyZXNfaAorCisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFj
ZSBXZWJLaXQgeworCitjbGFzcyBFeHBlcmltZW50YWxGZWF0dXJlcyB7CitwdWJsaWM6CisgICAg
ZW51bSBGZWF0dXJlIHsKKyAgICAgICAgUmVnaW9uQmFzZWRDb2x1bW5zCisgICAgfTsKKworICAg
IEV4cGVyaW1lbnRhbEZlYXR1cmVzKCk7CisKKyAgICBib29sIGlzRW5hYmxlZChGZWF0dXJlKTsK
KworcHJpdmF0ZToKKyAgICB2b2lkIHNldEVuYWJsZUJ5TmFtZShjb25zdCBTdHJpbmcmIGtleSwg
Ym9vbCBlbmFibGUpOworICAgIHZvaWQgcGFyc2VFbnZpcm9ubWVudCgpOworfTsKKworfSAvLyBu
YW1lc3BhY2UgV2ViS2l0CisKKyNlbmRpZiAvLyBFeHBlcmltZW50YWxGZWF0dXJlc19oCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRTZXR0aW5ncy5j
cHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRTZXR0aW5ncy5jcHAK
aW5kZXggNGNlODQ0MmExNTkzZjQxYzAyMTc4MDJhZWYxNGZjMGU0NzliYmVhZS4uNGYxMDRmMjRm
NjM1NDFlMDE2MDA5MDRiMWFlMmM2N2RiZDQ1N2MyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0U2V0dGluZ3MuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFNldHRpbmdzLmNwcApAQCAtMzEsNiArMzEsNyBA
QAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIldlYktpdFNldHRpbmdzLmgiCiAKKyNp
bmNsdWRlICJFeHBlcmltZW50YWxGZWF0dXJlcy5oIgogI2luY2x1ZGUgIldlYktpdFByaXZhdGUu
aCIKICNpbmNsdWRlICJXZWJLaXRTZXR0aW5nc1ByaXZhdGUuaCIKICNpbmNsdWRlIDxXZWJDb3Jl
L1VzZXJBZ2VudEd0ay5oPgpAQCAtMTM3LDYgKzEzOCwxOSBAQCBlbnVtIHsKICAgICBQUk9QX0VO
QUJMRV9XUklURV9DT05TT0xFX01FU1NBR0VTX1RPX1NURE9VVAogfTsKIAorc3RhdGljIHZvaWQg
d2ViS2l0U2V0dGluZ3NDb25zdHJ1Y3RlZChHT2JqZWN0KiBvYmplY3QpCit7CisgICAgR19PQkpF
Q1RfQ0xBU1Mod2Via2l0X3NldHRpbmdzX3BhcmVudF9jbGFzcyktPmNvbnN0cnVjdGVkKG9iamVj
dCk7CisKKyAgICBXZWJLaXRTZXR0aW5nc1ByaXZhdGUqIHByaXYgPSBXRUJLSVRfU0VUVElOR1Mo
b2JqZWN0KS0+cHJpdjsKKyAgICBXZWJQcmVmZXJlbmNlcyogcHJlZnMgPSBwcml2LT5wcmVmZXJl
bmNlcy5nZXQoKTsKKworICAgIEV4cGVyaW1lbnRhbEZlYXR1cmVzIGZlYXR1cmVzOworICAgIGJv
b2wgcmVnaW9uQmFzZWRDb2x1bW5zRW5hYmxlZCA9IGZlYXR1cmVzLmlzRW5hYmxlZChFeHBlcmlt
ZW50YWxGZWF0dXJlczo6UmVnaW9uQmFzZWRDb2x1bW5zKTsKKyAgICBpZiAocHJlZnMtPnJlZ2lv
bkJhc2VkQ29sdW1uc0VuYWJsZWQoKSAhPSByZWdpb25CYXNlZENvbHVtbnNFbmFibGVkKQorICAg
ICAgICBwcmVmcy0+c2V0UmVnaW9uQmFzZWRDb2x1bW5zRW5hYmxlZChyZWdpb25CYXNlZENvbHVt
bnNFbmFibGVkKTsKK30KKwogc3RhdGljIHZvaWQgd2ViS2l0U2V0dGluZ3NTZXRQcm9wZXJ0eShH
T2JqZWN0KiBvYmplY3QsIGd1aW50IHByb3BJZCwgY29uc3QgR1ZhbHVlKiB2YWx1ZSwgR1BhcmFt
U3BlYyogcGFyYW1TcGVjKQogewogICAgIFdlYktpdFNldHRpbmdzKiBzZXR0aW5ncyA9IFdFQktJ
VF9TRVRUSU5HUyhvYmplY3QpOwpAQCAtNDM4LDYgKzQ1Miw3IEBAIHN0YXRpYyB2b2lkIHdlYktp
dFNldHRpbmdzR2V0UHJvcGVydHkoR09iamVjdCogb2JqZWN0LCBndWludCBwcm9wSWQsIEdWYWx1
ZSogdmFsCiBzdGF0aWMgdm9pZCB3ZWJraXRfc2V0dGluZ3NfY2xhc3NfaW5pdChXZWJLaXRTZXR0
aW5nc0NsYXNzKiBrbGFzcykKIHsKICAgICBHT2JqZWN0Q2xhc3MqIGdPYmplY3RDbGFzcyA9IEdf
T0JKRUNUX0NMQVNTKGtsYXNzKTsKKyAgICBnT2JqZWN0Q2xhc3MtPmNvbnN0cnVjdGVkID0gd2Vi
S2l0U2V0dGluZ3NDb25zdHJ1Y3RlZDsKICAgICBnT2JqZWN0Q2xhc3MtPnNldF9wcm9wZXJ0eSA9
IHdlYktpdFNldHRpbmdzU2V0UHJvcGVydHk7CiAgICAgZ09iamVjdENsYXNzLT5nZXRfcHJvcGVy
dHkgPSB3ZWJLaXRTZXR0aW5nc0dldFByb3BlcnR5OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9kb2NzL3dlYmtpdDJndGstc2VjdGlvbnMudHh0IGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvZG9jcy93ZWJraXQyZ3RrLXNlY3Rpb25zLnR4
dAppbmRleCBmMjgwYzYyZGYyOWYyNmIzMjI2MmNkYWRmMmU4ZGEzM2MxZDliOTkwLi4yNGM0NmM0
MjYxYjIxZmM1ZTI0ZjYzZjdmMWYzODZkYzJhMGZhMmI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9kb2NzL3dlYmtpdDJndGstc2VjdGlvbnMudHh0CisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL2RvY3Mvd2Via2l0Mmd0ay1zZWN0aW9u
cy50eHQKQEAgLTEwMTIsMyArMTAxMiwxMiBAQCBXRUJLSVRfV0VCX1BBR0VfR0VUX0NMQVNTCiBX
ZWJLaXRXZWJQYWdlUHJpdmF0ZQogd2Via2l0X3dlYl9wYWdlX2dldF90eXBlCiA8L1NFQ1RJT04+
CisKKzxTRUNUSU9OPgorPEZJTEU+RXhwZXJpbWVudGFsRmVhdHVyZXM8L0ZJTEU+Citpc0VuYWJs
ZWQKKworPFNVQlNFQ1RJT04gUHJpdmF0ZT4KK3BhcnNlRW52aXJvbm1lbnQKK3NldEVuYWJsZUJ5
TmFtZQorPC9TRUNUSU9OPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>204685</attachid>
            <date>2013-06-14 02:02:37 -0700</date>
            <delta_ts>2013-06-14 03:53:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-116611-20130614110104.patch</filename>
            <type>text/plain</type>
            <size>10812</size>
            <attacher name="Morten Stenshorne">mstensho</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwNTExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNmRmYjlkNTY2OTAzMzA5
ZGJiMGJlMTY5NDJlMzQxYmQyMmJmZWMyZi4uY2Y5YzI4MzlmMTBiN2U2ZjIyODhjNmYzM2RkMGY2
MWIxYjhlNDkzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDEzLTA2LTE0ICBNb3J0
ZW4gU3RlbnNob3JuZSAgPG1zdGVuc2hvQG9wZXJhLmNvbT4KKworICAgICAgICBbR1RLXSBOZWVk
IGEgd2F5IHRvIGVuYWJsZSByZWdpb24gYmFzZWQgY29sdW1ucyBmcm9tIHRoZSBjb21tYW5kIGxp
bmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNjYx
MQorCisgICAgICAgIEFkZCBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZSB0byBlbmFibGUgZXhwZXJp
bWVudGFsIGZlYXR1cmVzLgorCisgICAgICAgIFRoaXMgcHJvdmlkZXMgYSBtZWFucyB0byBlbmFi
bGUgZXhwZXJpbWVudGFsIGZlYXR1cmVzIHdpdGhvdXQgcG9sbHV0aW5nCisgICAgICAgIHRoZSBw
dWJsaWMgQVBJLgorCisgICAgICAgIEVudmlyb25tZW50IHZhcmlhYmxlIG5hbWU6IFdFQktJVEdU
S19FWFBFUklNRU5UQUxfRkVBVFVSRVMKKworICAgICAgICBGb3JtYXQ6IFdFQktJVEdUS19FWFBF
UklNRU5UQUxfRkVBVFVSRVM9IjxmZWF0dXJlMT49MSw8ZmVhdHVyZTI+PTEsLi4uIgorICAgICAg
ICBPciwgdG8gZW5hYmxlIGFsbCBleHBlcmltZW50YWwgZmVhdHVyZXM6IFdFQktJVEdUS19FWFBF
UklNRU5UQUxfRkVBVFVSRVM9YWxsCisKKyAgICAgICAgU28gZmFyIHRoZSBvbmx5IGZlYXR1cmUg
aXMgcmVnaW9uIGJhc2VkIGNvbHVtbnMgKGltcGxlbWVudCBtdWx0aWNvbCB1c2luZworICAgICAg
ICB0aGUgQ1NTIHJlZ2lvbnMgaW1wbGVtZW50YXRpb24gcmF0aGVyIHRoYW4gQ29sdW1uSW5mbyAm
IGNvKSAtIFJFR0lPTl9CQVNFRF9DT0xVTU5TLgorCisgICAgICAgIEV4YW1wbGU6IFdFQktJVEdU
S19FWFBFUklNRU5UQUxfRkVBVFVSRVM9IlJFR0lPTl9CQVNFRF9DT0xVTU5TPTEiCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5s
aXN0LmFtOgorICAgICAgICAqIFBsYXRmb3JtR1RLLmNtYWtlOgorICAgICAgICAqIFVJUHJvY2Vz
cy9BUEkvZ3RrL1dlYktpdFNldHRpbmdzLmNwcDoKKyAgICAgICAgKHdlYktpdFNldHRpbmdzQ29u
c3RydWN0ZWQpOgorICAgICAgICAod2Via2l0X3NldHRpbmdzX2NsYXNzX2luaXQpOgorICAgICAg
ICAqIFVJUHJvY2Vzcy9ndGsvRXhwZXJpbWVudGFsRmVhdHVyZXMuY3BwOiBBZGRlZC4KKyAgICAg
ICAgKFdlYktpdCk6CisgICAgICAgIChTZXR0aW5nKToKKyAgICAgICAgKFdlYktpdDo6RXhwZXJp
bWVudGFsRmVhdHVyZXM6OkV4cGVyaW1lbnRhbEZlYXR1cmVzKToKKyAgICAgICAgKFdlYktpdDo6
RXhwZXJpbWVudGFsRmVhdHVyZXM6OmlzRW5hYmxlZCk6CisgICAgICAgIChXZWJLaXQ6OkV4cGVy
aW1lbnRhbEZlYXR1cmVzOjpzZXRFbmFibGVCeU5hbWUpOgorICAgICAgICAoV2ViS2l0OjpFeHBl
cmltZW50YWxGZWF0dXJlczo6cGFyc2VFbnZpcm9ubWVudCk6CisgICAgICAgICogVUlQcm9jZXNz
L2d0ay9FeHBlcmltZW50YWxGZWF0dXJlcy5oOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdCk6Cisg
ICAgICAgIChFeHBlcmltZW50YWxGZWF0dXJlcyk6CisKIDIwMTMtMDUtMjIgIE1pY2hhxYIgUGFr
dcWCYSB2ZWwgUnV0a2EgIDxtLnBha3VsYUBzYW1zdW5nLmNvbT4KIAogICAgICAgICBbRUZMXVtX
SzJdIENoYW5nZSBFd2tfQ29udGV4dF9NZW51X0l0ZW0ncyBwYXJlbnQgbWVudSB0byByYXcgcG9p
bnRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvR05VbWFrZWZpbGUubGlzdC5hbSBiL1Nv
dXJjZS9XZWJLaXQyL0dOVW1ha2VmaWxlLmxpc3QuYW0KaW5kZXggZGFjMjkyNTEzODNmYWIyYzUy
ZTdiOWIxZWYxYzJmMTA1YjY2MGM1Zi4uZmZkMjNjMGE2OTQ5OGMzN2RhYzljMGU2MmQ0ZmRmNDVj
NDIwODI1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvR05VbWFrZWZpbGUubGlzdC5hbQor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9HTlVtYWtlZmlsZS5saXN0LmFtCkBAIC04MTIsNiArODEyLDcg
QEAgd2Via2l0Ml9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvR2VvbG9j
YXRpb25QZXJtaXNzaW9uUmVxdWVzdFByb3h5LmNwcCBcCiAJU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0dlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RQcm94eS5oIFwKIAlTb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvY2Fpcm8vQmFja2luZ1N0b3JlQ2Fpcm8uY3BwIFwKKwlTb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvZ3RrL0V4cGVyaW1lbnRhbEZlYXR1cmVzLmNwcCBcCiAJU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL2d0ay9UZXh0Q2hlY2tlckd0ay5jcHAgXAogCVNvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9ndGsvV2ViQ29udGV4dEd0ay5jcHAgXAogCVNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9ndGsvV2ViQ29udGV4dE1lbnVQcm94eUd0ay5jcHAgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvUGxhdGZvcm1HVEsuY21ha2UgYi9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybUdUSy5jbWFr
ZQppbmRleCAxNTBlMDIzMmQ0ZjRmMTc5MDliMDk5NzQzZTBhNjM0YTUxODQyZWJlLi4xZTRlZGU5
MGNiNmJjMWYzZmI4MTg1ZjA1ZmFhOGNmOGUwNGYzN2U1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9QbGF0Zm9ybUdUSy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybUdUSy5j
bWFrZQpAQCAtMzMsNiArMzMsNyBAQCBsaXN0KEFQUEVORCBXZWJLaXQyX1NPVVJDRVMKICAgICBX
ZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL2d0ay9JbmplY3RlZEJ1bmRsZUd0ay5jcHAKICAgICBV
SVByb2Nlc3MvQVBJL0MvZ3RrL1dLRnVsbFNjcmVlbkNsaWVudEd0ay5jcHAKICAgICBVSVByb2Nl
c3MvQVBJL0MvZ3RrL1dLSW5zcGVjdG9yQ2xpZW50R3RrLmNwcAorICAgIFVJUHJvY2Vzcy9ndGsv
RXhwZXJpbWVudGFsRmVhdHVyZXMuY3BwCiAgICAgVUlQcm9jZXNzL2d0ay9XZWJDb250ZXh0TWVu
dVByb3h5R3RrLmNwcAogICAgIFVJUHJvY2Vzcy9ndGsvV2ViQ29udGV4dEd0ay5jcHAKICAgICBV
SVByb2Nlc3MvZ3RrL1dlYlBhZ2VQcm94eUd0ay5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFNldHRpbmdzLmNwcCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFNldHRpbmdzLmNwcAppbmRleCA0Y2U4NDQyYTE1OTNm
NDFjMDIxNzgwMmFlZjE0ZmMwZTQ3OWJiZWFlLi41M2E1NDdhMWZiNGZmMzU5YjA3Njg0NThhNzE0
NTQ0Yzc1MDM3YzNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0
ay9XZWJLaXRTZXR0aW5ncy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9n
dGsvV2ViS2l0U2V0dGluZ3MuY3BwCkBAIC0zMSw2ICszMSw3IEBACiAjaW5jbHVkZSAiY29uZmln
LmgiCiAjaW5jbHVkZSAiV2ViS2l0U2V0dGluZ3MuaCIKIAorI2luY2x1ZGUgIkV4cGVyaW1lbnRh
bEZlYXR1cmVzLmgiCiAjaW5jbHVkZSAiV2ViS2l0UHJpdmF0ZS5oIgogI2luY2x1ZGUgIldlYktp
dFNldHRpbmdzUHJpdmF0ZS5oIgogI2luY2x1ZGUgPFdlYkNvcmUvVXNlckFnZW50R3RrLmg+CkBA
IC0xMzcsNiArMTM4LDE3IEBAIGVudW0gewogICAgIFBST1BfRU5BQkxFX1dSSVRFX0NPTlNPTEVf
TUVTU0FHRVNfVE9fU1RET1VUCiB9OwogCitzdGF0aWMgdm9pZCB3ZWJLaXRTZXR0aW5nc0NvbnN0
cnVjdGVkKEdPYmplY3QqIG9iamVjdCkKK3sKKyAgICBHX09CSkVDVF9DTEFTUyh3ZWJraXRfc2V0
dGluZ3NfcGFyZW50X2NsYXNzKS0+Y29uc3RydWN0ZWQob2JqZWN0KTsKKworICAgIFdlYlByZWZl
cmVuY2VzKiBwcmVmcyA9IFdFQktJVF9TRVRUSU5HUyhvYmplY3QpLT5wcml2LT5wcmVmZXJlbmNl
cy5nZXQoKTsKKyAgICBFeHBlcmltZW50YWxGZWF0dXJlcyBmZWF0dXJlczsKKyAgICBib29sIHJl
Z2lvbkJhc2VkQ29sdW1uc0VuYWJsZWQgPSBmZWF0dXJlcy5pc0VuYWJsZWQoRXhwZXJpbWVudGFs
RmVhdHVyZXM6OlJlZ2lvbkJhc2VkQ29sdW1ucyk7CisgICAgaWYgKHByZWZzLT5yZWdpb25CYXNl
ZENvbHVtbnNFbmFibGVkKCkgIT0gcmVnaW9uQmFzZWRDb2x1bW5zRW5hYmxlZCkKKyAgICAgICAg
cHJlZnMtPnNldFJlZ2lvbkJhc2VkQ29sdW1uc0VuYWJsZWQocmVnaW9uQmFzZWRDb2x1bW5zRW5h
YmxlZCk7Cit9CisKIHN0YXRpYyB2b2lkIHdlYktpdFNldHRpbmdzU2V0UHJvcGVydHkoR09iamVj
dCogb2JqZWN0LCBndWludCBwcm9wSWQsIGNvbnN0IEdWYWx1ZSogdmFsdWUsIEdQYXJhbVNwZWMq
IHBhcmFtU3BlYykKIHsKICAgICBXZWJLaXRTZXR0aW5ncyogc2V0dGluZ3MgPSBXRUJLSVRfU0VU
VElOR1Mob2JqZWN0KTsKQEAgLTQzOCw2ICs0NTAsNyBAQCBzdGF0aWMgdm9pZCB3ZWJLaXRTZXR0
aW5nc0dldFByb3BlcnR5KEdPYmplY3QqIG9iamVjdCwgZ3VpbnQgcHJvcElkLCBHVmFsdWUqIHZh
bAogc3RhdGljIHZvaWQgd2Via2l0X3NldHRpbmdzX2NsYXNzX2luaXQoV2ViS2l0U2V0dGluZ3ND
bGFzcyoga2xhc3MpCiB7CiAgICAgR09iamVjdENsYXNzKiBnT2JqZWN0Q2xhc3MgPSBHX09CSkVD
VF9DTEFTUyhrbGFzcyk7CisgICAgZ09iamVjdENsYXNzLT5jb25zdHJ1Y3RlZCA9IHdlYktpdFNl
dHRpbmdzQ29uc3RydWN0ZWQ7CiAgICAgZ09iamVjdENsYXNzLT5zZXRfcHJvcGVydHkgPSB3ZWJL
aXRTZXR0aW5nc1NldFByb3BlcnR5OwogICAgIGdPYmplY3RDbGFzcy0+Z2V0X3Byb3BlcnR5ID0g
d2ViS2l0U2V0dGluZ3NHZXRQcm9wZXJ0eTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL2d0ay9FeHBlcmltZW50YWxGZWF0dXJlcy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvZ3RrL0V4cGVyaW1lbnRhbEZlYXR1cmVzLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yYjQ1ZmI2
MWYyODc2MmFjM2Q4MzU4NmMwZjQxMDllNGY5Yjg0NzQ0Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL2d0ay9FeHBlcmltZW50YWxGZWF0dXJlcy5jcHAKQEAgLTAs
MCArMSw4NiBAQAorLyoKKyAqIENvcHlyaWdodCAoYykgMjAxMywgT3BlcmEgU29mdHdhcmUgQVNB
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBv
ZiBPcGVyYSBTb2Z0d2FyZSBBU0Egbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqICAgIGNvbnRyaWJ1
dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAor
ICogICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBw
ZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwor
ICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBUSEUKKyAqIENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwKKyAqIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SCisgKiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikK
KyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwKKyAqIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQKKyAqIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVk
ZSAiRXhwZXJpbWVudGFsRmVhdHVyZXMuaCIKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK3N0cnVj
dCBTZXR0aW5nIHsKKyAgICBFeHBlcmltZW50YWxGZWF0dXJlczo6RmVhdHVyZSBmZWF0dXJlOwor
ICAgIGNvbnN0IGNoYXIqIGZlYXR1cmVOYW1lOworICAgIGJvb2wgZW5hYmxlZDsKK307CisKK3N0
YXRpYyBTZXR0aW5nIHNldHRpbmdzW10gPSB7CisgICAgeyBFeHBlcmltZW50YWxGZWF0dXJlczo6
UmVnaW9uQmFzZWRDb2x1bW5zLCAiUkVHSU9OX0JBU0VEX0NPTFVNTlMiLCBmYWxzZSB9Cit9Owor
CitFeHBlcmltZW50YWxGZWF0dXJlczo6RXhwZXJpbWVudGFsRmVhdHVyZXMoKQoreworICAgIHBh
cnNlRW52aXJvbm1lbnQoKTsKK30KKworYm9vbCBFeHBlcmltZW50YWxGZWF0dXJlczo6aXNFbmFi
bGVkKEZlYXR1cmUgZmVhdHVyZSkKK3sKKyAgICByZXR1cm4gc2V0dGluZ3NbZmVhdHVyZV0uZW5h
YmxlZDsKK30KKwordm9pZCBFeHBlcmltZW50YWxGZWF0dXJlczo6c2V0RW5hYmxlQnlOYW1lKGNv
bnN0IFN0cmluZyYga2V5LCBib29sIGVuYWJsZSkKK3sKKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAw
OyBpIDwgV1RGX0FSUkFZX0xFTkdUSChzZXR0aW5ncyk7IGkrKykgeworICAgICAgICBpZiAoa2V5
ID09IHNldHRpbmdzW2ldLmZlYXR1cmVOYW1lKSB7CisgICAgICAgICAgICBzZXR0aW5nc1tpXS5l
bmFibGVkID0gZW5hYmxlOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9Cit9
CisKK3ZvaWQgRXhwZXJpbWVudGFsRmVhdHVyZXM6OnBhcnNlRW52aXJvbm1lbnQoKQoreworICAg
IGNvbnN0IGNoYXIqIGRhdGEgPSBnZXRlbnYoIldFQktJVEdUS19FWFBFUklNRU5UQUxfRkVBVFVS
RVMiKTsKKyAgICBpZiAoIWRhdGEpCisgICAgICAgIHJldHVybjsKKyAgICBpZiAoIXN0cmNtcChk
YXRhLCAiYWxsIikpIHsKKyAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IFdURl9BUlJB
WV9MRU5HVEgoc2V0dGluZ3MpOyBpKyspCisgICAgICAgICAgICBzZXR0aW5nc1tpXS5lbmFibGVk
ID0gdHJ1ZTsKKyAgICB9IGVsc2UgeworICAgICAgICBWZWN0b3I8U3RyaW5nPiB2YXJpYWJsZXM7
CisgICAgICAgIFN0cmluZyhkYXRhKS5zcGxpdCgnLCcsIGZhbHNlLCB2YXJpYWJsZXMpOworICAg
ICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgdmFyaWFibGVzLnNpemUoKTsgaSsrKSB7Cisg
ICAgICAgICAgICBWZWN0b3I8U3RyaW5nPiBrZXlBbmRWYWx1ZTsKKyAgICAgICAgICAgIHZhcmlh
Ymxlc1tpXS5zcGxpdCgnPScsIGZhbHNlLCBrZXlBbmRWYWx1ZSk7CisgICAgICAgICAgICBpZiAo
a2V5QW5kVmFsdWUuc2l6ZSgpICE9IDIpCisgICAgICAgICAgICAgICAgY29udGludWU7CisgICAg
ICAgICAgICBzZXRFbmFibGVCeU5hbWUoa2V5QW5kVmFsdWVbMF0sIGtleUFuZFZhbHVlWzFdWzBd
IC0gJzAnKTsKKyAgICAgICAgfQorICAgIH0KK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZ3RrL0V4cGVyaW1lbnRhbEZlYXR1
cmVzLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZ3RrL0V4cGVyaW1lbnRhbEZlYXR1cmVz
LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZWIwNDIyODg0MGNmZWNmY2Y5ODE2MzQ3OTJhODljZGE2YzJjODE4NAot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9ndGsvRXhwZXJpbWVu
dGFsRmVhdHVyZXMuaApAQCAtMCwwICsxLDU0IEBACisvKgorICogQ29weXJpZ2h0IChjKSAyMDEz
LCBPcGVyYSBTb2Z0d2FyZSBBU0EuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAz
LiBOZWl0aGVyIHRoZSBuYW1lIG9mIE9wZXJhIFNvZnR3YXJlIEFTQSBub3IgdGhlIG5hbWVzIG9m
IGl0cworICogICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkCisgKiAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVj
aWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFT
IElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIEhPTERFUiBPUiBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULAorICogSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IKKyAqIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULAorICogU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RAorICogT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYg
RXhwZXJpbWVudGFsRmVhdHVyZXNfaAorI2RlZmluZSBFeHBlcmltZW50YWxGZWF0dXJlc19oCisK
KyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisK
K2NsYXNzIEV4cGVyaW1lbnRhbEZlYXR1cmVzIHsKK3B1YmxpYzoKKyAgICBlbnVtIEZlYXR1cmUg
eworICAgICAgICBSZWdpb25CYXNlZENvbHVtbnMKKyAgICB9OworCisgICAgRXhwZXJpbWVudGFs
RmVhdHVyZXMoKTsKKworICAgIGJvb2wgaXNFbmFibGVkKEZlYXR1cmUpOworCitwcml2YXRlOgor
ICAgIHZvaWQgc2V0RW5hYmxlQnlOYW1lKGNvbnN0IFN0cmluZyYga2V5LCBib29sIGVuYWJsZSk7
CisgICAgdm9pZCBwYXJzZUVudmlyb25tZW50KCk7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJL
aXQKKworI2VuZGlmIC8vIEV4cGVyaW1lbnRhbEZlYXR1cmVzX2gK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>204695</attachid>
            <date>2013-06-14 03:53:42 -0700</date>
            <delta_ts>2013-07-19 13:03:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-116611-20130614125209.patch</filename>
            <type>text/plain</type>
            <size>10812</size>
            <attacher name="Morten Stenshorne">mstensho</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwNTExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNmRmYjlkNTY2OTAzMzA5
ZGJiMGJlMTY5NDJlMzQxYmQyMmJmZWMyZi4uZTg3NzRhNGQyNmEwYTQxZTJhMWEwNDU0NzZmMDA1
OWU1ZTk4MDQ2OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDEzLTA2LTE0ICBNb3J0
ZW4gU3RlbnNob3JuZSAgPG1zdGVuc2hvQG9wZXJhLmNvbT4KKworICAgICAgICBbR1RLXSBOZWVk
IGEgd2F5IHRvIGVuYWJsZSByZWdpb24gYmFzZWQgY29sdW1ucyBmcm9tIHRoZSBjb21tYW5kIGxp
bmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNjYx
MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBh
biBlbnZpcm9ubWVudCB2YXJpYWJsZSB0byBlbmFibGUgZXhwZXJpbWVudGFsIGZlYXR1cmVzLgor
CisgICAgICAgIFRoaXMgcHJvdmlkZXMgYSBtZWFucyB0byBlbmFibGUgZXhwZXJpbWVudGFsIGZl
YXR1cmVzIHdpdGhvdXQgcG9sbHV0aW5nCisgICAgICAgIHRoZSBwdWJsaWMgQVBJLgorCisgICAg
ICAgIEVudmlyb25tZW50IHZhcmlhYmxlIG5hbWU6IFdFQktJVEdUS19FWFBFUklNRU5UQUxfRkVB
VFVSRVMKKworICAgICAgICBGb3JtYXQ6IFdFQktJVEdUS19FWFBFUklNRU5UQUxfRkVBVFVSRVM9
IjxmZWF0dXJlMT49MSw8ZmVhdHVyZTI+PTEsLi4uIgorICAgICAgICBPciwgdG8gZW5hYmxlIGFs
bCBleHBlcmltZW50YWwgZmVhdHVyZXM6IFdFQktJVEdUS19FWFBFUklNRU5UQUxfRkVBVFVSRVM9
YWxsCisKKyAgICAgICAgU28gZmFyIHRoZSBvbmx5IGZlYXR1cmUgaXMgcmVnaW9uIGJhc2VkIGNv
bHVtbnMgKGltcGxlbWVudCBtdWx0aWNvbCB1c2luZworICAgICAgICB0aGUgQ1NTIHJlZ2lvbnMg
aW1wbGVtZW50YXRpb24gcmF0aGVyIHRoYW4gQ29sdW1uSW5mbyAmIGNvKSAtIFJFR0lPTl9CQVNF
RF9DT0xVTU5TLgorCisgICAgICAgIEV4YW1wbGU6IFdFQktJVEdUS19FWFBFUklNRU5UQUxfRkVB
VFVSRVM9IlJFR0lPTl9CQVNFRF9DT0xVTU5TPTEiCisKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5s
aXN0LmFtOgorICAgICAgICAqIFBsYXRmb3JtR1RLLmNtYWtlOgorICAgICAgICAqIFVJUHJvY2Vz
cy9BUEkvZ3RrL1dlYktpdFNldHRpbmdzLmNwcDoKKyAgICAgICAgKHdlYktpdFNldHRpbmdzQ29u
c3RydWN0ZWQpOgorICAgICAgICAod2Via2l0X3NldHRpbmdzX2NsYXNzX2luaXQpOgorICAgICAg
ICAqIFVJUHJvY2Vzcy9ndGsvRXhwZXJpbWVudGFsRmVhdHVyZXMuY3BwOiBBZGRlZC4KKyAgICAg
ICAgKFdlYktpdCk6CisgICAgICAgIChTZXR0aW5nKToKKyAgICAgICAgKFdlYktpdDo6RXhwZXJp
bWVudGFsRmVhdHVyZXM6OkV4cGVyaW1lbnRhbEZlYXR1cmVzKToKKyAgICAgICAgKFdlYktpdDo6
RXhwZXJpbWVudGFsRmVhdHVyZXM6OmlzRW5hYmxlZCk6CisgICAgICAgIChXZWJLaXQ6OkV4cGVy
aW1lbnRhbEZlYXR1cmVzOjpzZXRFbmFibGVCeU5hbWUpOgorICAgICAgICAoV2ViS2l0OjpFeHBl
cmltZW50YWxGZWF0dXJlczo6cGFyc2VFbnZpcm9ubWVudCk6CisgICAgICAgICogVUlQcm9jZXNz
L2d0ay9FeHBlcmltZW50YWxGZWF0dXJlcy5oOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdCk6Cisg
ICAgICAgIChFeHBlcmltZW50YWxGZWF0dXJlcyk6CisKIDIwMTMtMDUtMjIgIE1pY2hhxYIgUGFr
dcWCYSB2ZWwgUnV0a2EgIDxtLnBha3VsYUBzYW1zdW5nLmNvbT4KIAogICAgICAgICBbRUZMXVtX
SzJdIENoYW5nZSBFd2tfQ29udGV4dF9NZW51X0l0ZW0ncyBwYXJlbnQgbWVudSB0byByYXcgcG9p
bnRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvR05VbWFrZWZpbGUubGlzdC5hbSBiL1Nv
dXJjZS9XZWJLaXQyL0dOVW1ha2VmaWxlLmxpc3QuYW0KaW5kZXggZGFjMjkyNTEzODNmYWIyYzUy
ZTdiOWIxZWYxYzJmMTA1YjY2MGM1Zi4uZmZkMjNjMGE2OTQ5OGMzN2RhYzljMGU2MmQ0ZmRmNDVj
NDIwODI1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvR05VbWFrZWZpbGUubGlzdC5hbQor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9HTlVtYWtlZmlsZS5saXN0LmFtCkBAIC04MTIsNiArODEyLDcg
QEAgd2Via2l0Ml9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvR2VvbG9j
YXRpb25QZXJtaXNzaW9uUmVxdWVzdFByb3h5LmNwcCBcCiAJU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0dlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RQcm94eS5oIFwKIAlTb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvY2Fpcm8vQmFja2luZ1N0b3JlQ2Fpcm8uY3BwIFwKKwlTb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvZ3RrL0V4cGVyaW1lbnRhbEZlYXR1cmVzLmNwcCBcCiAJU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL2d0ay9UZXh0Q2hlY2tlckd0ay5jcHAgXAogCVNvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9ndGsvV2ViQ29udGV4dEd0ay5jcHAgXAogCVNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9ndGsvV2ViQ29udGV4dE1lbnVQcm94eUd0ay5jcHAgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvUGxhdGZvcm1HVEsuY21ha2UgYi9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybUdUSy5jbWFr
ZQppbmRleCAxNTBlMDIzMmQ0ZjRmMTc5MDliMDk5NzQzZTBhNjM0YTUxODQyZWJlLi4xZTRlZGU5
MGNiNmJjMWYzZmI4MTg1ZjA1ZmFhOGNmOGUwNGYzN2U1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9QbGF0Zm9ybUdUSy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybUdUSy5j
bWFrZQpAQCAtMzMsNiArMzMsNyBAQCBsaXN0KEFQUEVORCBXZWJLaXQyX1NPVVJDRVMKICAgICBX
ZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL2d0ay9JbmplY3RlZEJ1bmRsZUd0ay5jcHAKICAgICBV
SVByb2Nlc3MvQVBJL0MvZ3RrL1dLRnVsbFNjcmVlbkNsaWVudEd0ay5jcHAKICAgICBVSVByb2Nl
c3MvQVBJL0MvZ3RrL1dLSW5zcGVjdG9yQ2xpZW50R3RrLmNwcAorICAgIFVJUHJvY2Vzcy9ndGsv
RXhwZXJpbWVudGFsRmVhdHVyZXMuY3BwCiAgICAgVUlQcm9jZXNzL2d0ay9XZWJDb250ZXh0TWVu
dVByb3h5R3RrLmNwcAogICAgIFVJUHJvY2Vzcy9ndGsvV2ViQ29udGV4dEd0ay5jcHAKICAgICBV
SVByb2Nlc3MvZ3RrL1dlYlBhZ2VQcm94eUd0ay5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFNldHRpbmdzLmNwcCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFNldHRpbmdzLmNwcAppbmRleCA0Y2U4NDQyYTE1OTNm
NDFjMDIxNzgwMmFlZjE0ZmMwZTQ3OWJiZWFlLi41M2E1NDdhMWZiNGZmMzU5YjA3Njg0NThhNzE0
NTQ0Yzc1MDM3YzNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0
ay9XZWJLaXRTZXR0aW5ncy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9n
dGsvV2ViS2l0U2V0dGluZ3MuY3BwCkBAIC0zMSw2ICszMSw3IEBACiAjaW5jbHVkZSAiY29uZmln
LmgiCiAjaW5jbHVkZSAiV2ViS2l0U2V0dGluZ3MuaCIKIAorI2luY2x1ZGUgIkV4cGVyaW1lbnRh
bEZlYXR1cmVzLmgiCiAjaW5jbHVkZSAiV2ViS2l0UHJpdmF0ZS5oIgogI2luY2x1ZGUgIldlYktp
dFNldHRpbmdzUHJpdmF0ZS5oIgogI2luY2x1ZGUgPFdlYkNvcmUvVXNlckFnZW50R3RrLmg+CkBA
IC0xMzcsNiArMTM4LDE3IEBAIGVudW0gewogICAgIFBST1BfRU5BQkxFX1dSSVRFX0NPTlNPTEVf
TUVTU0FHRVNfVE9fU1RET1VUCiB9OwogCitzdGF0aWMgdm9pZCB3ZWJLaXRTZXR0aW5nc0NvbnN0
cnVjdGVkKEdPYmplY3QqIG9iamVjdCkKK3sKKyAgICBHX09CSkVDVF9DTEFTUyh3ZWJraXRfc2V0
dGluZ3NfcGFyZW50X2NsYXNzKS0+Y29uc3RydWN0ZWQob2JqZWN0KTsKKworICAgIFdlYlByZWZl
cmVuY2VzKiBwcmVmcyA9IFdFQktJVF9TRVRUSU5HUyhvYmplY3QpLT5wcml2LT5wcmVmZXJlbmNl
cy5nZXQoKTsKKyAgICBFeHBlcmltZW50YWxGZWF0dXJlcyBmZWF0dXJlczsKKyAgICBib29sIHJl
Z2lvbkJhc2VkQ29sdW1uc0VuYWJsZWQgPSBmZWF0dXJlcy5pc0VuYWJsZWQoRXhwZXJpbWVudGFs
RmVhdHVyZXM6OlJlZ2lvbkJhc2VkQ29sdW1ucyk7CisgICAgaWYgKHByZWZzLT5yZWdpb25CYXNl
ZENvbHVtbnNFbmFibGVkKCkgIT0gcmVnaW9uQmFzZWRDb2x1bW5zRW5hYmxlZCkKKyAgICAgICAg
cHJlZnMtPnNldFJlZ2lvbkJhc2VkQ29sdW1uc0VuYWJsZWQocmVnaW9uQmFzZWRDb2x1bW5zRW5h
YmxlZCk7Cit9CisKIHN0YXRpYyB2b2lkIHdlYktpdFNldHRpbmdzU2V0UHJvcGVydHkoR09iamVj
dCogb2JqZWN0LCBndWludCBwcm9wSWQsIGNvbnN0IEdWYWx1ZSogdmFsdWUsIEdQYXJhbVNwZWMq
IHBhcmFtU3BlYykKIHsKICAgICBXZWJLaXRTZXR0aW5ncyogc2V0dGluZ3MgPSBXRUJLSVRfU0VU
VElOR1Mob2JqZWN0KTsKQEAgLTQzOCw2ICs0NTAsNyBAQCBzdGF0aWMgdm9pZCB3ZWJLaXRTZXR0
aW5nc0dldFByb3BlcnR5KEdPYmplY3QqIG9iamVjdCwgZ3VpbnQgcHJvcElkLCBHVmFsdWUqIHZh
bAogc3RhdGljIHZvaWQgd2Via2l0X3NldHRpbmdzX2NsYXNzX2luaXQoV2ViS2l0U2V0dGluZ3ND
bGFzcyoga2xhc3MpCiB7CiAgICAgR09iamVjdENsYXNzKiBnT2JqZWN0Q2xhc3MgPSBHX09CSkVD
VF9DTEFTUyhrbGFzcyk7CisgICAgZ09iamVjdENsYXNzLT5jb25zdHJ1Y3RlZCA9IHdlYktpdFNl
dHRpbmdzQ29uc3RydWN0ZWQ7CiAgICAgZ09iamVjdENsYXNzLT5zZXRfcHJvcGVydHkgPSB3ZWJL
aXRTZXR0aW5nc1NldFByb3BlcnR5OwogICAgIGdPYmplY3RDbGFzcy0+Z2V0X3Byb3BlcnR5ID0g
d2ViS2l0U2V0dGluZ3NHZXRQcm9wZXJ0eTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL2d0ay9FeHBlcmltZW50YWxGZWF0dXJlcy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvZ3RrL0V4cGVyaW1lbnRhbEZlYXR1cmVzLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yYjQ1ZmI2
MWYyODc2MmFjM2Q4MzU4NmMwZjQxMDllNGY5Yjg0NzQ0Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL2d0ay9FeHBlcmltZW50YWxGZWF0dXJlcy5jcHAKQEAgLTAs
MCArMSw4NiBAQAorLyoKKyAqIENvcHlyaWdodCAoYykgMjAxMywgT3BlcmEgU29mdHdhcmUgQVNB
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBv
ZiBPcGVyYSBTb2Z0d2FyZSBBU0Egbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqICAgIGNvbnRyaWJ1
dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAor
ICogICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBw
ZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwor
ICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBUSEUKKyAqIENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwKKyAqIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SCisgKiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikK
KyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwKKyAqIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQKKyAqIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVk
ZSAiRXhwZXJpbWVudGFsRmVhdHVyZXMuaCIKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK3N0cnVj
dCBTZXR0aW5nIHsKKyAgICBFeHBlcmltZW50YWxGZWF0dXJlczo6RmVhdHVyZSBmZWF0dXJlOwor
ICAgIGNvbnN0IGNoYXIqIGZlYXR1cmVOYW1lOworICAgIGJvb2wgZW5hYmxlZDsKK307CisKK3N0
YXRpYyBTZXR0aW5nIHNldHRpbmdzW10gPSB7CisgICAgeyBFeHBlcmltZW50YWxGZWF0dXJlczo6
UmVnaW9uQmFzZWRDb2x1bW5zLCAiUkVHSU9OX0JBU0VEX0NPTFVNTlMiLCBmYWxzZSB9Cit9Owor
CitFeHBlcmltZW50YWxGZWF0dXJlczo6RXhwZXJpbWVudGFsRmVhdHVyZXMoKQoreworICAgIHBh
cnNlRW52aXJvbm1lbnQoKTsKK30KKworYm9vbCBFeHBlcmltZW50YWxGZWF0dXJlczo6aXNFbmFi
bGVkKEZlYXR1cmUgZmVhdHVyZSkKK3sKKyAgICByZXR1cm4gc2V0dGluZ3NbZmVhdHVyZV0uZW5h
YmxlZDsKK30KKwordm9pZCBFeHBlcmltZW50YWxGZWF0dXJlczo6c2V0RW5hYmxlQnlOYW1lKGNv
bnN0IFN0cmluZyYga2V5LCBib29sIGVuYWJsZSkKK3sKKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAw
OyBpIDwgV1RGX0FSUkFZX0xFTkdUSChzZXR0aW5ncyk7IGkrKykgeworICAgICAgICBpZiAoa2V5
ID09IHNldHRpbmdzW2ldLmZlYXR1cmVOYW1lKSB7CisgICAgICAgICAgICBzZXR0aW5nc1tpXS5l
bmFibGVkID0gZW5hYmxlOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9Cit9
CisKK3ZvaWQgRXhwZXJpbWVudGFsRmVhdHVyZXM6OnBhcnNlRW52aXJvbm1lbnQoKQoreworICAg
IGNvbnN0IGNoYXIqIGRhdGEgPSBnZXRlbnYoIldFQktJVEdUS19FWFBFUklNRU5UQUxfRkVBVFVS
RVMiKTsKKyAgICBpZiAoIWRhdGEpCisgICAgICAgIHJldHVybjsKKyAgICBpZiAoIXN0cmNtcChk
YXRhLCAiYWxsIikpIHsKKyAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IFdURl9BUlJB
WV9MRU5HVEgoc2V0dGluZ3MpOyBpKyspCisgICAgICAgICAgICBzZXR0aW5nc1tpXS5lbmFibGVk
ID0gdHJ1ZTsKKyAgICB9IGVsc2UgeworICAgICAgICBWZWN0b3I8U3RyaW5nPiB2YXJpYWJsZXM7
CisgICAgICAgIFN0cmluZyhkYXRhKS5zcGxpdCgnLCcsIGZhbHNlLCB2YXJpYWJsZXMpOworICAg
ICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgdmFyaWFibGVzLnNpemUoKTsgaSsrKSB7Cisg
ICAgICAgICAgICBWZWN0b3I8U3RyaW5nPiBrZXlBbmRWYWx1ZTsKKyAgICAgICAgICAgIHZhcmlh
Ymxlc1tpXS5zcGxpdCgnPScsIGZhbHNlLCBrZXlBbmRWYWx1ZSk7CisgICAgICAgICAgICBpZiAo
a2V5QW5kVmFsdWUuc2l6ZSgpICE9IDIpCisgICAgICAgICAgICAgICAgY29udGludWU7CisgICAg
ICAgICAgICBzZXRFbmFibGVCeU5hbWUoa2V5QW5kVmFsdWVbMF0sIGtleUFuZFZhbHVlWzFdWzBd
IC0gJzAnKTsKKyAgICAgICAgfQorICAgIH0KK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZ3RrL0V4cGVyaW1lbnRhbEZlYXR1
cmVzLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZ3RrL0V4cGVyaW1lbnRhbEZlYXR1cmVz
LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZWIwNDIyODg0MGNmZWNmY2Y5ODE2MzQ3OTJhODljZGE2YzJjODE4NAot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9ndGsvRXhwZXJpbWVu
dGFsRmVhdHVyZXMuaApAQCAtMCwwICsxLDU0IEBACisvKgorICogQ29weXJpZ2h0IChjKSAyMDEz
LCBPcGVyYSBTb2Z0d2FyZSBBU0EuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAz
LiBOZWl0aGVyIHRoZSBuYW1lIG9mIE9wZXJhIFNvZnR3YXJlIEFTQSBub3IgdGhlIG5hbWVzIG9m
IGl0cworICogICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkCisgKiAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVj
aWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFT
IElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIEhPTERFUiBPUiBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULAorICogSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IKKyAqIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULAorICogU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RAorICogT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYg
RXhwZXJpbWVudGFsRmVhdHVyZXNfaAorI2RlZmluZSBFeHBlcmltZW50YWxGZWF0dXJlc19oCisK
KyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisK
K2NsYXNzIEV4cGVyaW1lbnRhbEZlYXR1cmVzIHsKK3B1YmxpYzoKKyAgICBlbnVtIEZlYXR1cmUg
eworICAgICAgICBSZWdpb25CYXNlZENvbHVtbnMKKyAgICB9OworCisgICAgRXhwZXJpbWVudGFs
RmVhdHVyZXMoKTsKKworICAgIGJvb2wgaXNFbmFibGVkKEZlYXR1cmUpOworCitwcml2YXRlOgor
ICAgIHZvaWQgc2V0RW5hYmxlQnlOYW1lKGNvbnN0IFN0cmluZyYga2V5LCBib29sIGVuYWJsZSk7
CisgICAgdm9pZCBwYXJzZUVudmlyb25tZW50KCk7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJL
aXQKKworI2VuZGlmIC8vIEV4cGVyaW1lbnRhbEZlYXR1cmVzX2gK
</data>

          </attachment>
      

    </bug>

</bugzilla>