<?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>108310</bug_id>
          
          <creation_ts>2013-01-30 01:18:39 -0800</creation_ts>
          <short_desc>GraphicsContext3DCG needs to copy image data in paintToCanvas</short_desc>
          <delta_ts>2013-01-30 11:20:30 -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>WebGL</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>107804</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Tim Horton">thorton</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>dino</cc>
    
    <cc>noam</cc>
    
    <cc>roger_fong</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>819935</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-01-30 01:18:39 -0800</bug_when>
    <thetext>In the case of paintToCanvas into an accelerated destination canvas, drawing may happen later, so we need to copy the pixel data. ImageBuffer already knows to do this, but this WebGL-specific function does not!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819940</commentid>
    <comment_count>1</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-01-30 01:25:32 -0800</bug_when>
    <thetext>https://bugs.webkit.org/show_bug.cgi?id=77185 was the fix for this for 2D canvas.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819990</commentid>
    <comment_count>2</comment_count>
      <attachid>185440</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-01-30 02:24:13 -0800</bug_when>
    <thetext>Created attachment 185440
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>820344</commentid>
    <comment_count>3</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-01-30 11:20:30 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/141288</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185440</attachid>
            <date>2013-01-30 02:24:13 -0800</date>
            <delta_ts>2013-01-30 08:48:15 -0800</delta_ts>
            <desc>patch</desc>
            <filename>copycanvas.diff</filename>
            <type>text/plain</type>
            <size>6555</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBlMDY4NTczLi5lNDM0Nzg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUg
QEAKKzIwMTMtMDEtMzAgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CisK
KyAgICAgICAgR3JhcGhpY3NDb250ZXh0M0RDRyBuZWVkcyB0byBjb3B5IGltYWdlIGRhdGEgaW4g
cGFpbnRUb0NhbnZhcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTA4MzEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgTWFrZSB0aGUgQ0cgaW1wbGVtZW50YXRpb24gb2YgR3JhcGhpY3NDb250ZXh0M0Q6OnBh
aW50VG9DYW52YXMgY29weSBpbWFnZSBkYXRhCisgICAgICAgIGJlZm9yZSBkcmF3aW5nIGlmIHdl
J3JlIGRyYXdpbmcgaW50byBhbiBhY2NlbGVyYXRlZCBjb250ZXh0LCBtYXRjaGluZyB0aGUgZml4
IG1hZGUKKyAgICAgICAgaW4gaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTA2MDk1
IGZvciAyRCBjYW52YXMuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBkZXBlbmRzIG9uIGFjY2Vs
ZXJhdGlvbiBhbmQgd291bGQgYmUgZmxha3kgYXQgYmVzdC4KKworICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmg6CisgICAgICAgIChHcmFwaGljc0NvbnRleHQz
RCk6IE1ha2UgQ0cncyBwYWludFRvQ2FudmFzIHRha2UgYSBHcmFwaGljc0NvbnRleHQgaW5zdGVh
ZCBvZiBhIENHQ29udGV4dFJlZi4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFw
aGljc0NvbnRleHQzRENHLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnJlbGVhc2VJbWFnZURhdGEp
OiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDNEOjpwYWludFRvQ2Fu
dmFzKTogQ29weSBpbWFnZSBkYXRhIGlmIHRoZSBkZXN0aW5hdGlvbiBpcworICAgICAgICBhbiBh
Y2NlbGVyYXRlZCBjb250ZXh0LiBBbHNvLCB1c2UgR3JhcGhpY3NDb250ZXh0IEFQSSBpbnN0ZWFk
IG9mIENHQ29udGV4dC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhp
Y3NDb250ZXh0M0RPcGVuR0xDb21tb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3ND
b250ZXh0M0Q6OnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvQ2FudmFzKToKKwogMjAxMy0wMS0yOSAg
TWFyayBMYW0gIDxtYXJrLmxhbUBhcHBsZS5jb20+CiAKICAgICAgICAgUmVuYW1lIERCQmFja2Vu
ZDo6U2VydmVyIHRvIERhdGFiYXNlU2VydmVyLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmgKaW5kZXggMzM2OTk3Zi4uMGY4ZDM3
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3ND
b250ZXh0M0QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGlj
c0NvbnRleHQzRC5oCkBAIC04MTIsMTYgKzgxMiwxMyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHJl
c2hhcGUoaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKIAotI2lmIFVTRShDRykKLSAgICBzdGF0aWMg
dm9pZCBwYWludFRvQ2FudmFzKGNvbnN0IHVuc2lnbmVkIGNoYXIqIGltYWdlUGl4ZWxzLCBpbnQg
aW1hZ2VXaWR0aCwgaW50IGltYWdlSGVpZ2h0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW50IGNhbnZhc1dpZHRoLCBpbnQgY2FudmFzSGVpZ2h0LCBDR0NvbnRleHRSZWYpOwotI2Vs
aWYgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwpCisjaWYgUExBVEZPUk0oR1RLKSB8fCBQ
TEFURk9STShFRkwpCiAgICAgdm9pZCBwYWludFRvQ2FudmFzKGNvbnN0IHVuc2lnbmVkIGNoYXIq
IGltYWdlUGl4ZWxzLCBpbnQgaW1hZ2VXaWR0aCwgaW50IGltYWdlSGVpZ2h0LAogICAgICAgICAg
ICAgICAgICAgICAgICBpbnQgY2FudmFzV2lkdGgsIGludCBjYW52YXNIZWlnaHQsIFBsYXRmb3Jt
Q29udGV4dENhaXJvKiBjb250ZXh0KTsKICNlbGlmIFBMQVRGT1JNKFFUKQogICAgIHZvaWQgcGFp
bnRUb0NhbnZhcyhjb25zdCB1bnNpZ25lZCBjaGFyKiBpbWFnZVBpeGVscywgaW50IGltYWdlV2lk
dGgsIGludCBpbWFnZUhlaWdodCwKICAgICAgICAgICAgICAgICAgICAgICAgaW50IGNhbnZhc1dp
ZHRoLCBpbnQgY2FudmFzSGVpZ2h0LCBRUGFpbnRlciogY29udGV4dCk7Ci0jZWxpZiBQTEFURk9S
TShCTEFDS0JFUlJZKQorI2VsaWYgUExBVEZPUk0oQkxBQ0tCRVJSWSkgfHwgVVNFKENHKQogICAg
IHZvaWQgcGFpbnRUb0NhbnZhcyhjb25zdCB1bnNpZ25lZCBjaGFyKiBpbWFnZVBpeGVscywgaW50
IGltYWdlV2lkdGgsIGludCBpbWFnZUhlaWdodCwKICAgICAgICAgICAgICAgICAgICAgICAgaW50
IGNhbnZhc1dpZHRoLCBpbnQgY2FudmFzSGVpZ2h0LCBHcmFwaGljc0NvbnRleHQqKTsKICNlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhp
Y3NDb250ZXh0M0RDRy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9H
cmFwaGljc0NvbnRleHQzRENHLmNwcAppbmRleCA4MmZjNzY5Li5lY2YwY2VlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRleHQzRENH
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0Nv
bnRleHQzRENHLmNwcApAQCAtMjUzLDI1ICsyNTMsNDUgQEAgYm9vbCBHcmFwaGljc0NvbnRleHQz
RDo6SW1hZ2VFeHRyYWN0b3I6OmV4dHJhY3RJbWFnZShib29sIHByZW11bHRpcGx5QWxwaGEsIGJv
b2wKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBHcmFwaGljc0NvbnRleHQzRDo6cGFpbnRU
b0NhbnZhcyhjb25zdCB1bnNpZ25lZCBjaGFyKiBpbWFnZVBpeGVscywgaW50IGltYWdlV2lkdGgs
IGludCBpbWFnZUhlaWdodCwgaW50IGNhbnZhc1dpZHRoLCBpbnQgY2FudmFzSGVpZ2h0LCBDR0Nv
bnRleHRSZWYgY29udGV4dCkKK3N0YXRpYyB2b2lkIHJlbGVhc2VJbWFnZURhdGEodm9pZCosIGNv
bnN0IHZvaWQqIGRhdGEsIHNpemVfdCkKK3sKKyAgICBmYXN0RnJlZShjb25zdF9jYXN0PHZvaWQq
PihkYXRhKSk7Cit9CisKK3ZvaWQgR3JhcGhpY3NDb250ZXh0M0Q6OnBhaW50VG9DYW52YXMoY29u
c3QgdW5zaWduZWQgY2hhciogaW1hZ2VQaXhlbHMsIGludCBpbWFnZVdpZHRoLCBpbnQgaW1hZ2VI
ZWlnaHQsIGludCBjYW52YXNXaWR0aCwgaW50IGNhbnZhc0hlaWdodCwgR3JhcGhpY3NDb250ZXh0
KiBjb250ZXh0KQogewogICAgIGlmICghaW1hZ2VQaXhlbHMgfHwgaW1hZ2VXaWR0aCA8PSAwIHx8
IGltYWdlSGVpZ2h0IDw9IDAgfHwgY2FudmFzV2lkdGggPD0gMCB8fCBjYW52YXNIZWlnaHQgPD0g
MCB8fCAhY29udGV4dCkKICAgICAgICAgcmV0dXJuOwogICAgIGludCByb3dCeXRlcyA9IGltYWdl
V2lkdGggKiA0OwotICAgIFJldGFpblB0cjxDR0RhdGFQcm92aWRlclJlZj4gZGF0YVByb3ZpZGVy
KEFkb3B0Q0YsIENHRGF0YVByb3ZpZGVyQ3JlYXRlV2l0aERhdGEoMCwgaW1hZ2VQaXhlbHMsIHJv
d0J5dGVzICogaW1hZ2VIZWlnaHQsIDApKTsKLSAgICBSZXRhaW5QdHI8Q0dJbWFnZVJlZj4gY2dJ
bWFnZShBZG9wdENGLCBDR0ltYWdlQ3JlYXRlKGltYWdlV2lkdGgsIGltYWdlSGVpZ2h0LCA4LCAz
Miwgcm93Qnl0ZXMsIGRldmljZVJHQkNvbG9yU3BhY2VSZWYoKSwga0NHSW1hZ2VBbHBoYVByZW11
bHRpcGxpZWRGaXJzdCB8IGtDR0JpdG1hcEJ5dGVPcmRlcjMySG9zdCwKKyAgICBSZXRhaW5QdHI8
Q0dEYXRhUHJvdmlkZXJSZWY+IGRhdGFQcm92aWRlcjsKKworICAgIGlmIChjb250ZXh0LT5pc0Fj
Y2VsZXJhdGVkQ29udGV4dCgpKSB7CisgICAgICAgIHVuc2lnbmVkIGNoYXIqIGNvcGllZFBpeGVs
czsKKworICAgICAgICBpZiAoIXRyeUZhc3RDYWxsb2MoaW1hZ2VIZWlnaHQsIHJvd0J5dGVzKS5n
ZXRWYWx1ZShjb3BpZWRQaXhlbHMpKQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIG1l
bWNweShjb3BpZWRQaXhlbHMsIGltYWdlUGl4ZWxzLCByb3dCeXRlcyAqIGltYWdlSGVpZ2h0KTsK
KyAgICAgICAgZGF0YVByb3ZpZGVyID0gYWRvcHRDRihDR0RhdGFQcm92aWRlckNyZWF0ZVdpdGhE
YXRhKDAsIGNvcGllZFBpeGVscywgcm93Qnl0ZXMgKiBpbWFnZUhlaWdodCwgcmVsZWFzZUltYWdl
RGF0YSkpOworICAgIH0gZWxzZQorICAgICAgICBkYXRhUHJvdmlkZXIgPSBhZG9wdENGKENHRGF0
YVByb3ZpZGVyQ3JlYXRlV2l0aERhdGEoMCwgaW1hZ2VQaXhlbHMsIHJvd0J5dGVzICogaW1hZ2VI
ZWlnaHQsIDApKTsKKworICAgIFJldGFpblB0cjxDR0ltYWdlUmVmPiBjZ0ltYWdlID0gYWRvcHRD
RihDR0ltYWdlQ3JlYXRlKGltYWdlV2lkdGgsIGltYWdlSGVpZ2h0LCA4LCAzMiwgcm93Qnl0ZXMs
IGRldmljZVJHQkNvbG9yU3BhY2VSZWYoKSwga0NHSW1hZ2VBbHBoYVByZW11bHRpcGxpZWRGaXJz
dCB8IGtDR0JpdG1hcEJ5dGVPcmRlcjMySG9zdCwKICAgICAgICAgZGF0YVByb3ZpZGVyLmdldCgp
LCAwLCBmYWxzZSwga0NHUmVuZGVyaW5nSW50ZW50RGVmYXVsdCkpOworCiAgICAgLy8gQ1NTIHN0
eWxpbmcgbWF5IGNhdXNlIHRoZSBjYW52YXMncyBjb250ZW50IHRvIGJlIHJlc2l6ZWQgb24KICAg
ICAvLyB0aGUgcGFnZS4gR28gYmFjayB0byB0aGUgQ2FudmFzIHRvIGZpZ3VyZSBvdXQgdGhlIGNv
cnJlY3QKICAgICAvLyB3aWR0aCBhbmQgaGVpZ2h0IHRvIGRyYXcuCi0gICAgQ0dSZWN0IHJlY3Qg
PSBDR1JlY3RNYWtlKDAsIDAsIGNhbnZhc1dpZHRoLCBjYW52YXNIZWlnaHQpOworICAgIEZsb2F0
UmVjdCBjYW52YXNSZWN0KDAsIDAsIGNhbnZhc1dpZHRoLCBjYW52YXNIZWlnaHQpOworICAgIEZs
b2F0U2l6ZSBpbWFnZVNpemUoaW1hZ2VXaWR0aCwgaW1hZ2VIZWlnaHQpOwogICAgIC8vIFdlIHdh
bnQgdG8gY29tcGxldGVseSBvdmVyd3JpdGUgdGhlIHByZXZpb3VzIGZyYW1lJ3MKICAgICAvLyBy
ZW5kZXJpbmcgcmVzdWx0cy4KLSAgICBDR0NvbnRleHRTYXZlR1N0YXRlKGNvbnRleHQpOwotICAg
IENHQ29udGV4dFNldEJsZW5kTW9kZShjb250ZXh0LCBrQ0dCbGVuZE1vZGVDb3B5KTsKLSAgICBD
R0NvbnRleHRTZXRJbnRlcnBvbGF0aW9uUXVhbGl0eShjb250ZXh0LCBrQ0dJbnRlcnBvbGF0aW9u
Tm9uZSk7Ci0gICAgQ0dDb250ZXh0RHJhd0ltYWdlKGNvbnRleHQsIHJlY3QsIGNnSW1hZ2UuZ2V0
KCkpOwotICAgIENHQ29udGV4dFJlc3RvcmVHU3RhdGUoY29udGV4dCk7CisKKyAgICBHcmFwaGlj
c0NvbnRleHRTdGF0ZVNhdmVyIHN0YXRlU2F2ZXIoKmNvbnRleHQpOworICAgIGNvbnRleHQtPnNj
YWxlKEZsb2F0U2l6ZSgxLCAtMSkpOworICAgIGNvbnRleHQtPnRyYW5zbGF0ZSgwLCAtaW1hZ2VI
ZWlnaHQpOworICAgIGNvbnRleHQtPnNldEltYWdlSW50ZXJwb2xhdGlvblF1YWxpdHkoSW50ZXJw
b2xhdGlvbk5vbmUpOworICAgIGNvbnRleHQtPmRyYXdOYXRpdmVJbWFnZShjZ0ltYWdlLmdldCgp
LCBpbWFnZVNpemUsIENvbG9yU3BhY2VEZXZpY2VSR0IsIGNhbnZhc1JlY3QsIEZsb2F0UmVjdChG
bG9hdFBvaW50KCksIGltYWdlU2l6ZSksIENvbXBvc2l0ZUNvcHkpOwogfQogCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0M0RPcGVuR0xDb21tb24uY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dDNET3BlbkdMQ29tbW9u
LmNwcAppbmRleCA1OGNmZDdmLi5jN2Q3MzM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0M0RPcGVuR0xDb21tb24uY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0Nv
bnRleHQzRE9wZW5HTENvbW1vbi5jcHAKQEAgLTEyMCw3ICsxMjAsNyBAQCB2b2lkIEdyYXBoaWNz
Q29udGV4dDNEOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhJbWFnZUJ1ZmZlciogaW1h
Z2VCdWZmZXIsCiAgICAgICAgIH0KICAgICB9CiAKLSNpZiBQTEFURk9STShCTEFDS0JFUlJZKQor
I2lmIFBMQVRGT1JNKEJMQUNLQkVSUlkpIHx8IFVTRShDRykKICAgICBwYWludFRvQ2FudmFzKHBp
eGVscy5nZXQoKSwgbV9jdXJyZW50V2lkdGgsIG1fY3VycmVudEhlaWdodCwKICAgICAgICAgICAg
ICAgICAgIGltYWdlQnVmZmVyLT5pbnRlcm5hbFNpemUoKS53aWR0aCgpLCBpbWFnZUJ1ZmZlci0+
aW50ZXJuYWxTaXplKCkuaGVpZ2h0KCksIGltYWdlQnVmZmVyLT5jb250ZXh0KCkpOwogI2Vsc2UK
</data>
<flag name="review"
          id="204497"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>