<?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>73773</bug_id>
          
          <creation_ts>2011-12-04 09:06:54 -0800</creation_ts>
          <short_desc>[WK2][GTK] WebSettings support in MiniBrowser</short_desc>
          <delta_ts>2012-01-03 00:11:05 -0800</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="Philippe Normand">pnormand</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cgarcia</cc>
    
    <cc>dglazkov</cc>
    
    <cc>mrobinson</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>514700</commentid>
    <comment_count>0</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2011-12-04 09:06:54 -0800</bug_when>
    <thetext>Would be nice to be able to pass settings via the command line like in the wk1 launcher.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>514701</commentid>
    <comment_count>1</comment_count>
      <attachid>117791</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2011-12-04 09:09:13 -0800</bug_when>
    <thetext>Created attachment 117791
WebSettings support in MiniBrowser</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>514704</commentid>
    <comment_count>2</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-12-04 09:40:59 -0800</bug_when>
    <thetext>Related bug: https://bugs.webkit.org/show_bug.cgi?id=71568</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>514705</commentid>
    <comment_count>3</comment_count>
      <attachid>117791</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-04 09:45:26 -0800</bug_when>
    <thetext>Comment on attachment 117791
WebSettings support in MiniBrowser

Attachment 117791 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/10689591

New failing tests:
svg/custom/linking-uri-01-b.svg</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>514706</commentid>
    <comment_count>4</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2011-12-04 09:46:18 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; Related bug: https://bugs.webkit.org/show_bug.cgi?id=71568

Argh! Seems like they&apos;re &quot;complementary&quot; though. I like the command line stuff but also understand a UI is nice to have.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>522633</commentid>
    <comment_count>5</comment_count>
      <attachid>117791</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-12-16 01:41:31 -0800</bug_when>
    <thetext>Comment on attachment 117791
WebSettings support in MiniBrowser

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

I know this has been copied from GtkLauncher, so maybe can land this, and then fix the possible issus in GtkLauncher and MiniBrowser at the same time.

&gt; Tools/MiniBrowser/gtk/main.c:87
&gt; +        if (value &amp;&amp; g_ascii_strcasecmp(value, &quot;true&quot;) &amp;&amp; strcmp(value, &quot;1&quot;))

I don&apos;t undertand this line g_ascii_strcasecmp(value, &quot;true&quot;) &amp;&amp; strcmp(value, &quot;1&quot;), I don&apos;t know what the intention is, but the value can&apos;t be &quot;true&quot; and &quot;1&quot;.

&gt; Tools/MiniBrowser/gtk/main.c:144
&gt; +        return 0;

We can use NULL in C.

&gt; Tools/MiniBrowser/gtk/main.c:152
&gt; +        if (!param || !(param-&gt;flags &amp; G_PARAM_WRITABLE))

I&apos;m not sure we need this, all properties in webkit settings are READWRITE. But if we leave the check we should skip also construct only properties, since you can&apos;t do g_object_set on them.

&gt; Tools/MiniBrowser/gtk/main.c:157
&gt; +        if (gParamType == G_TYPE_BOOLEAN || gParamType == G_TYPE_STRING || gParamType == G_TYPE_INT
&gt; +            || gParamType == G_TYPE_FLOAT) {

I would use a help function here, and continue if the type is not valid, 

if (!paramTypeIsSupported(gParamType))
    continue;

&gt; Tools/MiniBrowser/gtk/main.c:177
&gt; +static gboolean addSettingsGroupToContext(GOptionContext *context, WebKitSettings* webkitSettings)

WebKitSettings* webkitSettings -&gt; WebKitSettings *webkitSettings

&gt; Tools/MiniBrowser/gtk/main.c:208
&gt; +        webkitSettings = 0;

We can use NULL in C.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>522634</commentid>
    <comment_count>6</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-12-16 01:42:17 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 117791 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=117791&amp;action=review
&gt; 
&gt; I know this has been copied from GtkLauncher, so maybe can land this, and then fix the possible issus in GtkLauncher and MiniBrowser at the same time.

or even better, fix GtkLauncher first and then land the right patch for MiniBrowser</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>522635</commentid>
    <comment_count>7</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-12-16 01:43:39 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (In reply to comment #2)
&gt; &gt; Related bug: https://bugs.webkit.org/show_bug.cgi?id=71568
&gt; 
&gt; Argh! Seems like they&apos;re &quot;complementary&quot; though. I like the command line stuff but also understand a UI is nice to have.

Yes, they are indeed complementary, I had in mind to write this patch when the UI one lands :-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>522755</commentid>
    <comment_count>8</comment_count>
      <attachid>117791</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2011-12-16 08:04:58 -0800</bug_when>
    <thetext>Comment on attachment 117791
WebSettings support in MiniBrowser

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

&gt;&gt; Tools/MiniBrowser/gtk/main.c:87
&gt;&gt; +        if (value &amp;&amp; g_ascii_strcasecmp(value, &quot;true&quot;) &amp;&amp; strcmp(value, &quot;1&quot;))
&gt; 
&gt; I don&apos;t undertand this line g_ascii_strcasecmp(value, &quot;true&quot;) &amp;&amp; strcmp(value, &quot;1&quot;), I don&apos;t know what the intention is, but the value can&apos;t be &quot;true&quot; and &quot;1&quot;.

IIUC, this tests if value != true and value != 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>526174</commentid>
    <comment_count>9</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-12-22 04:12:32 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; (From update of attachment 117791 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=117791&amp;action=review
&gt; 
&gt; &gt;&gt; Tools/MiniBrowser/gtk/main.c:87
&gt; &gt;&gt; +        if (value &amp;&amp; g_ascii_strcasecmp(value, &quot;true&quot;) &amp;&amp; strcmp(value, &quot;1&quot;))
&gt; &gt; 
&gt; &gt; I don&apos;t undertand this line g_ascii_strcasecmp(value, &quot;true&quot;) &amp;&amp; strcmp(value, &quot;1&quot;), I don&apos;t know what the intention is, but the value can&apos;t be &quot;true&quot; and &quot;1&quot;.
&gt; 
&gt; IIUC, this tests if value != true and value != 1

right!, I always forget !strcmp(a,b) mean a == b :-P that&apos;s why I always use == 0, but it&apos;s not allowed by webkit coding style, so nevermind, sorry for the noise.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528463</commentid>
    <comment_count>10</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2012-01-02 04:27:13 -0800</bug_when>
    <thetext>I&apos;ll update this one when the UI patch lands.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528541</commentid>
    <comment_count>11</comment_count>
      <attachid>120887</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2012-01-02 09:12:17 -0800</bug_when>
    <thetext>Created attachment 120887
WebSettings support in MiniBrowser</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528549</commentid>
    <comment_count>12</comment_count>
      <attachid>120887</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2012-01-02 10:16:48 -0800</bug_when>
    <thetext>Comment on attachment 120887
WebSettings support in MiniBrowser

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

Looks good, but please consider the following cleanup before landing...

&gt; Tools/MiniBrowser/gtk/main.c:30
&gt;  #include &lt;webkit2/webkit2.h&gt;

I know it was wrong before, but do you mind making sure that this is in alphabetical order now?

&gt; Tools/MiniBrowser/gtk/main.c:45
&gt; +static void loadURI(const gchar *uri, WebKitSettings *webkitSettings)

Please rename this to something like createBrowserWindow.

&gt; Tools/MiniBrowser/gtk/main.c:88
&gt; +        gboolean propertyValue = TRUE;
&gt; +        if (value &amp;&amp; g_ascii_strcasecmp(value, &quot;true&quot;) &amp;&amp; strcmp(value, &quot;1&quot;))
&gt; +            propertyValue = FALSE;

This can just be: 

gboolean propertyValue = !(value &amp;&amp; g_ascii_strcasecmp(value, &quot;true&quot;) &amp;&amp; strcmp(value, &quot;1&quot;));</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528681</commentid>
    <comment_count>13</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2012-01-03 00:11:05 -0800</bug_when>
    <thetext>Committed r103928: &lt;http://trac.webkit.org/changeset/103928&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>117791</attachid>
            <date>2011-12-04 09:09:13 -0800</date>
            <delta_ts>2012-01-02 09:12:17 -0800</delta_ts>
            <desc>WebSettings support in MiniBrowser</desc>
            <filename>WebSettings-support-in-MiniBrowser.patch</filename>
            <type>text/plain</type>
            <size>8472</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">RnJvbSBlZWJhNTIzOGFiYjc1YTRlMjEyNTYxNGYyNGFjZWMyYzRhNmI1MmY0IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBQaGlsaXBwZSBOb3JtYW5kIDxwbm9ybWFuZEBpZ2FsaWEuY29t
PgpEYXRlOiBTdW4sIDQgRGVjIDIwMTEgMTg6MDg6MDggKzAxMDAKU3ViamVjdDogW1BBVENIXSBX
ZWJTZXR0aW5ncyBzdXBwb3J0IGluIE1pbmlCcm93c2VyCgotLS0KIFRvb2xzL0NoYW5nZUxvZyAg
ICAgICAgICAgICAgfCAgIDE0ICsrKysKIFRvb2xzL01pbmlCcm93c2VyL2d0ay9tYWluLmMgfCAg
MTQ4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQogMiBmaWxlcyBj
aGFuZ2VkLCAxNTkgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9U
b29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggODliMWY0OS4uNGRlOWU2MiAx
MDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSw1
ICsxLDE5IEBACiAyMDExLTEyLTA0ICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlh
LmNvbT4KIAorICAgICAgICBbV0syXVtHVEtdIFdlYlNldHRpbmdzIHN1cHBvcnQgaW4gTWluaUJy
b3dzZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcz
NzczCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBN
aW5pQnJvd3Nlci9ndGsvbWFpbi5jOgorICAgICAgICAobG9hZFVSSSk6CisgICAgICAgIChwYXJz
ZU9wdGlvbkVudHJ5Q2FsbGJhY2spOgorICAgICAgICAoZ2V0T3B0aW9uRW50cmllc0Zyb21XZWJL
aXRTZXR0aW5ncyk6CisgICAgICAgIChhZGRTZXR0aW5nc0dyb3VwVG9Db250ZXh0KToKKyAgICAg
ICAgKG1haW4pOgorCisyMDExLTEyLTA0ICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdh
bGlhLmNvbT4KKwogICAgICAgICBBbm90aGVyIEdUSyBidWlsZCBmaXggYWZ0ZXIgcjEwMTkyMi4K
IAogICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBNYXJ0aW4gUm9iaW5zb24uCmRpZmYgLS1naXQg
YS9Ub29scy9NaW5pQnJvd3Nlci9ndGsvbWFpbi5jIGIvVG9vbHMvTWluaUJyb3dzZXIvZ3RrL21h
aW4uYwppbmRleCA5MmRkMWIwLi40NDgyNjA3IDEwMDY0NAotLS0gYS9Ub29scy9NaW5pQnJvd3Nl
ci9ndGsvbWFpbi5jCisrKyBiL1Rvb2xzL01pbmlCcm93c2VyL2d0ay9tYWluLmMKQEAgLTI2LDgg
KzI2LDEwIEBACiAgKi8KIAogI2luY2x1ZGUgIkJyb3dzZXJXaW5kb3cuaCIKKyNpbmNsdWRlIDxl
cnJuby5oPgogI2luY2x1ZGUgPHdlYmtpdDIvd2Via2l0Mi5oPgogI2luY2x1ZGUgPGd0ay9ndGsu
aD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KIAogc3RhdGljIGNvbnN0IGdjaGFyICoqdXJpQXJndW1l
bnRzID0gTlVMTDsKIApAQCAtNDAsMTEgKzQyLDE3IEBAIHN0YXRpYyBnY2hhciAqYXJndW1lbnRU
b1VSTChjb25zdCBjaGFyICpmaWxlbmFtZSkKICAgICByZXR1cm4gZmlsZVVSTDsKIH0KIAotc3Rh
dGljIHZvaWQgbG9hZFVSSShjb25zdCBnY2hhciAqdXJpKQorc3RhdGljIHZvaWQgbG9hZFVSSShj
b25zdCBnY2hhciAqdXJpLCBXZWJLaXRTZXR0aW5ncyAqd2Via2l0U2V0dGluZ3MpCiB7CiAgICAg
R3RrV2lkZ2V0ICp3ZWJWaWV3ID0gd2Via2l0X3dlYl92aWV3X25ldygpOwogICAgIEd0a1dpZGdl
dCAqbWFpbldpbmRvdyA9IGJyb3dzZXJfd2luZG93X25ldyhXRUJLSVRfV0VCX1ZJRVcod2ViVmll
dykpOwogICAgIGdjaGFyICp1cmwgPSBhcmd1bWVudFRvVVJMKHVyaSk7CisKKyAgICBpZiAod2Vi
a2l0U2V0dGluZ3MpIHsKKyAgICAgICAgd2Via2l0X3dlYl92aWV3X3NldF9zZXR0aW5ncyhXRUJL
SVRfV0VCX1ZJRVcod2ViVmlldyksIHdlYmtpdFNldHRpbmdzKTsKKyAgICAgICAgZ19vYmplY3Rf
dW5yZWYod2Via2l0U2V0dGluZ3MpOworICAgIH0KKwogICAgIHdlYmtpdF93ZWJfdmlld19sb2Fk
X3VyaShXRUJLSVRfV0VCX1ZJRVcod2ViVmlldyksIHVybCk7CiAgICAgZ19mcmVlKHVybCk7CiAK
QEAgLTU4LDYgKzY2LDEzNCBAQCBzdGF0aWMgY29uc3QgR09wdGlvbkVudHJ5IGNvbW1hbmRMaW5l
T3B0aW9uc1tdID0KICAgICB7IDAsIDAsIDAsIDAsIDAsIDAsIDAgfQogfTsKIAorc3RhdGljIGdi
b29sZWFuIHBhcnNlT3B0aW9uRW50cnlDYWxsYmFjayhjb25zdCBnY2hhciAqb3B0aW9uTmFtZUZ1
bGwsIGNvbnN0IGdjaGFyICp2YWx1ZSwgV2ViS2l0U2V0dGluZ3MgKndlYlNldHRpbmdzLCBHRXJy
b3IgKiplcnJvcikKK3sKKyAgICBpZiAoc3RybGVuKG9wdGlvbk5hbWVGdWxsKSA8PSAyKSB7Cisg
ICAgICAgIGdfc2V0X2Vycm9yKGVycm9yLCBHX09QVElPTl9FUlJPUiwgR19PUFRJT05fRVJST1Jf
RkFJTEVELCAiSW52YWxpZCBvcHRpb24gJXMiLCBvcHRpb25OYW1lRnVsbCk7CisgICAgICAgIHJl
dHVybiBGQUxTRTsKKyAgICB9CisKKyAgICAvKiBXZSBoYXZlIHR3byAtLSBpbiBvcHRpb24gbmFt
ZSBzbyByZW1vdmUgdGhlbS4gKi8KKyAgICBjb25zdCBnY2hhciAqb3B0aW9uTmFtZSA9IG9wdGlv
bk5hbWVGdWxsICsgMjsKKyAgICBHUGFyYW1TcGVjICpzcGVjID0gZ19vYmplY3RfY2xhc3NfZmlu
ZF9wcm9wZXJ0eShHX09CSkVDVF9HRVRfQ0xBU1Mod2ViU2V0dGluZ3MpLCBvcHRpb25OYW1lKTsK
KyAgICBpZiAoIXNwZWMpIHsKKyAgICAgICAgZ19zZXRfZXJyb3IoZXJyb3IsIEdfT1BUSU9OX0VS
Uk9SLCBHX09QVElPTl9FUlJPUl9GQUlMRUQsICJDYW5ub3QgZmluZCB3ZWIgc2V0dGluZ3MgZm9y
IG9wdGlvbiAlcyIsIG9wdGlvbk5hbWVGdWxsKTsKKyAgICAgICAgcmV0dXJuIEZBTFNFOworICAg
IH0KKworICAgIHN3aXRjaCAoR19QQVJBTV9TUEVDX1ZBTFVFX1RZUEUoc3BlYykpIHsKKyAgICBj
YXNlIEdfVFlQRV9CT09MRUFOOiB7CisgICAgICAgIGdib29sZWFuIHByb3BlcnR5VmFsdWUgPSBU
UlVFOworICAgICAgICBpZiAodmFsdWUgJiYgZ19hc2NpaV9zdHJjYXNlY21wKHZhbHVlLCAidHJ1
ZSIpICYmIHN0cmNtcCh2YWx1ZSwgIjEiKSkKKyAgICAgICAgICAgIHByb3BlcnR5VmFsdWUgPSBG
QUxTRTsKKyAgICAgICAgZ19vYmplY3Rfc2V0KEdfT0JKRUNUKHdlYlNldHRpbmdzKSwgb3B0aW9u
TmFtZSwgcHJvcGVydHlWYWx1ZSwgTlVMTCk7CisgICAgICAgIGJyZWFrOworICAgIH0KKyAgICBj
YXNlIEdfVFlQRV9TVFJJTkc6CisgICAgICAgIGdfb2JqZWN0X3NldChHX09CSkVDVCh3ZWJTZXR0
aW5ncyksIG9wdGlvbk5hbWUsIHZhbHVlLCBOVUxMKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2Fz
ZSBHX1RZUEVfSU5UOiB7CisgICAgICAgIGdsb25nIHByb3BlcnR5VmFsdWU7CisgICAgICAgIGdj
aGFyICplbmQ7CisKKyAgICAgICAgZXJybm8gPSAwOworICAgICAgICBwcm9wZXJ0eVZhbHVlID0g
Z19hc2NpaV9zdHJ0b2xsKHZhbHVlLCAmZW5kLCAwKTsKKyAgICAgICAgaWYgKGVycm5vID09IEVS
QU5HRSB8fCBwcm9wZXJ0eVZhbHVlID4gR19NQVhJTlQgfHwgcHJvcGVydHlWYWx1ZSA8IEdfTUlO
SU5UKSB7CisgICAgICAgICAgICBnX3NldF9lcnJvcihlcnJvciwgR19PUFRJT05fRVJST1IsIEdf
T1BUSU9OX0VSUk9SX0JBRF9WQUxVRSwgIkludGVnZXIgdmFsdWUgJyVzJyBmb3IgJXMgb3V0IG9m
IHJhbmdlIiwgdmFsdWUsIG9wdGlvbk5hbWVGdWxsKTsKKyAgICAgICAgICAgIHJldHVybiBGQUxT
RTsKKyAgICAgICAgfQorICAgICAgICBpZiAoZXJybm8gfHwgdmFsdWUgPT0gZW5kKSB7CisgICAg
ICAgICAgICBnX3NldF9lcnJvcihlcnJvciwgR19PUFRJT05fRVJST1IsIEdfT1BUSU9OX0VSUk9S
X0JBRF9WQUxVRSwgIkNhbm5vdCBwYXJzZSBpbnRlZ2VyIHZhbHVlICclcycgZm9yICVzIiwgdmFs
dWUsIG9wdGlvbk5hbWVGdWxsKTsKKyAgICAgICAgICAgIHJldHVybiBGQUxTRTsKKyAgICAgICAg
fQorICAgICAgICBnX29iamVjdF9zZXQoR19PQkpFQ1Qod2ViU2V0dGluZ3MpLCBvcHRpb25OYW1l
LCBwcm9wZXJ0eVZhbHVlLCBOVUxMKTsKKyAgICAgICAgYnJlYWs7CisgICAgfQorICAgIGNhc2Ug
R19UWVBFX0ZMT0FUOiB7CisgICAgICAgIGdkb3VibGUgcHJvcGVydHlWYWx1ZTsKKyAgICAgICAg
Z2NoYXIgKmVuZDsKKworICAgICAgICBlcnJubyA9IDA7CisgICAgICAgIHByb3BlcnR5VmFsdWUg
PSBnX2FzY2lpX3N0cnRvZCh2YWx1ZSwgJmVuZCk7CisgICAgICAgIGlmIChlcnJubyA9PSBFUkFO
R0UgfHwgcHJvcGVydHlWYWx1ZSA+IEdfTUFYRkxPQVQgfHwgcHJvcGVydHlWYWx1ZSA8IEdfTUlO
RkxPQVQpIHsKKyAgICAgICAgICAgIGdfc2V0X2Vycm9yKGVycm9yLCBHX09QVElPTl9FUlJPUiwg
R19PUFRJT05fRVJST1JfQkFEX1ZBTFVFLCAiRmxvYXQgdmFsdWUgJyVzJyBmb3IgJXMgb3V0IG9m
IHJhbmdlIiwgdmFsdWUsIG9wdGlvbk5hbWVGdWxsKTsKKyAgICAgICAgICAgIHJldHVybiBGQUxT
RTsKKyAgICAgICAgfQorICAgICAgICBpZiAoZXJybm8gfHwgdmFsdWUgPT0gZW5kKSB7CisgICAg
ICAgICAgICBnX3NldF9lcnJvcihlcnJvciwgR19PUFRJT05fRVJST1IsIEdfT1BUSU9OX0VSUk9S
X0JBRF9WQUxVRSwgIkNhbm5vdCBwYXJzZSBmbG9hdCB2YWx1ZSAnJXMnIGZvciAlcyIsIHZhbHVl
LCBvcHRpb25OYW1lRnVsbCk7CisgICAgICAgICAgICByZXR1cm4gRkFMU0U7CisgICAgICAgIH0K
KyAgICAgICAgZ19vYmplY3Rfc2V0KEdfT0JKRUNUKHdlYlNldHRpbmdzKSwgb3B0aW9uTmFtZSwg
cHJvcGVydHlWYWx1ZSwgTlVMTCk7CisgICAgICAgIGJyZWFrOworICAgIH0KKyAgICBkZWZhdWx0
OgorICAgICAgICBnX2Fzc2VydF9ub3RfcmVhY2hlZCgpOworICAgIH0KKworICAgIHJldHVybiBU
UlVFOworfQorCitzdGF0aWMgR09wdGlvbkVudHJ5KiBnZXRPcHRpb25FbnRyaWVzRnJvbVdlYktp
dFNldHRpbmdzKFdlYktpdFNldHRpbmdzICp3ZWJTZXR0aW5ncykKK3sKKyAgICBHUGFyYW1TcGVj
ICoqcHJvcGVydHlTcGVjczsKKyAgICBHT3B0aW9uRW50cnkgKm9wdGlvbkVudHJpZXM7CisgICAg
Z3VpbnQgbnVtUHJvcGVydGllcywgbnVtRW50cmllcywgaTsKKworICAgIHByb3BlcnR5U3BlY3Mg
PSBnX29iamVjdF9jbGFzc19saXN0X3Byb3BlcnRpZXMoR19PQkpFQ1RfR0VUX0NMQVNTKHdlYlNl
dHRpbmdzKSwgJm51bVByb3BlcnRpZXMpOworICAgIGlmICghcHJvcGVydHlTcGVjcykKKyAgICAg
ICAgcmV0dXJuIDA7CisKKyAgICBvcHRpb25FbnRyaWVzID0gZ19uZXcwKEdPcHRpb25FbnRyeSwg
bnVtUHJvcGVydGllcyArIDEpOworICAgIG51bUVudHJpZXMgPSAwOworICAgIGZvciAoaSA9IDA7
IGkgPCBudW1Qcm9wZXJ0aWVzOyBpKyspIHsKKyAgICAgICAgR1BhcmFtU3BlYyAqcGFyYW0gPSBw
cm9wZXJ0eVNwZWNzW2ldOworCisgICAgICAgIC8qIEZpbGwgaW4gc3RydWN0dXJlcyBvbmx5IGZv
ciB3cml0YWJsZSBwcm9wZXJ0aWVzLiAqLworICAgICAgICBpZiAoIXBhcmFtIHx8ICEocGFyYW0t
PmZsYWdzICYgR19QQVJBTV9XUklUQUJMRSkpCisgICAgICAgICAgICBjb250aW51ZTsKKworICAg
ICAgICBHVHlwZSBnUGFyYW1UeXBlID0gR19QQVJBTV9TUEVDX1ZBTFVFX1RZUEUocGFyYW0pOwor
ICAgICAgICBpZiAoZ1BhcmFtVHlwZSA9PSBHX1RZUEVfQk9PTEVBTiB8fCBnUGFyYW1UeXBlID09
IEdfVFlQRV9TVFJJTkcgfHwgZ1BhcmFtVHlwZSA9PSBHX1RZUEVfSU5UCisgICAgICAgICAgICB8
fCBnUGFyYW1UeXBlID09IEdfVFlQRV9GTE9BVCkgeworICAgICAgICAgICAgR09wdGlvbkVudHJ5
ICpvcHRpb25FbnRyeSA9ICZvcHRpb25FbnRyaWVzW251bUVudHJpZXMrK107CisgICAgICAgICAg
ICBvcHRpb25FbnRyeS0+bG9uZ19uYW1lID0gZ19wYXJhbV9zcGVjX2dldF9uYW1lKHBhcmFtKTsK
KworICAgICAgICAgICAgLyogVGhlcmUgaXMgbm8gZWFzeSB3YXkgdG8gZmlndXJlIG91ciBzaG9y
dCBuYW1lIGZvciBnZW5lcmF0ZWQgb3B0aW9uIGVudHJpZXMuCisgICAgICAgICAgICAgICBvcHRp
b25FbnRyeS5zaG9ydF9uYW1lPSovCisgICAgICAgICAgICAvKiBGb3IgYm9vbCBhcmd1bWVudHMg
ImVuYWJsZSIgdHlwZSBtYWtlIG9wdGlvbiBhcmd1bWVudCBub3QgcmVxdWlyZWQuICovCisgICAg
ICAgICAgICBpZiAoZ1BhcmFtVHlwZSA9PSBHX1RZUEVfQk9PTEVBTiAmJiAoc3Ryc3RyKG9wdGlv
bkVudHJ5LT5sb25nX25hbWUsICJlbmFibGUiKSkpCisgICAgICAgICAgICAgICAgb3B0aW9uRW50
cnktPmZsYWdzID0gR19PUFRJT05fRkxBR19PUFRJT05BTF9BUkc7CisgICAgICAgICAgICBvcHRp
b25FbnRyeS0+YXJnID0gR19PUFRJT05fQVJHX0NBTExCQUNLOworICAgICAgICAgICAgb3B0aW9u
RW50cnktPmFyZ19kYXRhID0gcGFyc2VPcHRpb25FbnRyeUNhbGxiYWNrOworICAgICAgICAgICAg
b3B0aW9uRW50cnktPmRlc2NyaXB0aW9uID0gZ19wYXJhbV9zcGVjX2dldF9ibHVyYihwYXJhbSk7
CisgICAgICAgICAgICBvcHRpb25FbnRyeS0+YXJnX2Rlc2NyaXB0aW9uID0gZ190eXBlX25hbWUo
Z1BhcmFtVHlwZSk7CisgICAgICAgIH0KKyAgICB9CisgICAgZ19mcmVlKHByb3BlcnR5U3BlY3Mp
OworCisgICAgcmV0dXJuIG9wdGlvbkVudHJpZXM7Cit9CisKK3N0YXRpYyBnYm9vbGVhbiBhZGRT
ZXR0aW5nc0dyb3VwVG9Db250ZXh0KEdPcHRpb25Db250ZXh0ICpjb250ZXh0LCBXZWJLaXRTZXR0
aW5ncyogd2Via2l0U2V0dGluZ3MpCit7CisgICAgR09wdGlvbkVudHJ5ICpvcHRpb25FbnRyaWVz
ID0gZ2V0T3B0aW9uRW50cmllc0Zyb21XZWJLaXRTZXR0aW5ncyh3ZWJraXRTZXR0aW5ncyk7Cisg
ICAgaWYgKCFvcHRpb25FbnRyaWVzKQorICAgICAgICByZXR1cm4gRkFMU0U7CisKKyAgICBHT3B0
aW9uR3JvdXAgKndlYlNldHRpbmdzR3JvdXAgPSBnX29wdGlvbl9ncm91cF9uZXcoIndlYnNldHRp
bmdzIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIldlYktpdFNldHRpbmdzIHdyaXRhYmxlIHByb3BlcnRpZXMgZm9yIGRlZmF1bHQgV2Vi
S2l0V2ViVmlldyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICJXZWJLaXRTZXR0aW5ncyBwcm9wZXJ0aWVzIiwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2Via2l0U2V0dGluZ3Ms
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IE5VTEwpOworICAgIGdfb3B0aW9uX2dyb3VwX2FkZF9lbnRyaWVzKHdlYlNldHRpbmdzR3JvdXAs
IG9wdGlvbkVudHJpZXMpOworICAgIGdfZnJlZShvcHRpb25FbnRyaWVzKTsKKworICAgIC8qIE9w
dGlvbiBjb250ZXh0IHRha2VzIG93bmVyc2hpcCBvZiB0aGUgZ3JvdXAuICovCisgICAgZ19vcHRp
b25fY29udGV4dF9hZGRfZ3JvdXAoY29udGV4dCwgd2ViU2V0dGluZ3NHcm91cCk7CisKKyAgICBy
ZXR1cm4gVFJVRTsKK30KKwogaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKIHsKICAg
ICBndGtfaW5pdCgmYXJnYywgJmFyZ3YpOwpAQCAtNjYsNiArMjAyLDEyIEBAIGludCBtYWluKGlu
dCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgZ19vcHRpb25fY29udGV4dF9hZGRfbWFpbl9lbnRy
aWVzKGNvbnRleHQsIGNvbW1hbmRMaW5lT3B0aW9ucywgMCk7CiAgICAgZ19vcHRpb25fY29udGV4
dF9hZGRfZ3JvdXAoY29udGV4dCwgZ3RrX2dldF9vcHRpb25fZ3JvdXAoVFJVRSkpOwogCisgICAg
V2ViS2l0U2V0dGluZ3MgKndlYmtpdFNldHRpbmdzID0gd2Via2l0X3NldHRpbmdzX25ldygpOwor
ICAgIGlmICghYWRkU2V0dGluZ3NHcm91cFRvQ29udGV4dChjb250ZXh0LCB3ZWJraXRTZXR0aW5n
cykpIHsKKyAgICAgICAgZ19vYmplY3RfdW5yZWYod2Via2l0U2V0dGluZ3MpOworICAgICAgICB3
ZWJraXRTZXR0aW5ncyA9IDA7CisgICAgfQorCiAgICAgR0Vycm9yICplcnJvciA9IDA7CiAgICAg
aWYgKCFnX29wdGlvbl9jb250ZXh0X3BhcnNlKGNvbnRleHQsICZhcmdjLCAmYXJndiwgJmVycm9y
KSkgewogICAgICAgICBnX3ByaW50ZXJyKCJDYW5ub3QgcGFyc2UgYXJndW1lbnRzOiAlc1xuIiwg
ZXJyb3ItPm1lc3NhZ2UpOwpAQCAtODAsOSArMjIyLDkgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNo
YXIgKmFyZ3ZbXSkKICAgICAgICAgaW50IGk7CiAKICAgICAgICAgZm9yIChpID0gMDsgdXJpQXJn
dW1lbnRzW2ldOyBpKyspCi0gICAgICAgICAgICBsb2FkVVJJKHVyaUFyZ3VtZW50c1tpXSk7Cisg
ICAgICAgICAgICBsb2FkVVJJKHVyaUFyZ3VtZW50c1tpXSwgd2Via2l0U2V0dGluZ3MpOwogICAg
IH0gZWxzZQotICAgICAgICBsb2FkVVJJKCJodHRwOi8vd3d3LndlYmtpdGd0ay5vcmcvIik7Cisg
ICAgICAgIGxvYWRVUkkoImh0dHA6Ly93d3cud2Via2l0Z3RrLm9yZy8iLCB3ZWJraXRTZXR0aW5n
cyk7CiAKICAgICBndGtfbWFpbigpOwogCi0tIAoxLjcuNy4z
</data>
<flag name="commit-queue"
          id="117350"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>120887</attachid>
            <date>2012-01-02 09:12:17 -0800</date>
            <delta_ts>2012-01-02 10:16:48 -0800</delta_ts>
            <desc>WebSettings support in MiniBrowser</desc>
            <filename>WebSettings-support-in-MiniBrowser.patch</filename>
            <type>text/plain</type>
            <size>8854</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">RnJvbSA0OWJjNDNmODM1M2IwMGY3ZWNjODM4NTU0MWZhY2I5MDUwNDc0MDg0IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBQaGlsaXBwZSBOb3JtYW5kIDxwbm9ybWFuZEBpZ2FsaWEuY29t
PgpEYXRlOiBTdW4sIDQgRGVjIDIwMTEgMTg6MDg6MDggKzAxMDAKU3ViamVjdDogW1BBVENIXSBX
ZWJTZXR0aW5ncyBzdXBwb3J0IGluIE1pbmlCcm93c2VyCgotLS0KIFRvb2xzL0NoYW5nZUxvZyAg
ICAgICAgICAgICAgfCAgIDE5ICsrKysrCiBUb29scy9NaW5pQnJvd3Nlci9ndGsvbWFpbi5jIHwg
IDE1NCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KIDIgZmlsZXMg
Y2hhbmdlZCwgMTcwIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv
VG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDI0ZGFjMzUuLmQwOTcwMDcg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMiBAQAorMjAxMS0xMi0wNCAgUGhpbGlwcGUgTm9ybWFuZCAgPHBub3JtYW5kQGlnYWxp
YS5jb20+CisKKyAgICAgICAgW1dLMl1bR1RLXSBXZWJTZXR0aW5ncyBzdXBwb3J0IGluIE1pbmlC
cm93c2VyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03
Mzc3MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBh
dGNoIGhlYXZpbHkgaW5zcGlyZWQgZnJvbSB0aGUgV2ViS2l0IEd0a0xhdW5jaGVyIHRvIHN1cHBv
cnQKKyAgICAgICAgY29tbWFuZC1saW5lIFdlYlNldHRpbmdzLiBFeGFtcGxlOiAtLWVuYWJsZS1m
dWxsc2NyZWVuPVRSVUUuCisgICAgICAgIFRoZSBmdWxsIGxpc3Qgb2Ygb3B0aW9ucyBjYW4gYmUg
Y29uc3VsdGVkIHdpdGggLS1oZWxwLXdlYnNldHRpbmdzLgorCisgICAgICAgICogTWluaUJyb3dz
ZXIvZ3RrL21haW4uYzoKKyAgICAgICAgKGxvYWRVUkkpOgorICAgICAgICAocGFyc2VPcHRpb25F
bnRyeUNhbGxiYWNrKToKKyAgICAgICAgKGlzVmFsaWRQYXJhbWV0ZXJUeXBlKToKKyAgICAgICAg
KGdldE9wdGlvbkVudHJpZXNGcm9tV2ViS2l0U2V0dGluZ3MpOgorICAgICAgICAoYWRkU2V0dGlu
Z3NHcm91cFRvQ29udGV4dCk6CisgICAgICAgIChtYWluKToKKwogMjAxMi0wMS0wMiAgQ2FybG9z
IEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUS10gQWRk
IGEgd2F5IHRvIGNoYW5nZSB3ZWIgdmlldyBzZXR0aW5ncyBpbiBNaW5pQnJvd3NlcgpkaWZmIC0t
Z2l0IGEvVG9vbHMvTWluaUJyb3dzZXIvZ3RrL21haW4uYyBiL1Rvb2xzL01pbmlCcm93c2VyL2d0
ay9tYWluLmMKaW5kZXggOTJkZDFiMC4uMGMyMjJlOCAxMDA2NDQKLS0tIGEvVG9vbHMvTWluaUJy
b3dzZXIvZ3RrL21haW4uYworKysgYi9Ub29scy9NaW5pQnJvd3Nlci9ndGsvbWFpbi5jCkBAIC0y
Niw4ICsyNiwxMCBAQAogICovCiAKICNpbmNsdWRlICJCcm93c2VyV2luZG93LmgiCisjaW5jbHVk
ZSA8ZXJybm8uaD4KICNpbmNsdWRlIDx3ZWJraXQyL3dlYmtpdDIuaD4KICNpbmNsdWRlIDxndGsv
Z3RrLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CiAKIHN0YXRpYyBjb25zdCBnY2hhciAqKnVyaUFy
Z3VtZW50cyA9IE5VTEw7CiAKQEAgLTQwLDExICs0MiwxNyBAQCBzdGF0aWMgZ2NoYXIgKmFyZ3Vt
ZW50VG9VUkwoY29uc3QgY2hhciAqZmlsZW5hbWUpCiAgICAgcmV0dXJuIGZpbGVVUkw7CiB9CiAK
LXN0YXRpYyB2b2lkIGxvYWRVUkkoY29uc3QgZ2NoYXIgKnVyaSkKK3N0YXRpYyB2b2lkIGxvYWRV
UkkoY29uc3QgZ2NoYXIgKnVyaSwgV2ViS2l0U2V0dGluZ3MgKndlYmtpdFNldHRpbmdzKQogewog
ICAgIEd0a1dpZGdldCAqd2ViVmlldyA9IHdlYmtpdF93ZWJfdmlld19uZXcoKTsKICAgICBHdGtX
aWRnZXQgKm1haW5XaW5kb3cgPSBicm93c2VyX3dpbmRvd19uZXcoV0VCS0lUX1dFQl9WSUVXKHdl
YlZpZXcpKTsKICAgICBnY2hhciAqdXJsID0gYXJndW1lbnRUb1VSTCh1cmkpOworCisgICAgaWYg
KHdlYmtpdFNldHRpbmdzKSB7CisgICAgICAgIHdlYmtpdF93ZWJfdmlld19zZXRfc2V0dGluZ3Mo
V0VCS0lUX1dFQl9WSUVXKHdlYlZpZXcpLCB3ZWJraXRTZXR0aW5ncyk7CisgICAgICAgIGdfb2Jq
ZWN0X3VucmVmKHdlYmtpdFNldHRpbmdzKTsKKyAgICB9CisKICAgICB3ZWJraXRfd2ViX3ZpZXdf
bG9hZF91cmkoV0VCS0lUX1dFQl9WSUVXKHdlYlZpZXcpLCB1cmwpOwogICAgIGdfZnJlZSh1cmwp
OwogCkBAIC01OCw2ICs2NiwxNDAgQEAgc3RhdGljIGNvbnN0IEdPcHRpb25FbnRyeSBjb21tYW5k
TGluZU9wdGlvbnNbXSA9CiAgICAgeyAwLCAwLCAwLCAwLCAwLCAwLCAwIH0KIH07CiAKK3N0YXRp
YyBnYm9vbGVhbiBwYXJzZU9wdGlvbkVudHJ5Q2FsbGJhY2soY29uc3QgZ2NoYXIgKm9wdGlvbk5h
bWVGdWxsLCBjb25zdCBnY2hhciAqdmFsdWUsIFdlYktpdFNldHRpbmdzICp3ZWJTZXR0aW5ncywg
R0Vycm9yICoqZXJyb3IpCit7CisgICAgaWYgKHN0cmxlbihvcHRpb25OYW1lRnVsbCkgPD0gMikg
eworICAgICAgICBnX3NldF9lcnJvcihlcnJvciwgR19PUFRJT05fRVJST1IsIEdfT1BUSU9OX0VS
Uk9SX0ZBSUxFRCwgIkludmFsaWQgb3B0aW9uICVzIiwgb3B0aW9uTmFtZUZ1bGwpOworICAgICAg
ICByZXR1cm4gRkFMU0U7CisgICAgfQorCisgICAgLyogV2UgaGF2ZSB0d28gLS0gaW4gb3B0aW9u
IG5hbWUgc28gcmVtb3ZlIHRoZW0uICovCisgICAgY29uc3QgZ2NoYXIgKm9wdGlvbk5hbWUgPSBv
cHRpb25OYW1lRnVsbCArIDI7CisgICAgR1BhcmFtU3BlYyAqc3BlYyA9IGdfb2JqZWN0X2NsYXNz
X2ZpbmRfcHJvcGVydHkoR19PQkpFQ1RfR0VUX0NMQVNTKHdlYlNldHRpbmdzKSwgb3B0aW9uTmFt
ZSk7CisgICAgaWYgKCFzcGVjKSB7CisgICAgICAgIGdfc2V0X2Vycm9yKGVycm9yLCBHX09QVElP
Tl9FUlJPUiwgR19PUFRJT05fRVJST1JfRkFJTEVELCAiQ2Fubm90IGZpbmQgd2ViIHNldHRpbmdz
IGZvciBvcHRpb24gJXMiLCBvcHRpb25OYW1lRnVsbCk7CisgICAgICAgIHJldHVybiBGQUxTRTsK
KyAgICB9CisKKyAgICBzd2l0Y2ggKEdfUEFSQU1fU1BFQ19WQUxVRV9UWVBFKHNwZWMpKSB7Cisg
ICAgY2FzZSBHX1RZUEVfQk9PTEVBTjogeworICAgICAgICBnYm9vbGVhbiBwcm9wZXJ0eVZhbHVl
ID0gVFJVRTsKKyAgICAgICAgaWYgKHZhbHVlICYmIGdfYXNjaWlfc3RyY2FzZWNtcCh2YWx1ZSwg
InRydWUiKSAmJiBzdHJjbXAodmFsdWUsICIxIikpCisgICAgICAgICAgICBwcm9wZXJ0eVZhbHVl
ID0gRkFMU0U7CisgICAgICAgIGdfb2JqZWN0X3NldChHX09CSkVDVCh3ZWJTZXR0aW5ncyksIG9w
dGlvbk5hbWUsIHByb3BlcnR5VmFsdWUsIE5VTEwpOworICAgICAgICBicmVhazsKKyAgICB9Cisg
ICAgY2FzZSBHX1RZUEVfU1RSSU5HOgorICAgICAgICBnX29iamVjdF9zZXQoR19PQkpFQ1Qod2Vi
U2V0dGluZ3MpLCBvcHRpb25OYW1lLCB2YWx1ZSwgTlVMTCk7CisgICAgICAgIGJyZWFrOworICAg
IGNhc2UgR19UWVBFX0lOVDogeworICAgICAgICBnbG9uZyBwcm9wZXJ0eVZhbHVlOworICAgICAg
ICBnY2hhciAqZW5kOworCisgICAgICAgIGVycm5vID0gMDsKKyAgICAgICAgcHJvcGVydHlWYWx1
ZSA9IGdfYXNjaWlfc3RydG9sbCh2YWx1ZSwgJmVuZCwgMCk7CisgICAgICAgIGlmIChlcnJubyA9
PSBFUkFOR0UgfHwgcHJvcGVydHlWYWx1ZSA+IEdfTUFYSU5UIHx8IHByb3BlcnR5VmFsdWUgPCBH
X01JTklOVCkgeworICAgICAgICAgICAgZ19zZXRfZXJyb3IoZXJyb3IsIEdfT1BUSU9OX0VSUk9S
LCBHX09QVElPTl9FUlJPUl9CQURfVkFMVUUsICJJbnRlZ2VyIHZhbHVlICclcycgZm9yICVzIG91
dCBvZiByYW5nZSIsIHZhbHVlLCBvcHRpb25OYW1lRnVsbCk7CisgICAgICAgICAgICByZXR1cm4g
RkFMU0U7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGVycm5vIHx8IHZhbHVlID09IGVuZCkgewor
ICAgICAgICAgICAgZ19zZXRfZXJyb3IoZXJyb3IsIEdfT1BUSU9OX0VSUk9SLCBHX09QVElPTl9F
UlJPUl9CQURfVkFMVUUsICJDYW5ub3QgcGFyc2UgaW50ZWdlciB2YWx1ZSAnJXMnIGZvciAlcyIs
IHZhbHVlLCBvcHRpb25OYW1lRnVsbCk7CisgICAgICAgICAgICByZXR1cm4gRkFMU0U7CisgICAg
ICAgIH0KKyAgICAgICAgZ19vYmplY3Rfc2V0KEdfT0JKRUNUKHdlYlNldHRpbmdzKSwgb3B0aW9u
TmFtZSwgcHJvcGVydHlWYWx1ZSwgTlVMTCk7CisgICAgICAgIGJyZWFrOworICAgIH0KKyAgICBj
YXNlIEdfVFlQRV9GTE9BVDogeworICAgICAgICBnZG91YmxlIHByb3BlcnR5VmFsdWU7CisgICAg
ICAgIGdjaGFyICplbmQ7CisKKyAgICAgICAgZXJybm8gPSAwOworICAgICAgICBwcm9wZXJ0eVZh
bHVlID0gZ19hc2NpaV9zdHJ0b2QodmFsdWUsICZlbmQpOworICAgICAgICBpZiAoZXJybm8gPT0g
RVJBTkdFIHx8IHByb3BlcnR5VmFsdWUgPiBHX01BWEZMT0FUIHx8IHByb3BlcnR5VmFsdWUgPCBH
X01JTkZMT0FUKSB7CisgICAgICAgICAgICBnX3NldF9lcnJvcihlcnJvciwgR19PUFRJT05fRVJS
T1IsIEdfT1BUSU9OX0VSUk9SX0JBRF9WQUxVRSwgIkZsb2F0IHZhbHVlICclcycgZm9yICVzIG91
dCBvZiByYW5nZSIsIHZhbHVlLCBvcHRpb25OYW1lRnVsbCk7CisgICAgICAgICAgICByZXR1cm4g
RkFMU0U7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGVycm5vIHx8IHZhbHVlID09IGVuZCkgewor
ICAgICAgICAgICAgZ19zZXRfZXJyb3IoZXJyb3IsIEdfT1BUSU9OX0VSUk9SLCBHX09QVElPTl9F
UlJPUl9CQURfVkFMVUUsICJDYW5ub3QgcGFyc2UgZmxvYXQgdmFsdWUgJyVzJyBmb3IgJXMiLCB2
YWx1ZSwgb3B0aW9uTmFtZUZ1bGwpOworICAgICAgICAgICAgcmV0dXJuIEZBTFNFOworICAgICAg
ICB9CisgICAgICAgIGdfb2JqZWN0X3NldChHX09CSkVDVCh3ZWJTZXR0aW5ncyksIG9wdGlvbk5h
bWUsIHByb3BlcnR5VmFsdWUsIE5VTEwpOworICAgICAgICBicmVhazsKKyAgICB9CisgICAgZGVm
YXVsdDoKKyAgICAgICAgZ19hc3NlcnRfbm90X3JlYWNoZWQoKTsKKyAgICB9CisKKyAgICByZXR1
cm4gVFJVRTsKK30KKworc3RhdGljIGdib29sZWFuIGlzVmFsaWRQYXJhbWV0ZXJUeXBlKEdUeXBl
IGdQYXJhbVR5cGUpCit7CisgICAgcmV0dXJuIChnUGFyYW1UeXBlID09IEdfVFlQRV9CT09MRUFO
IHx8IGdQYXJhbVR5cGUgPT0gR19UWVBFX1NUUklORyB8fCBnUGFyYW1UeXBlID09IEdfVFlQRV9J
TlQKKyAgICAgICAgICAgIHx8IGdQYXJhbVR5cGUgPT0gR19UWVBFX0ZMT0FUKTsKK30KKworc3Rh
dGljIEdPcHRpb25FbnRyeSogZ2V0T3B0aW9uRW50cmllc0Zyb21XZWJLaXRTZXR0aW5ncyhXZWJL
aXRTZXR0aW5ncyAqd2ViU2V0dGluZ3MpCit7CisgICAgR1BhcmFtU3BlYyAqKnByb3BlcnR5U3Bl
Y3M7CisgICAgR09wdGlvbkVudHJ5ICpvcHRpb25FbnRyaWVzOworICAgIGd1aW50IG51bVByb3Bl
cnRpZXMsIG51bUVudHJpZXMsIGk7CisKKyAgICBwcm9wZXJ0eVNwZWNzID0gZ19vYmplY3RfY2xh
c3NfbGlzdF9wcm9wZXJ0aWVzKEdfT0JKRUNUX0dFVF9DTEFTUyh3ZWJTZXR0aW5ncyksICZudW1Q
cm9wZXJ0aWVzKTsKKyAgICBpZiAoIXByb3BlcnR5U3BlY3MpCisgICAgICAgIHJldHVybiBOVUxM
OworCisgICAgb3B0aW9uRW50cmllcyA9IGdfbmV3MChHT3B0aW9uRW50cnksIG51bVByb3BlcnRp
ZXMgKyAxKTsKKyAgICBudW1FbnRyaWVzID0gMDsKKyAgICBmb3IgKGkgPSAwOyBpIDwgbnVtUHJv
cGVydGllczsgaSsrKSB7CisgICAgICAgIEdQYXJhbVNwZWMgKnBhcmFtID0gcHJvcGVydHlTcGVj
c1tpXTsKKworICAgICAgICAvKiBGaWxsIGluIHN0cnVjdHVyZXMgb25seSBmb3Igd3JpdGFibGUg
YW5kIG5vdCBjb25zdHJ1Y3Qtb25seSBwcm9wZXJ0aWVzLiAqLworICAgICAgICBpZiAoIXBhcmFt
IHx8ICEocGFyYW0tPmZsYWdzICYgR19QQVJBTV9XUklUQUJMRSkgfHwgKHBhcmFtLT5mbGFncyAm
IEdfUEFSQU1fQ09OU1RSVUNUX09OTFkpKQorICAgICAgICAgICAgY29udGludWU7CisKKyAgICAg
ICAgR1R5cGUgZ1BhcmFtVHlwZSA9IEdfUEFSQU1fU1BFQ19WQUxVRV9UWVBFKHBhcmFtKTsKKyAg
ICAgICAgaWYgKCFpc1ZhbGlkUGFyYW1ldGVyVHlwZShnUGFyYW1UeXBlKSkKKyAgICAgICAgICAg
IGNvbnRpbnVlOworCisgICAgICAgIEdPcHRpb25FbnRyeSAqb3B0aW9uRW50cnkgPSAmb3B0aW9u
RW50cmllc1tudW1FbnRyaWVzKytdOworICAgICAgICBvcHRpb25FbnRyeS0+bG9uZ19uYW1lID0g
Z19wYXJhbV9zcGVjX2dldF9uYW1lKHBhcmFtKTsKKworICAgICAgICAvKiBUaGVyZSBpcyBubyBl
YXN5IHdheSB0byBmaWd1cmUgb3VyIHNob3J0IG5hbWUgZm9yIGdlbmVyYXRlZCBvcHRpb24gZW50
cmllcy4KKyAgICAgICAgICAgb3B0aW9uRW50cnkuc2hvcnRfbmFtZT0qLworICAgICAgICAvKiBG
b3IgYm9vbCBhcmd1bWVudHMgImVuYWJsZSIgdHlwZSBtYWtlIG9wdGlvbiBhcmd1bWVudCBub3Qg
cmVxdWlyZWQuICovCisgICAgICAgIGlmIChnUGFyYW1UeXBlID09IEdfVFlQRV9CT09MRUFOICYm
IChzdHJzdHIob3B0aW9uRW50cnktPmxvbmdfbmFtZSwgImVuYWJsZSIpKSkKKyAgICAgICAgICAg
IG9wdGlvbkVudHJ5LT5mbGFncyA9IEdfT1BUSU9OX0ZMQUdfT1BUSU9OQUxfQVJHOworICAgICAg
ICBvcHRpb25FbnRyeS0+YXJnID0gR19PUFRJT05fQVJHX0NBTExCQUNLOworICAgICAgICBvcHRp
b25FbnRyeS0+YXJnX2RhdGEgPSBwYXJzZU9wdGlvbkVudHJ5Q2FsbGJhY2s7CisgICAgICAgIG9w
dGlvbkVudHJ5LT5kZXNjcmlwdGlvbiA9IGdfcGFyYW1fc3BlY19nZXRfYmx1cmIocGFyYW0pOwor
ICAgICAgICBvcHRpb25FbnRyeS0+YXJnX2Rlc2NyaXB0aW9uID0gZ190eXBlX25hbWUoZ1BhcmFt
VHlwZSk7CisgICAgfQorICAgIGdfZnJlZShwcm9wZXJ0eVNwZWNzKTsKKworICAgIHJldHVybiBv
cHRpb25FbnRyaWVzOworfQorCitzdGF0aWMgZ2Jvb2xlYW4gYWRkU2V0dGluZ3NHcm91cFRvQ29u
dGV4dChHT3B0aW9uQ29udGV4dCAqY29udGV4dCwgV2ViS2l0U2V0dGluZ3MqIHdlYmtpdFNldHRp
bmdzKQoreworICAgIEdPcHRpb25FbnRyeSAqb3B0aW9uRW50cmllcyA9IGdldE9wdGlvbkVudHJp
ZXNGcm9tV2ViS2l0U2V0dGluZ3Mod2Via2l0U2V0dGluZ3MpOworICAgIGlmICghb3B0aW9uRW50
cmllcykKKyAgICAgICAgcmV0dXJuIEZBTFNFOworCisgICAgR09wdGlvbkdyb3VwICp3ZWJTZXR0
aW5nc0dyb3VwID0gZ19vcHRpb25fZ3JvdXBfbmV3KCJ3ZWJzZXR0aW5ncyIsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJXZWJLaXRTZXR0
aW5ncyB3cml0YWJsZSBwcm9wZXJ0aWVzIGZvciBkZWZhdWx0IFdlYktpdFdlYlZpZXciLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiV2Vi
S2l0U2V0dGluZ3MgcHJvcGVydGllcyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHdlYmtpdFNldHRpbmdzLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKyAgICBnX29w
dGlvbl9ncm91cF9hZGRfZW50cmllcyh3ZWJTZXR0aW5nc0dyb3VwLCBvcHRpb25FbnRyaWVzKTsK
KyAgICBnX2ZyZWUob3B0aW9uRW50cmllcyk7CisKKyAgICAvKiBPcHRpb24gY29udGV4dCB0YWtl
cyBvd25lcnNoaXAgb2YgdGhlIGdyb3VwLiAqLworICAgIGdfb3B0aW9uX2NvbnRleHRfYWRkX2dy
b3VwKGNvbnRleHQsIHdlYlNldHRpbmdzR3JvdXApOworCisgICAgcmV0dXJuIFRSVUU7Cit9CisK
IGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiB7CiAgICAgZ3RrX2luaXQoJmFyZ2Ms
ICZhcmd2KTsKQEAgLTY2LDYgKzIwOCwxMiBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJn
dltdKQogICAgIGdfb3B0aW9uX2NvbnRleHRfYWRkX21haW5fZW50cmllcyhjb250ZXh0LCBjb21t
YW5kTGluZU9wdGlvbnMsIDApOwogICAgIGdfb3B0aW9uX2NvbnRleHRfYWRkX2dyb3VwKGNvbnRl
eHQsIGd0a19nZXRfb3B0aW9uX2dyb3VwKFRSVUUpKTsKIAorICAgIFdlYktpdFNldHRpbmdzICp3
ZWJraXRTZXR0aW5ncyA9IHdlYmtpdF9zZXR0aW5nc19uZXcoKTsKKyAgICBpZiAoIWFkZFNldHRp
bmdzR3JvdXBUb0NvbnRleHQoY29udGV4dCwgd2Via2l0U2V0dGluZ3MpKSB7CisgICAgICAgIGdf
b2JqZWN0X3VucmVmKHdlYmtpdFNldHRpbmdzKTsKKyAgICAgICAgd2Via2l0U2V0dGluZ3MgPSAw
OworICAgIH0KKwogICAgIEdFcnJvciAqZXJyb3IgPSAwOwogICAgIGlmICghZ19vcHRpb25fY29u
dGV4dF9wYXJzZShjb250ZXh0LCAmYXJnYywgJmFyZ3YsICZlcnJvcikpIHsKICAgICAgICAgZ19w
cmludGVycigiQ2Fubm90IHBhcnNlIGFyZ3VtZW50czogJXNcbiIsIGVycm9yLT5tZXNzYWdlKTsK
QEAgLTgwLDkgKzIyOCw5IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAg
ICAgIGludCBpOwogCiAgICAgICAgIGZvciAoaSA9IDA7IHVyaUFyZ3VtZW50c1tpXTsgaSsrKQot
ICAgICAgICAgICAgbG9hZFVSSSh1cmlBcmd1bWVudHNbaV0pOworICAgICAgICAgICAgbG9hZFVS
SSh1cmlBcmd1bWVudHNbaV0sIHdlYmtpdFNldHRpbmdzKTsKICAgICB9IGVsc2UKLSAgICAgICAg
bG9hZFVSSSgiaHR0cDovL3d3dy53ZWJraXRndGsub3JnLyIpOworICAgICAgICBsb2FkVVJJKCJo
dHRwOi8vd3d3LndlYmtpdGd0ay5vcmcvIiwgd2Via2l0U2V0dGluZ3MpOwogCiAgICAgZ3RrX21h
aW4oKTsKIAotLSAKMS43LjcuMw==
</data>
<flag name="review"
          id="121231"
          type_id="1"
          status="+"
          setter="mrobinson"
    />
          </attachment>
      

    </bug>

</bugzilla>