<?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>17719</bug_id>
          
          <creation_ts>2008-03-07 19:13:00 -0800</creation_ts>
          <short_desc>Wx require toDataURL implementations</short_desc>
          <delta_ts>2015-05-07 16:23:54 -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>DOM</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Wx</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sam Weinig">sam</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ahya365</cc>
    
    <cc>alp</cc>
    
    <cc>jmalonzo</cc>
    
    <cc>lars.knoll</cc>
    
    <cc>mrobinson</cc>
    
    <cc>oliver</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>73058</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2008-03-07 19:13:00 -0800</bug_when>
    <thetext>Now that there is a CG implementation of canvas&apos;s toDataURL method, we should also implement it for the rest of the ports.  For Qt, it should be trivial to us QImageWriter.  For the other ports we will probably use at the very least libpng.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73059</commentid>
    <comment_count>1</comment_count>
      <attachid>19603</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2008-03-07 19:16:59 -0800</bug_when>
    <thetext>Created attachment 19603
Entirely untested implementation for Qt</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>88256</commentid>
    <comment_count>2</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2008-08-11 17:45:00 -0700</bug_when>
    <thetext>For Cairo I think we can get away with using this:

cairo_status_t      cairo_surface_write_to_png_stream   (cairo_surface_t *surface,
                                                         cairo_write_func_t write_func,
                                                         void *closure);

Mozilla&apos;s toDataURL implementation has a full-blown libpng-based encoder we could borrow from if this strategy doesn&apos;t work out.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91328</commentid>
    <comment_count>3</comment_count>
      <attachid>23463</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2008-09-15 23:55:01 -0700</bug_when>
    <thetext>Created attachment 23463
toDataURL implementation in Cairo

This is the implementation of toDataURL in Cairo. It only supports png at the moment. We can try to support more formats later.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91329</commentid>
    <comment_count>4</comment_count>
      <attachid>23463</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2008-09-16 00:04:39 -0700</bug_when>
    <thetext>Comment on attachment 23463
toDataURL implementation in Cairo

This patch basically looks correct the issue is that you ignore the mimeType argument to toDataURL, and always encode as image/png, but do not report this

i think you could get away with:
+    ASSERT(mimeType == &quot;image/png&quot;);
+    return String::format(&quot;data:image/png;base64,%s&quot;, out.data());</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91330</commentid>
    <comment_count>5</comment_count>
      <attachid>23464</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2008-09-16 00:09:53 -0700</bug_when>
    <thetext>Created attachment 23464
toDataURL implementation in Cairo

Fixed the issue with mimetypes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91334</commentid>
    <comment_count>6</comment_count>
      <attachid>23464</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-09-16 00:36:02 -0700</bug_when>
    <thetext>Comment on attachment 23464
toDataURL implementation in Cairo

Looks good to me.

static cairo_status_t writeFunction(void *closure, const unsigned char *data, unsigned int length)
98102 {
99      notImplemented();
100      return String();
 103     Vector&lt;char&gt; *in = (Vector&lt;char&gt; *) closure;
 104     in-&gt;append(data, length);
 105     return CAIRO_STATUS_SUCCESS;
 106 }

Has style issues.  * placement, and the c-style cast (Vector&lt;char&gt; *) should be a reinterpret_cast&lt;Vector&lt;char&gt;*&gt; instead.  Unfortunately you don&apos;t yet have commit-bit :( so I&apos;ll ask you to post another patch (which I don&apos;t need to see, but is needed for someone else to land).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91336</commentid>
    <comment_count>7</comment_count>
      <attachid>23465</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2008-09-16 01:03:54 -0700</bug_when>
    <thetext>Created attachment 23465
toDataURL implementation in Cairo

fixes the c-style issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91337</commentid>
    <comment_count>8</comment_count>
      <attachid>23465</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2008-09-16 01:08:10 -0700</bug_when>
    <thetext>Comment on attachment 23465
toDataURL implementation in Cairo

looks good, r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91377</commentid>
    <comment_count>9</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2008-09-16 10:01:48 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; (From update of attachment 23465 [edit])
&gt; looks good, r=me
&gt; 

Cairo patch landed in r36508 (needed a couple of tweaks to build and not assert in debug builds, and also added the necessary entry in supportedImageMIMETypesForEncoding).

Can we close this bug?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91386</commentid>
    <comment_count>10</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2008-09-16 10:21:09 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; Can we close this bug?

No, the Qt and wx-implementations are missing.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>92962</commentid>
    <comment_count>11</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2008-09-26 13:07:39 -0700</bug_when>
    <thetext>There is a Qt implementation now. WX is missing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>95084</commentid>
    <comment_count>12</comment_count>
      <attachid>23465</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-10-12 15:12:54 -0700</bug_when>
    <thetext>Comment on attachment 23465
toDataURL implementation in Cairo

Clearing the review flag since this patch was landed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>95908</commentid>
    <comment_count>13</comment_count>
    <who name="Jan Alonzo">jmalonzo</who>
    <bug_when>2008-10-18 20:29:13 -0700</bug_when>
    <thetext>Changed subject and removed Cairo, Gtk keyword as the patches for these have already landed. Adding in Wx instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1092828</commentid>
    <comment_count>14</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2015-05-07 16:23:54 -0700</bug_when>
    <thetext>The Wx port is no longer in trunk.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>19603</attachid>
            <date>2008-03-07 19:16:59 -0800</date>
            <delta_ts>2010-06-10 16:10:19 -0700</delta_ts>
            <desc>Entirely untested implementation for Qt</desc>
            <filename>qtChanges.diff</filename>
            <type>text/plain</type>
            <size>3085</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VCdWZmZXIuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ltYWdlQnVmZmVyLmgJKHJldmlzaW9uIDMw
ODg4KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9JbWFnZUJ1ZmZlci5oCSh3b3JraW5n
IGNvcHkpCkBAIC04Nyw3ICs4Nyw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICNlbGlmIFBMQVRG
T1JNKFFUKQogICAgICAgICBJbWFnZUJ1ZmZlcihjb25zdCBRUGl4bWFwICZweCk7CiAgICAgICAg
IG11dGFibGUgUVBpeG1hcCBtX3BpeG1hcDsKLSAgICAgICAgbXV0YWJsZSBRUGFpbnRlciogbV9w
YWludGVyOworICAgICAgICBtdXRhYmxlIE93blB0cjxRUGFpbnRlcj4gbV9wYWludGVyOwogI2Vs
aWYgUExBVEZPUk0oQ0FJUk8pCiAgICAgICAgIEltYWdlQnVmZmVyKGNhaXJvX3N1cmZhY2VfdCog
c3VyZmFjZSk7CiAgICAgICAgIG11dGFibGUgY2Fpcm9fc3VyZmFjZV90KiBtX3N1cmZhY2U7Cklu
ZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L0ltYWdlQnVmZmVyUXQuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvSW1hZ2VCdWZmZXJRdC5jcHAJ
KHJldmlzaW9uIDMwODg4KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9JbWFnZUJ1
ZmZlclF0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMSw1ICsxLDYgQEAKIC8qCiAgKiBDb3B5cmln
aHQgKEMpIDIwMDYgTmlrb2xhcyBaaW1tZXJtYW5uIDx6aW1tZXJtYW5uQGtkZS5vcmc+CisgKiBD
b3B5cmlnaHQgKEMpIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNiwxMiArMjcsMTkgQEAKICNpbmNsdWRlICJj
b25maWcuaCIKICNpbmNsdWRlICJJbWFnZUJ1ZmZlci5oIgogCisjaW5jbHVkZSAiQmFzZTY0Lmgi
CiAjaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0LmgiCiAjaW5jbHVkZSAiSW1hZ2VEYXRhLmgiCisj
aW5jbHVkZSAiTUlNRVR5cGVSZWdpc3RyeS5oIgogI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgi
Ci0KKyNpbmNsdWRlICJQbGF0Zm9ybVN0cmluZy5oIgorI2luY2x1ZGUgPFFCdWZmZXI+CisjaW5j
bHVkZSA8UUJ5dGVBcnJheT4KKyNpbmNsdWRlIDxRSW1hZ2U+CisjaW5jbHVkZSA8UUltYWdlV3Jp
dGVyPgogI2luY2x1ZGUgPFFQYWludGVyPgogI2luY2x1ZGUgPFFQaXhtYXA+CisjaW5jbHVkZSA8
d3RmL1ZlY3Rvci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTQ1LDEzICs1MywxMiBA
QCBJbWFnZUJ1ZmZlcjo6SW1hZ2VCdWZmZXIoY29uc3QgUVBpeG1hcCYgCiAgICAgOiBtX3BpeG1h
cChweCksCiAgICAgICBtX3BhaW50ZXIoMCkKIHsKLSAgICBtX3BhaW50ZXIgPSBuZXcgUVBhaW50
ZXIoJm1fcGl4bWFwKTsKLSAgICBtX2NvbnRleHQuc2V0KG5ldyBHcmFwaGljc0NvbnRleHQobV9w
YWludGVyKSk7CisgICAgbV9wYWludGVyLnNldChuZXcgUVBhaW50ZXIoJm1fcGl4bWFwKSk7Cisg
ICAgbV9jb250ZXh0LnNldChuZXcgR3JhcGhpY3NDb250ZXh0KG1fcGFpbnRlci5nZXQoKSkpOwog
fQogCiBJbWFnZUJ1ZmZlcjo6fkltYWdlQnVmZmVyKCkKIHsKLSAgICBkZWxldGUgbV9wYWludGVy
OwogfQogCiBHcmFwaGljc0NvbnRleHQqIEltYWdlQnVmZmVyOjpjb250ZXh0KCkgY29uc3QKQEAg
LTg4LDQgKzk1LDM0IEBAIFN0cmluZyBJbWFnZUJ1ZmZlcjo6dG9EYXRhVVJMKGNvbnN0IFN0cmkK
ICAgICByZXR1cm4gU3RyaW5nKCk7CiB9CiAKK1N0cmluZyBJbWFnZUJ1ZmZlcjo6dG9EYXRhVVJM
KGNvbnN0IFN0cmluZyYgbWltZVR5cGUpIGNvbnN0Cit7CisgICAgQVNTRVJUKE1JTUVUeXBlUmVn
aXN0cnk6OmlzU3VwcG9ydGVkSW1hZ2VNSU1FVHlwZUZvckVuY29kaW5nKG1pbWVUeXBlKSk7CisK
KyAgICBRQnl0ZUFycmF5IGZvcm1hdCA9IFFTdHJpbmcoTUlNRVR5cGVSZWdpc3RyeTo6Z2V0UHJl
ZmVycmVkRXh0ZW5zaW9uRm9yTUlNRVR5cGUobWltZVR5cGUpKS50b1V0ZjgoKTsKKworICAgIFFC
eXRlQXJyYXkgYnl0ZUFycmF5OworICAgIFFCdWZmZXIgYnVmZmVyKCZieXRlQXJyYXkpOworICAg
IGJ1ZmZlci5vcGVuKFFJT0RldmljZTo6UmVhZFdyaXRlKTsKKyAgICBRSW1hZ2VXcml0ZXIgaW1h
Z2VXcml0ZXIoJmJ1ZmZlciwgZm9ybWF0KTsKKworICAgIEFTU0VSVChpbWFnZVdyaXRlci5jYW5X
cml0ZSgpKQorCisgICAgUUltYWdlIGltYWdlID0gcGl4bWFwKCktPnRvSW1hZ2UoKTsKKyAgICBi
b29sIHdyaXRlU3VjY2Vzc2Z1bCA9IGltYWdlV3JpdGVyLndyaXRlKGltYWdlKTsKKyAgICBpZiAo
IXdyaXRlU3VjY2Vzc2Z1bCkKKyAgICAgICAgLy8gWW91IGNhbiBsb2cgd2h5IHRoaXMgd2Fzbid0
IHN1Y2Nlc3NmdWwgYnV0IGNhbGxpbmcgaW1hZ2VXcml0ZXIuZXJyb3JTdHJpbmcoKQorICAgICAg
ICByZXR1cm4gU3RyaW5nKCJkYXRhOiwiKTsKKworICAgIFZlY3RvcjxjaGFyPiBpbjsKKyAgICBp
bi5hcHBlbmQoYnl0ZUFycmF5LmRhdGEoKSwgYnl0ZUFycmF5LnNpemUoKSk7CisKKyAgICAvLyBG
SVhNRTogVGhlIHJlbWFpbmluZyBjb2RlIGlzIGlkZW50aWNhbCB0byB0aGUgaW1wbGVtZW50YXRp
b24gZm9yIENvcmVHcmFwaGljcy4gIENhbiB3ZSBzaGFyZSB0aGlzIGJpdD8KKyAgICBWZWN0b3I8
Y2hhcj4gb3V0OworICAgIGJhc2U2NEVuY29kZShpbiwgb3V0KTsKKyAgICBvdXQuYXBwZW5kKCdc
MCcpOworCisgICAgcmV0dXJuIFN0cmluZzo6Zm9ybWF0KCJkYXRhOiVzO2Jhc2U2NCwlcyIsIG1p
bWVUeXBlLnV0ZjgoKS5kYXRhKCksIG91dC5kYXRhKCkpOwogfQorCit9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>23463</attachid>
            <date>2008-09-15 23:55:01 -0700</date>
            <delta_ts>2008-09-16 00:09:53 -0700</delta_ts>
            <desc>toDataURL implementation in Cairo</desc>
            <filename>Cairo-toDataURL.patch</filename>
            <type>text/plain</type>
            <size>2363</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNjQ4NykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMDgtMDktMTUgIERpcmsgU2NodWx6ZSAgPHZiczg1QGdteC5kZT4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1l
bnRlZCB0b0RhdGFVUkwgaW4gQ2Fpcm8uIE9ubHkgUE5HIHN1cHBvcnQKKyAgICAgICAgYXQgdGhl
IG1vbWVudC4KKworICAgICAgICBRdCwgQ2Fpcm8gYW5kIHd4IHJlcXVpcmUgdG9EYXRhVVJMIGlt
cGxlbWVudGF0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTc3MTkKKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NhaXJvL0ltYWdlQnVm
ZmVyQ2Fpcm8uY3BwOgorICAgICAgICAoV2ViQ29yZTo6d3JpdGVGdW5jdGlvbik6CisgICAgICAg
IChXZWJDb3JlOjpJbWFnZUJ1ZmZlcjo6dG9EYXRhVVJMKToKKwogMjAwOC0wOS0xNSAgRGF2aWQg
U21pdGggIDxjYXRmaXNoLm1hbkBnbWFpbC5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgU2Ft
IFdlaW5pZy4KSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vSW1hZ2VCdWZm
ZXJDYWlyby5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYWly
by9JbWFnZUJ1ZmZlckNhaXJvLmNwcAkocmV2aXNpb24gMzY0NDMpCisrKyBXZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NhaXJvL0ltYWdlQnVmZmVyQ2Fpcm8uY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNywxMyArMjcsMTcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJbWFnZUJ1
ZmZlci5oIgogCisjaW5jbHVkZSAiQmFzZTY0LmgiCiAjaW5jbHVkZSAiQml0bWFwSW1hZ2UuaCIK
KyNpbmNsdWRlICJDU3RyaW5nLmgiCiAjaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0LmgiCiAjaW5j
bHVkZSAiSW1hZ2VEYXRhLmgiCi0jaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKKyNpbmNsdWRl
ICJNSU1FVHlwZVJlZ2lzdHJ5LmgiCiAjaW5jbHVkZSAiUGF0dGVybi5oIgorI2luY2x1ZGUgIlBs
YXRmb3JtU3RyaW5nLmgiCiAKICNpbmNsdWRlIDxjYWlyby5oPgorI2luY2x1ZGUgPHd0Zi9WZWN0
b3IuaD4KIAogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIApAQCAtOTQsMTAgKzk4LDMxIEBAIHZvaWQg
SW1hZ2VCdWZmZXI6OnB1dEltYWdlRGF0YShJbWFnZURhdGEKICAgICBub3RJbXBsZW1lbnRlZCgp
OwogfQogCi1TdHJpbmcgSW1hZ2VCdWZmZXI6OnRvRGF0YVVSTChjb25zdCBTdHJpbmcmKSBjb25z
dAorc3RhdGljIGNhaXJvX3N0YXR1c190IHdyaXRlRnVuY3Rpb24odm9pZCAqY2xvc3VyZSwgY29u
c3QgdW5zaWduZWQgY2hhciAqZGF0YSwgdW5zaWduZWQgaW50IGxlbmd0aCkKIHsKLSAgICBub3RJ
bXBsZW1lbnRlZCgpOwotICAgIHJldHVybiBTdHJpbmcoKTsKKyAgICBWZWN0b3I8Y2hhcj4gKmlu
ID0gKFZlY3RvcjxjaGFyPiAqKSBjbG9zdXJlOworICAgIGluLT5hcHBlbmQoZGF0YSwgbGVuZ3Ro
KTsKKyAgICByZXR1cm4gQ0FJUk9fU1RBVFVTX1NVQ0NFU1M7Cit9CisKK1N0cmluZyBJbWFnZUJ1
ZmZlcjo6dG9EYXRhVVJMKGNvbnN0IFN0cmluZyYgbWltZVR5cGUpIGNvbnN0Cit7CisgICAgQVNT
RVJUKE1JTUVUeXBlUmVnaXN0cnk6OmlzU3VwcG9ydGVkSW1hZ2VNSU1FVHlwZUZvckVuY29kaW5n
KG1pbWVUeXBlKSk7CisKKyAgICBjYWlyb19zdXJmYWNlX3QqIGltYWdlID0gY2Fpcm9fZ2V0X3Rh
cmdldChjb250ZXh0KCktPnBsYXRmb3JtQ29udGV4dCgpKTsKKyAgICBpZiAoIWltYWdlKQorICAg
ICAgICByZXR1cm4gImRhdGE6LCI7CisKKyAgICBWZWN0b3I8Y2hhcj4gaW47CisKKyAgICAvLyBX
ZSBjYW4gY29udmVydCB0aGUgcG5nLXN0cmVhbSB0byBvdGhlciBmb3JtYXRzIGxhdGVyCisgICAg
Y2Fpcm9fc3VyZmFjZV93cml0ZV90b19wbmdfc3RyZWFtKGltYWdlLCB3cml0ZUZ1bmN0aW9uLCAm
aW4pOworCisgICAgVmVjdG9yPGNoYXI+IG91dDsKKyAgICBiYXNlNjRFbmNvZGUoaW4sIG91dCk7
CisgICAgb3V0LmFwcGVuZCgnXDAnKTsKKworICAgIHJldHVybiBTdHJpbmc6OmZvcm1hdCgiZGF0
YTolcztiYXNlNjQsJXMiLCBtaW1lVHlwZS51dGY4KCkuZGF0YSgpLCBvdXQuZGF0YSgpKTsKIH0K
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>23464</attachid>
            <date>2008-09-16 00:09:53 -0700</date>
            <delta_ts>2008-09-16 01:03:54 -0700</delta_ts>
            <desc>toDataURL implementation in Cairo</desc>
            <filename>Cairo-toDataURL.patch</filename>
            <type>text/plain</type>
            <size>2384</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNjQ4NykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMDgtMDktMTUgIERpcmsgU2NodWx6ZSAgPHZiczg1QGdteC5kZT4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1l
bnRlZCB0b0RhdGFVUkwgaW4gQ2Fpcm8uIE9ubHkgUE5HIHN1cHBvcnQKKyAgICAgICAgYXQgdGhl
IG1vbWVudC4KKworICAgICAgICBRdCwgQ2Fpcm8gYW5kIHd4IHJlcXVpcmUgdG9EYXRhVVJMIGlt
cGxlbWVudGF0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTc3MTkKKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NhaXJvL0ltYWdlQnVm
ZmVyQ2Fpcm8uY3BwOgorICAgICAgICAoV2ViQ29yZTo6d3JpdGVGdW5jdGlvbik6CisgICAgICAg
IChXZWJDb3JlOjpJbWFnZUJ1ZmZlcjo6dG9EYXRhVVJMKToKKwogMjAwOC0wOS0xNSAgRGF2aWQg
U21pdGggIDxjYXRmaXNoLm1hbkBnbWFpbC5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgU2Ft
IFdlaW5pZy4KSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vSW1hZ2VCdWZm
ZXJDYWlyby5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYWly
by9JbWFnZUJ1ZmZlckNhaXJvLmNwcAkocmV2aXNpb24gMzY0NDMpCisrKyBXZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NhaXJvL0ltYWdlQnVmZmVyQ2Fpcm8uY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNywxMyArMjcsMTcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJbWFnZUJ1
ZmZlci5oIgogCisjaW5jbHVkZSAiQmFzZTY0LmgiCiAjaW5jbHVkZSAiQml0bWFwSW1hZ2UuaCIK
KyNpbmNsdWRlICJDU3RyaW5nLmgiCiAjaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0LmgiCiAjaW5j
bHVkZSAiSW1hZ2VEYXRhLmgiCi0jaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKKyNpbmNsdWRl
ICJNSU1FVHlwZVJlZ2lzdHJ5LmgiCiAjaW5jbHVkZSAiUGF0dGVybi5oIgorI2luY2x1ZGUgIlBs
YXRmb3JtU3RyaW5nLmgiCiAKICNpbmNsdWRlIDxjYWlyby5oPgorI2luY2x1ZGUgPHd0Zi9WZWN0
b3IuaD4KIAogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIApAQCAtOTQsMTAgKzk4LDMyIEBAIHZvaWQg
SW1hZ2VCdWZmZXI6OnB1dEltYWdlRGF0YShJbWFnZURhdGEKICAgICBub3RJbXBsZW1lbnRlZCgp
OwogfQogCi1TdHJpbmcgSW1hZ2VCdWZmZXI6OnRvRGF0YVVSTChjb25zdCBTdHJpbmcmKSBjb25z
dAorc3RhdGljIGNhaXJvX3N0YXR1c190IHdyaXRlRnVuY3Rpb24odm9pZCAqY2xvc3VyZSwgY29u
c3QgdW5zaWduZWQgY2hhciAqZGF0YSwgdW5zaWduZWQgaW50IGxlbmd0aCkKIHsKLSAgICBub3RJ
bXBsZW1lbnRlZCgpOwotICAgIHJldHVybiBTdHJpbmcoKTsKKyAgICBWZWN0b3I8Y2hhcj4gKmlu
ID0gKFZlY3RvcjxjaGFyPiAqKSBjbG9zdXJlOworICAgIGluLT5hcHBlbmQoZGF0YSwgbGVuZ3Ro
KTsKKyAgICByZXR1cm4gQ0FJUk9fU1RBVFVTX1NVQ0NFU1M7Cit9CisKK1N0cmluZyBJbWFnZUJ1
ZmZlcjo6dG9EYXRhVVJMKGNvbnN0IFN0cmluZyYgbWltZVR5cGUpIGNvbnN0Cit7CisgICAgQVNT
RVJUKE1JTUVUeXBlUmVnaXN0cnk6OmlzU3VwcG9ydGVkSW1hZ2VNSU1FVHlwZUZvckVuY29kaW5n
KG1pbWVUeXBlKSk7CisKKyAgICBjYWlyb19zdXJmYWNlX3QqIGltYWdlID0gY2Fpcm9fZ2V0X3Rh
cmdldChjb250ZXh0KCktPnBsYXRmb3JtQ29udGV4dCgpKTsKKyAgICBpZiAoIWltYWdlKQorICAg
ICAgICByZXR1cm4gImRhdGE6LCI7CisKKyAgICBWZWN0b3I8Y2hhcj4gaW47CisKKyAgICAvLyBX
ZSBjYW4gY29udmVydCB0aGUgcG5nLXN0cmVhbSB0byBvdGhlciBmb3JtYXRzIGxhdGVyCisgICAg
Y2Fpcm9fc3VyZmFjZV93cml0ZV90b19wbmdfc3RyZWFtKGltYWdlLCB3cml0ZUZ1bmN0aW9uLCAm
aW4pOworCisgICAgVmVjdG9yPGNoYXI+IG91dDsKKyAgICBiYXNlNjRFbmNvZGUoaW4sIG91dCk7
CisgICAgb3V0LmFwcGVuZCgnXDAnKTsKKworICAgIEFTU0VSVChtaW1lVHlwZSA9PSAiaW1hZ2Uv
cG5nIik7CisgICAgcmV0dXJuIFN0cmluZzo6Zm9ybWF0KCJkYXRhOmltYWdlL3BuZztiYXNlNjQs
JXMiLCBvdXQuZGF0YSgpKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQo=
</data>
<flag name="review"
          id="10481"
          type_id="1"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>23465</attachid>
            <date>2008-09-16 01:03:54 -0700</date>
            <delta_ts>2008-10-12 15:12:54 -0700</delta_ts>
            <desc>toDataURL implementation in Cairo</desc>
            <filename>Cairo-toDataURL.patch</filename>
            <type>text/plain</type>
            <size>2476</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNjQ4OCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMDgtMDktMTYgIERpcmsgU2NodWx6ZSAgPHZiczg1QGdteC5kZT4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1l
bnRlZCB0b0RhdGFVUkwgaW4gQ2Fpcm8uIE9ubHkgUE5HIHN1cHBvcnQKKyAgICAgICAgYXQgdGhl
IG1vbWVudC4KKworICAgICAgICBRdCwgQ2Fpcm8gYW5kIHd4IHJlcXVpcmUgdG9EYXRhVVJMIGlt
cGxlbWVudGF0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTc3MTkKKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NhaXJvL0ltYWdlQnVm
ZmVyQ2Fpcm8uY3BwOgorICAgICAgICAoV2ViQ29yZTo6d3JpdGVGdW5jdGlvbik6CisgICAgICAg
IChXZWJDb3JlOjpJbWFnZUJ1ZmZlcjo6dG9EYXRhVVJMKToKKwogMjAwOC0wOS0xNSAgRGF2ZSBI
eWF0dCAgPGh5YXR0QGFwcGxlLmNvbT4KIAogICAgICAgICBDb252ZXJ0IFF0IG92ZXIgdG8gaXRz
IFNjcm9sbGJhclRoZW1lLiAgQWRkIGNyb3NzLXBsYXRmb3JtIHN1cHBvcnQgZm9yIGp1bXBpbmcg
dGhlIHRodW1iIGxvY2F0aW9uIGRpcmVjdGx5CkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NhaXJvL0ltYWdlQnVmZmVyQ2Fpcm8uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2Fpcm8vSW1hZ2VCdWZmZXJDYWlyby5jcHAJKHJldmlzaW9uIDM2NDQz
KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9JbWFnZUJ1ZmZlckNhaXJvLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjcsMTMgKzI3LDE3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgi
CiAjaW5jbHVkZSAiSW1hZ2VCdWZmZXIuaCIKIAorI2luY2x1ZGUgIkJhc2U2NC5oIgogI2luY2x1
ZGUgIkJpdG1hcEltYWdlLmgiCisjaW5jbHVkZSAiQ1N0cmluZy5oIgogI2luY2x1ZGUgIkdyYXBo
aWNzQ29udGV4dC5oIgogI2luY2x1ZGUgIkltYWdlRGF0YS5oIgotI2luY2x1ZGUgIk5vdEltcGxl
bWVudGVkLmgiCisjaW5jbHVkZSAiTUlNRVR5cGVSZWdpc3RyeS5oIgogI2luY2x1ZGUgIlBhdHRl
cm4uaCIKKyNpbmNsdWRlICJQbGF0Zm9ybVN0cmluZy5oIgogCiAjaW5jbHVkZSA8Y2Fpcm8uaD4K
KyNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKQEAgLTk0
LDEwICs5OCwzMiBAQCB2b2lkIEltYWdlQnVmZmVyOjpwdXRJbWFnZURhdGEoSW1hZ2VEYXRhCiAg
ICAgbm90SW1wbGVtZW50ZWQoKTsKIH0KIAotU3RyaW5nIEltYWdlQnVmZmVyOjp0b0RhdGFVUkwo
Y29uc3QgU3RyaW5nJikgY29uc3QKK3N0YXRpYyBjYWlyb19zdGF0dXNfdCB3cml0ZUZ1bmN0aW9u
KHZvaWQgKmNsb3N1cmUsIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmRhdGEsIHVuc2lnbmVkIGludCBs
ZW5ndGgpCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKLSAgICByZXR1cm4gU3RyaW5nKCk7Cisg
ICAgVmVjdG9yPGNoYXI+KiBpbiA9IHJlaW50ZXJwcmV0X2Nhc3Q8VmVjdG9yPGNoYXI+Kj4oY2xv
c3VyZSk7CisgICAgaW4tPmFwcGVuZChkYXRhLCBsZW5ndGgpOworICAgIHJldHVybiBDQUlST19T
VEFUVVNfU1VDQ0VTUzsKK30KKworU3RyaW5nIEltYWdlQnVmZmVyOjp0b0RhdGFVUkwoY29uc3Qg
U3RyaW5nJiBtaW1lVHlwZSkgY29uc3QKK3sKKyAgICBBU1NFUlQoTUlNRVR5cGVSZWdpc3RyeTo6
aXNTdXBwb3J0ZWRJbWFnZU1JTUVUeXBlRm9yRW5jb2RpbmcobWltZVR5cGUpKTsKKworICAgIGNh
aXJvX3N1cmZhY2VfdCogaW1hZ2UgPSBjYWlyb19nZXRfdGFyZ2V0KGNvbnRleHQoKS0+cGxhdGZv
cm1Db250ZXh0KCkpOworICAgIGlmICghaW1hZ2UpCisgICAgICAgIHJldHVybiAiZGF0YTosIjsK
KworICAgIFZlY3RvcjxjaGFyPiBpbjsKKworICAgIC8vIFdlIGNhbiBjb252ZXJ0IHRoZSBwbmct
c3RyZWFtIHRvIG90aGVyIGZvcm1hdHMgbGF0ZXIKKyAgICBjYWlyb19zdXJmYWNlX3dyaXRlX3Rv
X3BuZ19zdHJlYW0oaW1hZ2UsIHdyaXRlRnVuY3Rpb24sICZpbik7CisKKyAgICBWZWN0b3I8Y2hh
cj4gb3V0OworICAgIGJhc2U2NEVuY29kZShpbiwgb3V0KTsKKyAgICBvdXQuYXBwZW5kKCdcMCcp
OworCisgICAgQVNTRVJUKG1pbWVUeXBlID09ICJpbWFnZS9wbmciKTsKKyAgICByZXR1cm4gU3Ry
aW5nOjpmb3JtYXQoImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCwlcyIsIG91dC5kYXRhKCkpOwogfQog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>