<?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>69524</bug_id>
          
          <creation_ts>2011-10-06 06:23:15 -0700</creation_ts>
          <short_desc>[GTK] Add methods to get/set a custom text enconding to WebKit2 GTK+ API</short_desc>
          <delta_ts>2011-10-17 09:23:05 -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>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>gustavo</cc>
    
    <cc>pnormand</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>479116</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-10-06 06:23:15 -0700</bug_when>
    <thetext>Add webkit_web_view_get_custom_text_encoding() and webkit_web_view_set_custom_text_encoding()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>479117</commentid>
    <comment_count>1</comment_count>
      <attachid>109953</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-10-06 06:24:53 -0700</bug_when>
    <thetext>Created attachment 109953
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>479182</commentid>
    <comment_count>2</comment_count>
      <attachid>109953</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-10-06 08:50:11 -0700</bug_when>
    <thetext>Comment on attachment 109953
Patch

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

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:48
&gt;      GRefPtr&lt;WebKitWebLoaderClient&gt; loaderClient;
&gt; +
&gt; +    CString customEncoding;

Again, I think tihs should be above under context.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:293
&gt; + * not the default-encoding

I guess a period is needed at the nd of this comment. default-encoding -&gt; default encoding

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:322
&gt; + * Sets the current custom text encoding name of @web_view. Any load
&gt; + * operation will be stopped and the page will be reloaded. This method
&gt; + * doesn&apos;t change the default enconding.
&gt; + * Setting custom text encoding to %NULL, makes @web_view to use the

Might want to mention what the effect of setting it a little more clearly. I&apos;m guessing that is makes text documents load with a different mime type, but I&apos;m not certain.

&gt; Source/WebKit2/UIProcess/API/gtk/tests/testwebview.c:43
&gt; +    WebKitWebView *view = WEBKIT_WEB_VIEW(webkit_web_view_new());
&gt; +    g_object_ref_sink(view);
&gt; +
&gt; +    g_assert(!webkit_web_view_get_custom_text_encoding(view));
&gt; +    webkit_web_view_set_custom_text_encoding(view, &quot;utf8&quot;);
&gt; +    g_assert_cmpstr(webkit_web_view_get_custom_text_encoding(view), ==, &quot;utf8&quot;);
&gt; +    /* Go back to the default enconding */
&gt; +    webkit_web_view_set_custom_text_encoding(view, NULL);
&gt; +    g_assert(!webkit_web_view_get_custom_text_encoding(view));
&gt; +    g_object_unref(view);

Here I think you should load a text document and verify that the mime type is what you expect.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>479855</commentid>
    <comment_count>3</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-10-07 00:55:17 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 109953 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=109953&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:48
&gt; &gt;      GRefPtr&lt;WebKitWebLoaderClient&gt; loaderClient;
&gt; &gt; +
&gt; &gt; +    CString customEncoding;
&gt; 
&gt; Again, I think tihs should be above under context.

Ok.

&gt; &gt; Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:293
&gt; &gt; + * not the default-encoding
&gt; 
&gt; I guess a period is needed at the nd of this comment. default-encoding -&gt; default encoding

Ok.

&gt; &gt; Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:322
&gt; &gt; + * Sets the current custom text encoding name of @web_view. Any load
&gt; &gt; + * operation will be stopped and the page will be reloaded. This method
&gt; &gt; + * doesn&apos;t change the default enconding.
&gt; &gt; + * Setting custom text encoding to %NULL, makes @web_view to use the
&gt; 
&gt; Might want to mention what the effect of setting it a little more clearly. I&apos;m guessing that is makes text documents load with a different mime type, but I&apos;m not certain.

It has nothing to do with mime types, it&apos;s the character encoding that will be used to interpret the text.

http://en.wikipedia.org/wiki/Character_encodings_in_HTML

We can rename it to webkit_web_view_set_custom_text_character_encoding() or webkit_web_view_set_custom_charset(). GLib uses charset in its API, so it would be consistent.

&gt; &gt; Source/WebKit2/UIProcess/API/gtk/tests/testwebview.c:43
&gt; &gt; +    WebKitWebView *view = WEBKIT_WEB_VIEW(webkit_web_view_new());
&gt; &gt; +    g_object_ref_sink(view);
&gt; &gt; +
&gt; &gt; +    g_assert(!webkit_web_view_get_custom_text_encoding(view));
&gt; &gt; +    webkit_web_view_set_custom_text_encoding(view, &quot;utf8&quot;);
&gt; &gt; +    g_assert_cmpstr(webkit_web_view_get_custom_text_encoding(view), ==, &quot;utf8&quot;);
&gt; &gt; +    /* Go back to the default enconding */
&gt; &gt; +    webkit_web_view_set_custom_text_encoding(view, NULL);
&gt; &gt; +    g_assert(!webkit_web_view_get_custom_text_encoding(view));
&gt; &gt; +    g_object_unref(view);
&gt; 
&gt; Here I think you should load a text document and verify that the mime type is what you expect.

We don&apos;t have API to get the mime-type yet.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>479875</commentid>
    <comment_count>4</comment_count>
      <attachid>110104</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-10-07 01:55:05 -0700</bug_when>
    <thetext>Created attachment 110104
Updated patch to use get/set_custom_charset

I hope it&apos;s clearer now</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>479876</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-07 01:57:39 -0700</bug_when>
    <thetext>Attachment 110104 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebKit2/ChangeLog&apos;, u&apos;Source/WebKit...&quot; exit_code: 1

WARNING: File exempt from style guide. Skipping: &quot;Source/WebKit2/UIProcess/API/gtk/WebKitWebView.h&quot;
Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:303:  Use 0 instead of NULL.  [readability/null] [5]
Total errors found: 1 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>483947</commentid>
    <comment_count>6</comment_count>
      <attachid>111005</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-10-14 06:04:08 -0700</bug_when>
    <thetext>Created attachment 111005
Patch updated to current git master</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>484007</commentid>
    <comment_count>7</comment_count>
      <attachid>111005</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-10-14 08:58:17 -0700</bug_when>
    <thetext>Comment on attachment 111005
Patch updated to current git master

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

Looks good, but please makethe fixes below.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:46
&gt; +    CString customEncoding;

Nit: I think this should be called customTextEncoding.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:320
&gt; + * not the default one.

You can remove &quot;not the default one&quot; here.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:337
&gt; +    const CString&amp; customEncoding = toImpl(wkCustomEncoding.get())-&gt;string().utf8();
&gt; +    if (webView-&gt;priv-&gt;customEncoding != customEncoding)
&gt; +        webView-&gt;priv-&gt;customEncoding = customEncoding;
&gt; +

Unfortunately, you should not use a reference here since  utf8() is a temporary. It&apos;s probably faster just to always assign this value to priv-&gt;customEncoding.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:344
&gt; + * @charset: (allow-none): a character encoding name, or %NULL

No comma after &quot;name&quot;

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:350
&gt; + * Sets the current custom character encoding name of @web_view. Any load
&gt; + * operation will be stopped and the page will be reloaded. This method
&gt; + * doesn&apos;t change the default character enconding.
&gt; + * Setting custom character encoding to %NULL, makes @web_view to use the
&gt; + * default one.

Please consider something like this for the documentation:

Sets the current custom character encoding override of @web_view. The custom
character encoding will override any text encoding detected via HTTP headers or
META tags. Calling this method will stop any current load operation and reload the
current page. Setting the custom character encoding to %NULL removes the character
encoding override.

Note: This does not change the default character enconding, which is set via #WebSettings.

&gt; Source/WebKit2/UIProcess/API/gtk/tests/TestWebKitWebView.cpp:34
&gt; +    /* Go back to the default charset */

Please use a C++ style comment here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>485209</commentid>
    <comment_count>8</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-10-17 09:23:05 -0700</bug_when>
    <thetext>Committed r97624: &lt;http://trac.webkit.org/changeset/97624&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>109953</attachid>
            <date>2011-10-06 06:24:53 -0700</date>
            <delta_ts>2011-10-07 01:55:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wk2-custom-encoding.diff</filename>
            <type>text/plain</type>
            <size>7665</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCAxNmM1MTA1Li44YjIyYmFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTgg
QEAKKzIwMTEtMTAtMDYgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFtHVEtdIEFkZCBtZXRob2RzIHRvIGdldC9zZXQgYSBjdXN0b20gdGV4dCBl
bmNvbmRpbmcgdG8gV2ViS2l0MiBHVEsrIEFQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njk1MjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuY3Bw
OgorICAgICAgICAod2Via2l0X3dlYl92aWV3X2dldF9jdXN0b21fdGV4dF9lbmNvZGluZyk6Cisg
ICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfc2V0X2N1c3RvbV90ZXh0X2VuY29kaW5nKToKKyAgICAg
ICAgKiBVSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3Lmg6CisgICAgICAgICogVUlQcm9j
ZXNzL0FQSS9ndGsvdGVzdHMvdGVzdHdlYnZpZXcuYzoKKyAgICAgICAgKHRlc3RXZWJWaWV3VGV4
dEVuY29kaW5nKToKKyAgICAgICAgKG1haW4pOgorCiAyMDExLTEwLTAzICBBbmR5IEVzdGVzICA8
YWVzdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgYW4gb3B0aW9uIHRvIHN1cHByZXNzIHJl
bmRlcmluZyB1bnRpbCB0aGUgZG9jdW1lbnQncyBsb2FkIGV2ZW50IGZpcmVzLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5jcHAgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3LmNwcAppbmRleCAy
YzMzZjMzLi5lYzc5ZDBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L2d0ay9XZWJLaXRXZWJWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L2d0ay9XZWJLaXRXZWJWaWV3LmNwcApAQCAtNDQsNiArNDQsOCBAQCBzdHJ1Y3QgX1dlYktpdFdl
YlZpZXdQcml2YXRlIHsKICAgICBXZWJLaXRXZWJDb250ZXh0KiBjb250ZXh0OwogCiAgICAgR1Jl
ZlB0cjxXZWJLaXRXZWJMb2FkZXJDbGllbnQ+IGxvYWRlckNsaWVudDsKKworICAgIENTdHJpbmcg
Y3VzdG9tRW5jb2Rpbmc7CiB9OwogCiBHX0RFRklORV9UWVBFKFdlYktpdFdlYlZpZXcsIHdlYmtp
dF93ZWJfdmlldywgV0VCS0lUX1RZUEVfV0VCX1ZJRVdfQkFTRSkKQEAgLTI4MSwzICsyODMsNTAg
QEAgdm9pZCB3ZWJraXRfd2ViX3ZpZXdfZ29fZm9yd2FyZChXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3
KQogICAgIFdlYlBhZ2VQcm94eSogcGFnZSA9IHdlYmtpdFdlYlZpZXdCYXNlR2V0UGFnZShXRUJL
SVRfV0VCX1ZJRVdfQkFTRSh3ZWJWaWV3KSk7CiAgICAgV0tQYWdlR29Gb3J3YXJkKHRvQVBJKHBh
Z2UpKTsKIH0KKworCisvKioKKyAqIHdlYmtpdF93ZWJfdmlld19nZXRfY3VzdG9tX3RleHRfZW5j
b2Rpbmc6CisgKiBAd2ViX3ZpZXc6IGEgI1dlYktpdFdlYlZpZXcKKyAqCisgKiBSZXR1cm5zIHRo
ZSBjdXJyZW50IGN1c3RvbSB0ZXh0IGVuY29kaW5nIG5hbWUgb2YgQHdlYl92aWV3LAorICogbm90
IHRoZSBkZWZhdWx0LWVuY29kaW5nCisgKgorICogUmV0dXJuczogdGhlIGN1cnJlbnQgY3VzdG9t
IHRleHQgZW5jb2RpbmcgbmFtZSwgb3IgJU5VTEwgaWYgbm8KKyAqICAgIGN1c3RvbSB0ZXh0IGVu
Y29kaW5nIGhhcyBiZWVuIHNldAorICovCitjb25zdCBnY2hhciogd2Via2l0X3dlYl92aWV3X2dl
dF9jdXN0b21fdGV4dF9lbmNvZGluZyhXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3KQoreworICAgIGdf
cmV0dXJuX3ZhbF9pZl9mYWlsKFdFQktJVF9JU19XRUJfVklFVyh3ZWJWaWV3KSwgMCk7CisKKyAg
ICBXZWJQYWdlUHJveHkqIHBhZ2UgPSB3ZWJraXRXZWJWaWV3QmFzZUdldFBhZ2UoV0VCS0lUX1dF
Ql9WSUVXX0JBU0Uod2ViVmlldykpOworICAgIFdLUmV0YWluUHRyPFdLU3RyaW5nUmVmPiB3a0N1
c3RvbUVuY29kaW5nKEFkb3B0V0ssIFdLUGFnZUNvcHlDdXN0b21UZXh0RW5jb2RpbmdOYW1lKHRv
QVBJKHBhZ2UpKSk7CisgICAgaWYgKFdLU3RyaW5nSXNFbXB0eSh3a0N1c3RvbUVuY29kaW5nLmdl
dCgpKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBjb25zdCBDU3RyaW5nJiBjdXN0b21F
bmNvZGluZyA9IHRvSW1wbCh3a0N1c3RvbUVuY29kaW5nLmdldCgpKS0+c3RyaW5nKCkudXRmOCgp
OworICAgIGlmICh3ZWJWaWV3LT5wcml2LT5jdXN0b21FbmNvZGluZyAhPSBjdXN0b21FbmNvZGlu
ZykKKyAgICAgICAgd2ViVmlldy0+cHJpdi0+Y3VzdG9tRW5jb2RpbmcgPSBjdXN0b21FbmNvZGlu
ZzsKKworICAgIHJldHVybiB3ZWJWaWV3LT5wcml2LT5jdXN0b21FbmNvZGluZy5kYXRhKCk7Cit9
CisKKy8qKgorICogd2Via2l0X3dlYl92aWV3X3NldF9jdXN0b21fdGV4dF9lbmNvZGluZzoKKyAq
IEB3ZWJfdmlldzogYSAjV2ViS2l0V2ViVmlldworICogQGVuY29kaW5nX25hbWU6IChhbGxvdy1u
b25lKTogYSB0ZXh0IGVuY29kaW5nIG5hbWUsIG9yICVOVUxMCisgKgorICogU2V0cyB0aGUgY3Vy
cmVudCBjdXN0b20gdGV4dCBlbmNvZGluZyBuYW1lIG9mIEB3ZWJfdmlldy4gQW55IGxvYWQKKyAq
IG9wZXJhdGlvbiB3aWxsIGJlIHN0b3BwZWQgYW5kIHRoZSBwYWdlIHdpbGwgYmUgcmVsb2FkZWQu
IFRoaXMgbWV0aG9kCisgKiBkb2Vzbid0IGNoYW5nZSB0aGUgZGVmYXVsdCBlbmNvbmRpbmcuCisg
KiBTZXR0aW5nIGN1c3RvbSB0ZXh0IGVuY29kaW5nIHRvICVOVUxMLCBtYWtlcyBAd2ViX3ZpZXcg
dG8gdXNlIHRoZQorICogZGVmYXVsdCBlbmNvZGluZy4KKyAqLwordm9pZCB3ZWJraXRfd2ViX3Zp
ZXdfc2V0X2N1c3RvbV90ZXh0X2VuY29kaW5nKFdlYktpdFdlYlZpZXcqIHdlYlZpZXcsIGNvbnN0
IGdjaGFyKiBlbmNvZGluZ05hbWUpCit7CisgICAgZ19yZXR1cm5faWZfZmFpbChXRUJLSVRfSVNf
V0VCX1ZJRVcod2ViVmlldykpOworCisgICAgV2ViUGFnZVByb3h5KiBwYWdlID0gd2Via2l0V2Vi
Vmlld0Jhc2VHZXRQYWdlKFdFQktJVF9XRUJfVklFV19CQVNFKHdlYlZpZXcpKTsKKyAgICBXS1Jl
dGFpblB0cjxXS1N0cmluZ1JlZj4gd2tFbmNvZGluZ05hbWUgPSBlbmNvZGluZ05hbWUgPyBhZG9w
dFdLKFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKGVuY29kaW5nTmFtZSkpIDogMDsKKyAg
ICBXS1BhZ2VTZXRDdXN0b21UZXh0RW5jb2RpbmdOYW1lKHRvQVBJKHBhZ2UpLCB3a0VuY29kaW5n
TmFtZS5nZXQoKSk7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L2d0ay9XZWJLaXRXZWJWaWV3LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9X
ZWJLaXRXZWJWaWV3LmgKaW5kZXggZGUyNmE4NS4uZjhiMTQwNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuaApAQCAtNjcsMzkgKzY3LDQ2
IEBAIHN0cnVjdCBfV2ViS2l0V2ViVmlld0NsYXNzIHsKIH07CiAKIFdFQktJVF9BUEkgR1R5cGUK
LXdlYmtpdF93ZWJfdmlld19nZXRfdHlwZSAgICAgICAgICAgICh2b2lkKTsKK3dlYmtpdF93ZWJf
dmlld19nZXRfdHlwZSAgICAgICAgICAgICAgICAgKHZvaWQpOwogCiBXRUJLSVRfQVBJIEd0a1dp
ZGdldCAqCi13ZWJraXRfd2ViX3ZpZXdfbmV3ICAgICAgICAgICAgICAgICAodm9pZCk7Cit3ZWJr
aXRfd2ViX3ZpZXdfbmV3ICAgICAgICAgICAgICAgICAgICAgICh2b2lkKTsKIAogV0VCS0lUX0FQ
SSBHdGtXaWRnZXQgKgotd2Via2l0X3dlYl92aWV3X25ld193aXRoX2NvbnRleHQgICAgKFdlYktp
dFdlYkNvbnRleHQgICAgICAqY29udGV4dCk7Cit3ZWJraXRfd2ViX3ZpZXdfbmV3X3dpdGhfY29u
dGV4dCAgICAgICAgIChXZWJLaXRXZWJDb250ZXh0ICAgICAgKmNvbnRleHQpOwogCiBXRUJLSVRf
QVBJIFdlYktpdFdlYkNvbnRleHQgKgotd2Via2l0X3dlYl92aWV3X2dldF9jb250ZXh0ICAgICAg
ICAgKFdlYktpdFdlYlZpZXcgICAgICAgICAqd2ViX3ZpZXcpOword2Via2l0X3dlYl92aWV3X2dl
dF9jb250ZXh0ICAgICAgICAgICAgICAoV2ViS2l0V2ViVmlldyAgICAgICAgICp3ZWJfdmlldyk7
CiAKIFdFQktJVF9BUEkgV2ViS2l0V2ViTG9hZGVyQ2xpZW50ICoKLXdlYmtpdF93ZWJfdmlld19n
ZXRfbG9hZGVyX2NsaWVudCAgIChXZWJLaXRXZWJWaWV3ICAgICAgICAgKndlYl92aWV3KTsKK3dl
YmtpdF93ZWJfdmlld19nZXRfbG9hZGVyX2NsaWVudCAgICAgICAgKFdlYktpdFdlYlZpZXcgICAg
ICAgICAqd2ViX3ZpZXcpOwogCiBXRUJLSVRfQVBJIHZvaWQKLXdlYmtpdF93ZWJfdmlld19zZXRf
bG9hZGVyX2NsaWVudCAgIChXZWJLaXRXZWJWaWV3ICAgICAgICAgKndlYl92aWV3LAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlYktpdFdlYkxvYWRlckNsaWVudCAqbG9h
ZGVyX2NsaWVudCk7Cit3ZWJraXRfd2ViX3ZpZXdfc2V0X2xvYWRlcl9jbGllbnQgICAgICAgIChX
ZWJLaXRXZWJWaWV3ICAgICAgICAgKndlYl92aWV3LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgV2ViS2l0V2ViTG9hZGVyQ2xpZW50ICpsb2FkZXJfY2xpZW50KTsK
IAogV0VCS0lUX0FQSSB2b2lkCi13ZWJraXRfd2ViX3ZpZXdfbG9hZF91cmkgICAgICAgICAgICAo
V2ViS2l0V2ViVmlldyAgICAgICAgICp3ZWJfdmlldywKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCBnY2hhciAgICAgICAgICAgKnVyaSk7Cit3ZWJraXRfd2ViX3Zp
ZXdfbG9hZF91cmkgICAgICAgICAgICAgICAgIChXZWJLaXRXZWJWaWV3ICAgICAgICAgKndlYl92
aWV3LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2No
YXIgICAgICAgICAgICp1cmkpOwogCiBXRUJLSVRfQVBJIHZvaWQKLXdlYmtpdF93ZWJfdmlld19s
b2FkX2FsdGVybmF0ZV9odG1sIChXZWJLaXRXZWJWaWV3ICAgICAgICAgKndlYl92aWV3LAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGdjaGFyICAgICAgICAgICAq
Y29udGVudCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnY2hh
ciAgICAgICAgICAgKmJhc2VfdXJpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IGdjaGFyICAgICAgICAgICAqdW5yZWFjaGFibGVfdXJpKTsKK3dlYmtpdF93ZWJf
dmlld19sb2FkX2FsdGVybmF0ZV9odG1sICAgICAgKFdlYktpdFdlYlZpZXcgICAgICAgICAqd2Vi
X3ZpZXcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBn
Y2hhciAgICAgICAgICAgKmNvbnRlbnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBnY2hhciAgICAgICAgICAgKmJhc2VfdXJpLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2NoYXIgICAgICAgICAgICp1bnJl
YWNoYWJsZV91cmkpOwogCiBXRUJLSVRfQVBJIHZvaWQKLXdlYmtpdF93ZWJfdmlld19nb19iYWNr
ICAgICAgICAgICAgIChXZWJLaXRXZWJWaWV3ICAgICAgICAgKndlYl92aWV3KTsKK3dlYmtpdF93
ZWJfdmlld19nb19iYWNrICAgICAgICAgICAgICAgICAgKFdlYktpdFdlYlZpZXcgICAgICAgICAq
d2ViX3ZpZXcpOwogCiBXRUJLSVRfQVBJIHZvaWQKLXdlYmtpdF93ZWJfdmlld19nb19mb3J3YXJk
ICAgICAgICAgIChXZWJLaXRXZWJWaWV3ICAgICAgICAgKndlYl92aWV3KTsKK3dlYmtpdF93ZWJf
dmlld19nb19mb3J3YXJkICAgICAgICAgICAgICAgKFdlYktpdFdlYlZpZXcgICAgICAgICAqd2Vi
X3ZpZXcpOworCitXRUJLSVRfQVBJIGNvbnN0IGdjaGFyICoKK3dlYmtpdF93ZWJfdmlld19nZXRf
Y3VzdG9tX3RleHRfZW5jb2RpbmcgKFdlYktpdFdlYlZpZXcgICAgICAgICAqd2ViX3ZpZXcpOwor
CitXRUJLSVRfQVBJIHZvaWQKK3dlYmtpdF93ZWJfdmlld19zZXRfY3VzdG9tX3RleHRfZW5jb2Rp
bmcgKFdlYktpdFdlYlZpZXcgICAgICAgICAqd2ViX3ZpZXcsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnY2hhciAgICAgICAgICAgKmVuY29kaW5nX25h
bWUpOwogCiBHX0VORF9ERUNMUwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL2d0ay90ZXN0cy90ZXN0d2Vidmlldy5jIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9ndGsvdGVzdHMvdGVzdHdlYnZpZXcuYwppbmRleCA5YTI3YWZlLi5hNTYxZTEwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy90ZXN0d2Vidmll
dy5jCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL3Rlc3R3ZWJ2
aWV3LmMKQEAgLTI5LDYgKzI5LDIwIEBAIHN0YXRpYyB2b2lkIHRlc3RXZWJWaWV3RGVmYXVsdENv
bnRleHQodm9pZCkKICAgICBnX29iamVjdF91bnJlZih2aWV3KTsKIH0KIAorc3RhdGljIHZvaWQg
dGVzdFdlYlZpZXdUZXh0RW5jb2Rpbmcodm9pZCkKK3sKKyAgICBXZWJLaXRXZWJWaWV3ICp2aWV3
ID0gV0VCS0lUX1dFQl9WSUVXKHdlYmtpdF93ZWJfdmlld19uZXcoKSk7CisgICAgZ19vYmplY3Rf
cmVmX3Npbmsodmlldyk7CisKKyAgICBnX2Fzc2VydCghd2Via2l0X3dlYl92aWV3X2dldF9jdXN0
b21fdGV4dF9lbmNvZGluZyh2aWV3KSk7CisgICAgd2Via2l0X3dlYl92aWV3X3NldF9jdXN0b21f
dGV4dF9lbmNvZGluZyh2aWV3LCAidXRmOCIpOworICAgIGdfYXNzZXJ0X2NtcHN0cih3ZWJraXRf
d2ViX3ZpZXdfZ2V0X2N1c3RvbV90ZXh0X2VuY29kaW5nKHZpZXcpLCA9PSwgInV0ZjgiKTsKKyAg
ICAvKiBHbyBiYWNrIHRvIHRoZSBkZWZhdWx0IGVuY29uZGluZyAqLworICAgIHdlYmtpdF93ZWJf
dmlld19zZXRfY3VzdG9tX3RleHRfZW5jb2RpbmcodmlldywgTlVMTCk7CisgICAgZ19hc3NlcnQo
IXdlYmtpdF93ZWJfdmlld19nZXRfY3VzdG9tX3RleHRfZW5jb2RpbmcodmlldykpOworICAgIGdf
b2JqZWN0X3VucmVmKHZpZXcpOworfQorCiBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3Yp
CiB7CiAgICAgZ190aHJlYWRfaW5pdChOVUxMKTsKQEAgLTM5LDYgKzUzLDggQEAgaW50IG1haW4o
aW50IGFyZ2MsIGNoYXIgKiphcmd2KQogICAgIGdfdGVzdF9idWdfYmFzZSgiaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvIik7CiAgICAgZ190ZXN0X2FkZF9mdW5jKCIvd2Via2l0Mi93ZWJ2aWV3L2Rl
ZmF1bHRfY29udGV4dCIsCiAgICAgICAgICAgICAgICAgICAgIHRlc3RXZWJWaWV3RGVmYXVsdENv
bnRleHQpOworICAgIGdfdGVzdF9hZGRfZnVuYygiL3dlYmtpdDIvd2Vidmlldy90ZXh0X2VuY29k
aW5nIiwKKyAgICAgICAgICAgICAgICAgICAgdGVzdFdlYlZpZXdUZXh0RW5jb2RpbmcpOwogCiAg
ICAgcmV0dXJuIGdfdGVzdF9ydW4oKTsKIH0K
</data>
<flag name="review"
          id="107304"
          type_id="1"
          status="-"
          setter="mrobinson"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>110104</attachid>
            <date>2011-10-07 01:55:05 -0700</date>
            <delta_ts>2011-10-14 06:04:08 -0700</delta_ts>
            <desc>Updated patch to use get/set_custom_charset</desc>
            <filename>wk2-text-encoding2.diff</filename>
            <type>text/plain</type>
            <size>5286</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCA1OWQ5MGU5Li42ZWVhNjIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTgg
QEAKKzIwMTEtMTAtMDcgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFtHVEtdIEFkZCBtZXRob2RzIHRvIGdldC9zZXQgYSBjdXN0b20gdGV4dCBl
bmNvbmRpbmcgdG8gV2ViS2l0MiBHVEsrIEFQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njk1MjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuY3Bw
OgorICAgICAgICAod2Via2l0X3dlYl92aWV3X2dldF9jdXN0b21fY2hhcnNldCk6CisgICAgICAg
ICh3ZWJraXRfd2ViX3ZpZXdfc2V0X2N1c3RvbV9jaGFyc2V0KToKKyAgICAgICAgKiBVSVByb2Nl
c3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsv
dGVzdHMvdGVzdHdlYnZpZXcuYzoKKyAgICAgICAgKHRlc3RXZWJWaWV3Q3VzdG9tQ2hhcnNldCk6
CisgICAgICAgIChtYWluKToKKwogMjAxMS0xMC0wNiAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFt
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgW1dpbkNhaXJvXSBDb3JyZWN0IGltcHJvcGVyIGlkZW50
aWZpY2F0aW9uIG9mIFdLUUMgZXh0ZW5zaW9ucy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5jcHAKaW5kZXggMmMzM2YzMy4uOThiOGI3MCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmll
dy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmll
dy5jcHAKQEAgLTQyLDYgKzQyLDcgQEAgZW51bSB7CiAKIHN0cnVjdCBfV2ViS2l0V2ViVmlld1By
aXZhdGUgewogICAgIFdlYktpdFdlYkNvbnRleHQqIGNvbnRleHQ7CisgICAgQ1N0cmluZyBjdXN0
b21FbmNvZGluZzsKIAogICAgIEdSZWZQdHI8V2ViS2l0V2ViTG9hZGVyQ2xpZW50PiBsb2FkZXJD
bGllbnQ7CiB9OwpAQCAtMjgxLDMgKzI4Miw0OSBAQCB2b2lkIHdlYmtpdF93ZWJfdmlld19nb19m
b3J3YXJkKFdlYktpdFdlYlZpZXcqIHdlYlZpZXcpCiAgICAgV2ViUGFnZVByb3h5KiBwYWdlID0g
d2Via2l0V2ViVmlld0Jhc2VHZXRQYWdlKFdFQktJVF9XRUJfVklFV19CQVNFKHdlYlZpZXcpKTsK
ICAgICBXS1BhZ2VHb0ZvcndhcmQodG9BUEkocGFnZSkpOwogfQorCisvKioKKyAqIHdlYmtpdF93
ZWJfdmlld19nZXRfY3VzdG9tX2NoYXJzZXQ6CisgKiBAd2ViX3ZpZXc6IGEgI1dlYktpdFdlYlZp
ZXcKKyAqCisgKiBSZXR1cm5zIHRoZSBjdXJyZW50IGN1c3RvbSBjaGFyYWN0ZXIgZW5jb2Rpbmcg
bmFtZSBvZiBAd2ViX3ZpZXcsCisgKiBub3QgdGhlIGRlZmF1bHQgb25lLgorICoKKyAqIFJldHVy
bnM6IHRoZSBjdXJyZW50IGN1c3RvbSBjaGFyYWN0ZXIgZW5jb2RpbmcgbmFtZSwgb3IgJU5VTEwg
aWYgbm8KKyAqICAgIGN1c3RvbSBjaGFyYWN0ZXIgZW5jb2RpbmcgaGFzIGJlZW4gc2V0LgorICov
Citjb25zdCBnY2hhciogd2Via2l0X3dlYl92aWV3X2dldF9jdXN0b21fY2hhcnNldChXZWJLaXRX
ZWJWaWV3KiB3ZWJWaWV3KQoreworICAgIGdfcmV0dXJuX3ZhbF9pZl9mYWlsKFdFQktJVF9JU19X
RUJfVklFVyh3ZWJWaWV3KSwgMCk7CisKKyAgICBXZWJQYWdlUHJveHkqIHBhZ2UgPSB3ZWJraXRX
ZWJWaWV3QmFzZUdldFBhZ2UoV0VCS0lUX1dFQl9WSUVXX0JBU0Uod2ViVmlldykpOworICAgIFdL
UmV0YWluUHRyPFdLU3RyaW5nUmVmPiB3a0N1c3RvbUVuY29kaW5nKEFkb3B0V0ssIFdLUGFnZUNv
cHlDdXN0b21UZXh0RW5jb2RpbmdOYW1lKHRvQVBJKHBhZ2UpKSk7CisgICAgaWYgKFdLU3RyaW5n
SXNFbXB0eSh3a0N1c3RvbUVuY29kaW5nLmdldCgpKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisK
KyAgICBjb25zdCBDU3RyaW5nJiBjdXN0b21FbmNvZGluZyA9IHRvSW1wbCh3a0N1c3RvbUVuY29k
aW5nLmdldCgpKS0+c3RyaW5nKCkudXRmOCgpOworICAgIGlmICh3ZWJWaWV3LT5wcml2LT5jdXN0
b21FbmNvZGluZyAhPSBjdXN0b21FbmNvZGluZykKKyAgICAgICAgd2ViVmlldy0+cHJpdi0+Y3Vz
dG9tRW5jb2RpbmcgPSBjdXN0b21FbmNvZGluZzsKKworICAgIHJldHVybiB3ZWJWaWV3LT5wcml2
LT5jdXN0b21FbmNvZGluZy5kYXRhKCk7Cit9CisKKy8qKgorICogd2Via2l0X3dlYl92aWV3X3Nl
dF9jdXN0b21fY2hhcnNldDoKKyAqIEB3ZWJfdmlldzogYSAjV2ViS2l0V2ViVmlldworICogQGNo
YXJzZXQ6IChhbGxvdy1ub25lKTogYSBjaGFyYWN0ZXIgZW5jb2RpbmcgbmFtZSwgb3IgJU5VTEwK
KyAqCisgKiBTZXRzIHRoZSBjdXJyZW50IGN1c3RvbSBjaGFyYWN0ZXIgZW5jb2RpbmcgbmFtZSBv
ZiBAd2ViX3ZpZXcuIEFueSBsb2FkCisgKiBvcGVyYXRpb24gd2lsbCBiZSBzdG9wcGVkIGFuZCB0
aGUgcGFnZSB3aWxsIGJlIHJlbG9hZGVkLiBUaGlzIG1ldGhvZAorICogZG9lc24ndCBjaGFuZ2Ug
dGhlIGRlZmF1bHQgY2hhcmFjdGVyIGVuY29uZGluZy4KKyAqIFNldHRpbmcgY3VzdG9tIGNoYXJh
Y3RlciBlbmNvZGluZyB0byAlTlVMTCwgbWFrZXMgQHdlYl92aWV3IHRvIHVzZSB0aGUKKyAqIGRl
ZmF1bHQgb25lLgorICovCit2b2lkIHdlYmtpdF93ZWJfdmlld19zZXRfY3VzdG9tX2NoYXJzZXQo
V2ViS2l0V2ViVmlldyogd2ViVmlldywgY29uc3QgZ2NoYXIqIGNoYXJzZXQpCit7CisgICAgZ19y
ZXR1cm5faWZfZmFpbChXRUJLSVRfSVNfV0VCX1ZJRVcod2ViVmlldykpOworCisgICAgV2ViUGFn
ZVByb3h5KiBwYWdlID0gd2Via2l0V2ViVmlld0Jhc2VHZXRQYWdlKFdFQktJVF9XRUJfVklFV19C
QVNFKHdlYlZpZXcpKTsKKyAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4gd2tFbmNvZGluZ05h
bWUgPSBjaGFyc2V0ID8gYWRvcHRXSyhXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZyhjaGFy
c2V0KSkgOiAwOworICAgIFdLUGFnZVNldEN1c3RvbVRleHRFbmNvZGluZ05hbWUodG9BUEkocGFn
ZSksIHdrRW5jb2RpbmdOYW1lLmdldCgpKTsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuaAppbmRleCBkZTI2YTg1Li5jYzJlNGMwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3LmgK
KysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5oCkBA
IC0xMDEsNiArMTAxLDEzIEBAIHdlYmtpdF93ZWJfdmlld19nb19iYWNrICAgICAgICAgICAgIChX
ZWJLaXRXZWJWaWV3ICAgICAgICAgKndlYl92aWV3KTsKIFdFQktJVF9BUEkgdm9pZAogd2Via2l0
X3dlYl92aWV3X2dvX2ZvcndhcmQgICAgICAgICAgKFdlYktpdFdlYlZpZXcgICAgICAgICAqd2Vi
X3ZpZXcpOwogCitXRUJLSVRfQVBJIGNvbnN0IGdjaGFyICoKK3dlYmtpdF93ZWJfdmlld19nZXRf
Y3VzdG9tX2NoYXJzZXQgIChXZWJLaXRXZWJWaWV3ICAgICAgICAgKndlYl92aWV3KTsKKworV0VC
S0lUX0FQSSB2b2lkCit3ZWJraXRfd2ViX3ZpZXdfc2V0X2N1c3RvbV9jaGFyc2V0ICAoV2ViS2l0
V2ViVmlldyAgICAgICAgICp3ZWJfdmlldywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCBnY2hhciAgICAgICAgICAgKmNoYXJzZXQpOworCiBHX0VORF9ERUNMUwog
CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL3Rl
c3RzL3Rlc3R3ZWJ2aWV3LmMgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay90ZXN0
cy90ZXN0d2Vidmlldy5jCmluZGV4IDlhMjdhZmUuLjMwMzc5NWIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL3Rlc3R3ZWJ2aWV3LmMKKysrIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvdGVzdHdlYnZpZXcuYwpAQCAtMjks
NiArMjksMjAgQEAgc3RhdGljIHZvaWQgdGVzdFdlYlZpZXdEZWZhdWx0Q29udGV4dCh2b2lkKQog
ICAgIGdfb2JqZWN0X3VucmVmKHZpZXcpOwogfQogCitzdGF0aWMgdm9pZCB0ZXN0V2ViVmlld0N1
c3RvbUNoYXJzZXQodm9pZCkKK3sKKyAgICBXZWJLaXRXZWJWaWV3ICp2aWV3ID0gV0VCS0lUX1dF
Ql9WSUVXKHdlYmtpdF93ZWJfdmlld19uZXcoKSk7CisgICAgZ19vYmplY3RfcmVmX3Npbmsodmll
dyk7CisKKyAgICBnX2Fzc2VydCghd2Via2l0X3dlYl92aWV3X2dldF9jdXN0b21fY2hhcnNldCh2
aWV3KSk7CisgICAgd2Via2l0X3dlYl92aWV3X3NldF9jdXN0b21fY2hhcnNldCh2aWV3LCAidXRm
OCIpOworICAgIGdfYXNzZXJ0X2NtcHN0cih3ZWJraXRfd2ViX3ZpZXdfZ2V0X2N1c3RvbV9jaGFy
c2V0KHZpZXcpLCA9PSwgInV0ZjgiKTsKKyAgICAvKiBHbyBiYWNrIHRvIHRoZSBkZWZhdWx0IGNo
YXJzZXQgKi8KKyAgICB3ZWJraXRfd2ViX3ZpZXdfc2V0X2N1c3RvbV9jaGFyc2V0KHZpZXcsIE5V
TEwpOworICAgIGdfYXNzZXJ0KCF3ZWJraXRfd2ViX3ZpZXdfZ2V0X2N1c3RvbV9jaGFyc2V0KHZp
ZXcpKTsKKyAgICBnX29iamVjdF91bnJlZih2aWV3KTsKK30KKwogaW50IG1haW4oaW50IGFyZ2Ms
IGNoYXIgKiphcmd2KQogewogICAgIGdfdGhyZWFkX2luaXQoTlVMTCk7CkBAIC0zOSw2ICs1Myw4
IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKICAgICBnX3Rlc3RfYnVnX2Jhc2Uo
Imh0dHBzOi8vYnVncy53ZWJraXQub3JnLyIpOwogICAgIGdfdGVzdF9hZGRfZnVuYygiL3dlYmtp
dDIvd2Vidmlldy9kZWZhdWx0X2NvbnRleHQiLAogICAgICAgICAgICAgICAgICAgICB0ZXN0V2Vi
Vmlld0RlZmF1bHRDb250ZXh0KTsKKyAgICBnX3Rlc3RfYWRkX2Z1bmMoIi93ZWJraXQyL3dlYnZp
ZXcvY3VzdG9tX2NoYXJzZXQiLAorICAgICAgICAgICAgICAgICAgICB0ZXN0V2ViVmlld0N1c3Rv
bUNoYXJzZXQpOwogCiAgICAgcmV0dXJuIGdfdGVzdF9ydW4oKTsKIH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>111005</attachid>
            <date>2011-10-14 06:04:08 -0700</date>
            <delta_ts>2011-10-14 08:58:17 -0700</delta_ts>
            <desc>Patch updated to current git master</desc>
            <filename>wk2-custom-charset2.diff</filename>
            <type>text/plain</type>
            <size>5225</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCAxMDQyNDNjLi5iYWZhOGU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjAg
QEAKIDIwMTEtMTAtMTQgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgogCisgICAgICAgIFtHVEtdIEFkZCBtZXRob2RzIHRvIGdldC9zZXQgYSBjdXN0b20gdGV4dCBl
bmNvbmRpbmcgdG8gV2ViS2l0MiBHVEsrIEFQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njk1MjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuY3Bw
OgorICAgICAgICAod2Via2l0X3dlYl92aWV3X2dldF9jdXN0b21fY2hhcnNldCk6CisgICAgICAg
ICh3ZWJraXRfd2ViX3ZpZXdfc2V0X2N1c3RvbV9jaGFyc2V0KToKKyAgICAgICAgKiBVSVByb2Nl
c3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsv
dGVzdHMvVGVzdFdlYktpdFdlYlZpZXcuY3BwOgorICAgICAgICAodGVzdFdlYlZpZXdDdXN0b21D
aGFyc2V0KToKKyAgICAgICAgKGJlZm9yZUFsbCk6CisKKzIwMTEtMTAtMTQgIENhcmxvcyBHYXJj
aWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgorCiAgICAgICAgIFtHVEtdIEJ1aWxkIGlz
IGJyb2tlbiB3aXRoIG5ldyBsZAogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NzAwOTcKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9ndGsvV2ViS2l0V2ViVmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L2d0ay9XZWJLaXRXZWJWaWV3LmNwcAppbmRleCAyYjA0MzFjLi5jNDc0ODQ2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3LmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3LmNwcApAQCAt
NDMsNiArNDMsNyBAQCBlbnVtIHsKIAogc3RydWN0IF9XZWJLaXRXZWJWaWV3UHJpdmF0ZSB7CiAg
ICAgV2ViS2l0V2ViQ29udGV4dCogY29udGV4dDsKKyAgICBDU3RyaW5nIGN1c3RvbUVuY29kaW5n
OwogCiAgICAgR1JlZlB0cjxXZWJLaXRXZWJMb2FkZXJDbGllbnQ+IGxvYWRlckNsaWVudDsKIH07
CkBAIC0zMTAsMyArMzExLDQ5IEBAIHZvaWQgd2Via2l0X3dlYl92aWV3X2dvX2ZvcndhcmQoV2Vi
S2l0V2ViVmlldyogd2ViVmlldykKICAgICBXZWJQYWdlUHJveHkqIHBhZ2UgPSB3ZWJraXRXZWJW
aWV3QmFzZUdldFBhZ2UoV0VCS0lUX1dFQl9WSUVXX0JBU0Uod2ViVmlldykpOwogICAgIFdLUGFn
ZUdvRm9yd2FyZCh0b0FQSShwYWdlKSk7CiB9CisKKy8qKgorICogd2Via2l0X3dlYl92aWV3X2dl
dF9jdXN0b21fY2hhcnNldDoKKyAqIEB3ZWJfdmlldzogYSAjV2ViS2l0V2ViVmlldworICoKKyAq
IFJldHVybnMgdGhlIGN1cnJlbnQgY3VzdG9tIGNoYXJhY3RlciBlbmNvZGluZyBuYW1lIG9mIEB3
ZWJfdmlldywKKyAqIG5vdCB0aGUgZGVmYXVsdCBvbmUuCisgKgorICogUmV0dXJuczogdGhlIGN1
cnJlbnQgY3VzdG9tIGNoYXJhY3RlciBlbmNvZGluZyBuYW1lIG9yICVOVUxMIGlmIG5vCisgKiAg
ICBjdXN0b20gY2hhcmFjdGVyIGVuY29kaW5nIGhhcyBiZWVuIHNldC4KKyAqLworY29uc3QgZ2No
YXIqIHdlYmtpdF93ZWJfdmlld19nZXRfY3VzdG9tX2NoYXJzZXQoV2ViS2l0V2ViVmlldyogd2Vi
VmlldykKK3sKKyAgICBnX3JldHVybl92YWxfaWZfZmFpbChXRUJLSVRfSVNfV0VCX1ZJRVcod2Vi
VmlldyksIDApOworCisgICAgV2ViUGFnZVByb3h5KiBwYWdlID0gd2Via2l0V2ViVmlld0Jhc2VH
ZXRQYWdlKFdFQktJVF9XRUJfVklFV19CQVNFKHdlYlZpZXcpKTsKKyAgICBXS1JldGFpblB0cjxX
S1N0cmluZ1JlZj4gd2tDdXN0b21FbmNvZGluZyhBZG9wdFdLLCBXS1BhZ2VDb3B5Q3VzdG9tVGV4
dEVuY29kaW5nTmFtZSh0b0FQSShwYWdlKSkpOworICAgIGlmIChXS1N0cmluZ0lzRW1wdHkod2tD
dXN0b21FbmNvZGluZy5nZXQoKSkpCisgICAgICAgIHJldHVybiAwOworCisgICAgY29uc3QgQ1N0
cmluZyYgY3VzdG9tRW5jb2RpbmcgPSB0b0ltcGwod2tDdXN0b21FbmNvZGluZy5nZXQoKSktPnN0
cmluZygpLnV0ZjgoKTsKKyAgICBpZiAod2ViVmlldy0+cHJpdi0+Y3VzdG9tRW5jb2RpbmcgIT0g
Y3VzdG9tRW5jb2RpbmcpCisgICAgICAgIHdlYlZpZXctPnByaXYtPmN1c3RvbUVuY29kaW5nID0g
Y3VzdG9tRW5jb2Rpbmc7CisKKyAgICByZXR1cm4gd2ViVmlldy0+cHJpdi0+Y3VzdG9tRW5jb2Rp
bmcuZGF0YSgpOworfQorCisvKioKKyAqIHdlYmtpdF93ZWJfdmlld19zZXRfY3VzdG9tX2NoYXJz
ZXQ6CisgKiBAd2ViX3ZpZXc6IGEgI1dlYktpdFdlYlZpZXcKKyAqIEBjaGFyc2V0OiAoYWxsb3ct
bm9uZSk6IGEgY2hhcmFjdGVyIGVuY29kaW5nIG5hbWUsIG9yICVOVUxMCisgKgorICogU2V0cyB0
aGUgY3VycmVudCBjdXN0b20gY2hhcmFjdGVyIGVuY29kaW5nIG5hbWUgb2YgQHdlYl92aWV3LiBB
bnkgbG9hZAorICogb3BlcmF0aW9uIHdpbGwgYmUgc3RvcHBlZCBhbmQgdGhlIHBhZ2Ugd2lsbCBi
ZSByZWxvYWRlZC4gVGhpcyBtZXRob2QKKyAqIGRvZXNuJ3QgY2hhbmdlIHRoZSBkZWZhdWx0IGNo
YXJhY3RlciBlbmNvbmRpbmcuCisgKiBTZXR0aW5nIGN1c3RvbSBjaGFyYWN0ZXIgZW5jb2Rpbmcg
dG8gJU5VTEwsIG1ha2VzIEB3ZWJfdmlldyB0byB1c2UgdGhlCisgKiBkZWZhdWx0IG9uZS4KKyAq
Lwordm9pZCB3ZWJraXRfd2ViX3ZpZXdfc2V0X2N1c3RvbV9jaGFyc2V0KFdlYktpdFdlYlZpZXcq
IHdlYlZpZXcsIGNvbnN0IGdjaGFyKiBjaGFyc2V0KQoreworICAgIGdfcmV0dXJuX2lmX2ZhaWwo
V0VCS0lUX0lTX1dFQl9WSUVXKHdlYlZpZXcpKTsKKworICAgIFdlYlBhZ2VQcm94eSogcGFnZSA9
IHdlYmtpdFdlYlZpZXdCYXNlR2V0UGFnZShXRUJLSVRfV0VCX1ZJRVdfQkFTRSh3ZWJWaWV3KSk7
CisgICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+IHdrRW5jb2RpbmdOYW1lID0gY2hhcnNldCA/
IGFkb3B0V0soV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoY2hhcnNldCkpIDogMDsKKyAg
ICBXS1BhZ2VTZXRDdXN0b21UZXh0RW5jb2RpbmdOYW1lKHRvQVBJKHBhZ2UpLCB3a0VuY29kaW5n
TmFtZS5nZXQoKSk7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L2d0ay9XZWJLaXRXZWJWaWV3LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9X
ZWJLaXRXZWJWaWV3LmgKaW5kZXggMDFkOTcyZS4uYmU3NmJlOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuaApAQCAtMTA3LDYgKzEwNywx
MyBAQCB3ZWJraXRfd2ViX3ZpZXdfZ29fYmFjayAgICAgICAgICAgICAoV2ViS2l0V2ViVmlldyAg
ICAgICAgICp3ZWJfdmlldyk7CiBXRUJLSVRfQVBJIHZvaWQKIHdlYmtpdF93ZWJfdmlld19nb19m
b3J3YXJkICAgICAgICAgIChXZWJLaXRXZWJWaWV3ICAgICAgICAgKndlYl92aWV3KTsKIAorV0VC
S0lUX0FQSSBjb25zdCBnY2hhciAqCit3ZWJraXRfd2ViX3ZpZXdfZ2V0X2N1c3RvbV9jaGFyc2V0
ICAoV2ViS2l0V2ViVmlldyAgICAgICAgICp3ZWJfdmlldyk7CisKK1dFQktJVF9BUEkgdm9pZAor
d2Via2l0X3dlYl92aWV3X3NldF9jdXN0b21fY2hhcnNldCAgKFdlYktpdFdlYlZpZXcgICAgICAg
ICAqd2ViX3ZpZXcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
Z2NoYXIgICAgICAgICAgICpjaGFyc2V0KTsKKwogR19FTkRfREVDTFMKIAogI2VuZGlmCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy9UZXN0V2ViS2l0
V2ViVmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay90ZXN0cy9UZXN0
V2ViS2l0V2ViVmlldy5jcHAKaW5kZXggOTAzNWEwNS4uMjMwZTU3NiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvdGVzdHMvVGVzdFdlYktpdFdlYlZpZXcuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL3Rlc3RzL1Rlc3RXZWJLaXRX
ZWJWaWV3LmNwcApAQCAtMjYsOSArMjYsMjEgQEAgc3RhdGljIHZvaWQgdGVzdFdlYlZpZXdEZWZh
dWx0Q29udGV4dChXZWJWaWV3VGVzdCogdGVzdCwgZ2NvbnN0cG9pbnRlcikKICAgICBnX2Fzc2Vy
dCh3ZWJraXRfd2ViX3ZpZXdfZ2V0X2NvbnRleHQodGVzdC0+bV93ZWJWaWV3KSA9PSB3ZWJraXRf
d2ViX2NvbnRleHRfZ2V0X2RlZmF1bHQoKSk7CiB9CiAKK3N0YXRpYyB2b2lkIHRlc3RXZWJWaWV3
Q3VzdG9tQ2hhcnNldChXZWJWaWV3VGVzdCogdGVzdCwgZ2NvbnN0cG9pbnRlcikKK3sKKyAgICBn
X2Fzc2VydCghd2Via2l0X3dlYl92aWV3X2dldF9jdXN0b21fY2hhcnNldCh0ZXN0LT5tX3dlYlZp
ZXcpKTsKKyAgICB3ZWJraXRfd2ViX3ZpZXdfc2V0X2N1c3RvbV9jaGFyc2V0KHRlc3QtPm1fd2Vi
VmlldywgInV0ZjgiKTsKKyAgICBnX2Fzc2VydF9jbXBzdHIod2Via2l0X3dlYl92aWV3X2dldF9j
dXN0b21fY2hhcnNldCh0ZXN0LT5tX3dlYlZpZXcpLCA9PSwgInV0ZjgiKTsKKyAgICAvKiBHbyBi
YWNrIHRvIHRoZSBkZWZhdWx0IGNoYXJzZXQgKi8KKyAgICB3ZWJraXRfd2ViX3ZpZXdfc2V0X2N1
c3RvbV9jaGFyc2V0KHRlc3QtPm1fd2ViVmlldywgMCk7CisgICAgZ19hc3NlcnQoIXdlYmtpdF93
ZWJfdmlld19nZXRfY3VzdG9tX2NoYXJzZXQodGVzdC0+bV93ZWJWaWV3KSk7Cit9CisKKwogdm9p
ZCBiZWZvcmVBbGwoKQogewogICAgIFdlYlZpZXdUZXN0OjphZGQoIldlYktpdFdlYlZpZXciLCAi
ZGVmYXVsdC1jb250ZXh0IiwgdGVzdFdlYlZpZXdEZWZhdWx0Q29udGV4dCk7CisgICAgV2ViVmll
d1Rlc3Q6OmFkZCgiV2ViS2l0V2ViVmlldyIsICJjdXN0b20tY2hhcnNldCIsIHRlc3RXZWJWaWV3
Q3VzdG9tQ2hhcnNldCk7CiB9CiAKIHZvaWQgYWZ0ZXJBbGwoKQo=
</data>
<flag name="review"
          id="108689"
          type_id="1"
          status="+"
          setter="mrobinson"
    />
          </attachment>
      

    </bug>

</bugzilla>