<?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>88703</bug_id>
          
          <creation_ts>2012-06-09 00:27:32 -0700</creation_ts>
          <short_desc>[Qt][Texmap] All layers with backingStore are opaque when using TextureMapperGL.</short_desc>
          <delta_ts>2012-06-09 10:12:19 -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>Platform</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>0</everconfirmed>
          <reporter name="Dongseong Hwang">dongseong.hwang</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>noam</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>645261</commentid>
    <comment_count>0</comment_count>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2012-06-09 00:27:32 -0700</bug_when>
    <thetext>The bug originated from StillImage that is not override
Image::currentFrameHasAlpha(), so it always returns false.
StillImage is used by ImageBuffer, and if Texmap draws contents on ImageBuffer,
TextureMapperBackingStore thinks contents does not have alpha.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645262</commentid>
    <comment_count>1</comment_count>
      <attachid>146690</attachid>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2012-06-09 00:30:08 -0700</bug_when>
    <thetext>Created attachment 146690
patch v.1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645263</commentid>
    <comment_count>2</comment_count>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2012-06-09 00:32:16 -0700</bug_when>
    <thetext>Following code causes this bug.

void TextureMapperLayer::updateBackingStore(TextureMapper* textureMapper, GraphicsLayerTextureMapper* layer)
{
    ...
    // Paint the entire dirty rect into an image buffer. This ensures we only paint once.
    OwnPtr&lt;ImageBuffer&gt; imageBuffer = ImageBuffer::create(dirtyRect.size());
    ...
    RefPtr&lt;Image&gt; image = imageBuffer-&gt;copyImage(DontCopyBackingStore);
    TextureMapperTiledBackingStore* backingStore = static_cast&lt;TextureMapperTiledBackingStore*&gt;(m_backingStore.get());
    backingStore-&gt;updateContents(textureMapper, image.get(), m_size, dirtyRect);
    ...
}

void TextureMapperTiledBackingStore::updateContents(TextureMapper* textureMapper, Image* image, const FloatSize&amp; totalSize, const IntRect&amp; dirtyRect)
{
    createOrDestroyTilesIfNeeded(totalSize, textureMapper-&gt;maxTextureSize(), image-&gt;currentFrameHasAlpha());
    for (size_t i = 0; i &lt; m_tiles.size(); ++i)
        m_tiles[i].updateContents(textureMapper, image, dirtyRect);
}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645356</commentid>
    <comment_count>3</comment_count>
      <attachid>146690</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-09 10:12:15 -0700</bug_when>
    <thetext>Comment on attachment 146690
patch v.1

Clearing flags on attachment: 146690

Committed r119908: &lt;http://trac.webkit.org/changeset/119908&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645357</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-09 10:12:19 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>146690</attachid>
            <date>2012-06-09 00:30:08 -0700</date>
            <delta_ts>2012-06-09 10:12:15 -0700</delta_ts>
            <desc>patch v.1</desc>
            <filename>0001-Qt-Texmap-All-layers-with-backingStore-are-opaque-wh.patch</filename>
            <type>text/plain</type>
            <size>3175</size>
            <attacher name="Dongseong Hwang">dongseong.hwang</attacher>
            
              <data encoding="base64">RnJvbSA3ZDdjNjYxOWI4MTQ0YzU0ZmQ3ZGNmMWNkMTM1YTUwNzNlM2I1NWI1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBIdWFuZyBEb25nc3VuZyA8bHV4dGVsbGFAY29tcGFueTEwMC5u
ZXQ+CkRhdGU6IEZyaSwgOCBKdW4gMjAxMiAxMDoxNDo0NCArMDkwMApTdWJqZWN0OiBbUEFUQ0hd
IFtRdF1bVGV4bWFwXSBBbGwgbGF5ZXJzIHdpdGggYmFja2luZ1N0b3JlIGFyZSBvcGFxdWUgd2hl
bgogdXNpbmcgVGV4dHVyZU1hcHBlckdMLgogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTg4NzAzCgpUaGUgYnVnIG9yaWdpbmF0ZWQgZnJvbSBTdGlsbEltYWdlIHRoYXQg
aXMgbm90IG92ZXJyaWRlCkltYWdlOjpjdXJyZW50RnJhbWVIYXNBbHBoYSgpLCBzbyBpdCBhbHdh
eXMgcmV0dXJucyBmYWxzZS4KU3RpbGxJbWFnZSBpcyB1c2VkIGJ5IEltYWdlQnVmZmVyLCBhbmQg
aWYgVGV4bWFwIGRyYXdzIGNvbnRlbnRzIG9uIEltYWdlQnVmZmVyLApUZXh0dXJlTWFwcGVyQmFj
a2luZ1N0b3JlIHRoaW5rcyBjb250ZW50cyBkb2VzIG5vdCBoYXZlIGFscGhhLgoKQ292ZXJlZCBi
eSBleGlzdGluZyBjb21wb3NpdGluZyB0ZXN0cy4KLS0tCiBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMjAgKysrKysrKysrKysrKysrKysrKysK
IC4uLi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L1N0aWxsSW1hZ2VRdC5jcHAgIHwgICAg
NSArKysrKwogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvU3RpbGxJbWFnZVF0
LmggfCAgICAyICsrCiAzIGZpbGVzIGNoYW5nZWQsIDI3IGluc2VydGlvbnMoKykKCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cK
aW5kZXggYWZlYjczNS4uOWEzNDc5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEy
LTA2LTA5ICBIdWFuZyBEb25nc3VuZyAgPGx1eHRlbGxhQGNvbXBhbnkxMDAubmV0PgorCisgICAg
ICAgIFtRdF1bVGV4bWFwXSBBbGwgbGF5ZXJzIHdpdGggYmFja2luZ1N0b3JlIGFyZSBvcGFxdWUg
d2hlbiB1c2luZyBUZXh0dXJlTWFwcGVyR0wuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD04ODcwMworCisgICAgICAgIFRoZSBidWcgb3JpZ2luYXRlZCBm
cm9tIFN0aWxsSW1hZ2UgdGhhdCBpcyBub3Qgb3ZlcnJpZGUKKyAgICAgICAgSW1hZ2U6OmN1cnJl
bnRGcmFtZUhhc0FscGhhKCksIHNvIGl0IGFsd2F5cyByZXR1cm5zIGZhbHNlLgorICAgICAgICBT
dGlsbEltYWdlIGlzIHVzZWQgYnkgSW1hZ2VCdWZmZXIsIGFuZCBpZiBUZXhtYXAgZHJhd3MgY29u
dGVudHMgb24gSW1hZ2VCdWZmZXIsCisgICAgICAgIFRleHR1cmVNYXBwZXJCYWNraW5nU3RvcmUg
dGhpbmtzIGNvbnRlbnRzIGRvZXMgbm90IGhhdmUgYWxwaGEuCisKKyAgICAgICAgQ292ZXJlZCBi
eSBleGlzdGluZyBjb21wb3NpdGluZyB0ZXN0cy4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3F0L1N0aWxsSW1hZ2VR
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdGlsbEltYWdlOjpjdXJyZW50RnJhbWVIYXNBbHBo
YSk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9xdC9T
dGlsbEltYWdlUXQuaDoKKyAgICAgICAgKFN0aWxsSW1hZ2UpOgorCiAyMDEyLTA2LTA4ICBSYWtl
c2ggS04gIDxyYWtlc2gua25AbW90b3JvbGEuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04ocjEx
NjQ4Nz8pOiBIVE1MRm9ybUVsZW1lbnQ6OmVsZW1lbnRzWyduYW1lJ10gaXMgZW1wdHkgaWYgdGhl
IGZvcm0gaXMgZGV0YWNoZWQgZnJvbSB0aGUgZG9jdW1lbnQgdHJlZQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvU3RpbGxJbWFnZVF0LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L1N0aWxsSW1hZ2VRdC5jcHAKaW5kZXggY2Iy
YTQ0Mi4uODA2NjZiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvcXQvU3RpbGxJbWFnZVF0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9xdC9TdGlsbEltYWdlUXQuY3BwCkBAIC01Miw2ICs1MiwxMSBAQCBTdGlsbEltYWdlOjp+
U3RpbGxJbWFnZSgpCiAgICAgICAgIGRlbGV0ZSBtX3BpeG1hcDsKIH0KIAorYm9vbCBTdGlsbElt
YWdlOjpjdXJyZW50RnJhbWVIYXNBbHBoYSgpCit7CisgICAgcmV0dXJuIG1fcGl4bWFwLT5oYXNB
bHBoYSgpOworfQorCiBJbnRTaXplIFN0aWxsSW1hZ2U6OnNpemUoKSBjb25zdAogewogICAgIHJl
dHVybiBJbnRTaXplKG1fcGl4bWFwLT53aWR0aCgpLCBtX3BpeG1hcC0+aGVpZ2h0KCkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvU3RpbGxJbWFnZVF0
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9TdGlsbEltYWdlUXQuaApp
bmRleCA1ODA3MWQ5Li4zNjgyNjZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9xdC9TdGlsbEltYWdlUXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9xdC9TdGlsbEltYWdlUXQuaApAQCAtNDQsNiArNDQsOCBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAgICAgICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IFN0aWxsSW1hZ2UocGl4
bWFwKSk7CiAgICAgICAgIH0KIAorICAgICAgICB2aXJ0dWFsIGJvb2wgY3VycmVudEZyYW1lSGFz
QWxwaGEoKTsKKwogICAgICAgICAvLyBGSVhNRTogU3RpbGxJbWFnZXMgYXJlIHVuZGVycmVwb3J0
aW5nIGRlY29kZWQgc2l6ZXMgYW5kIHdpbGwgYmUgdW5hYmxlCiAgICAgICAgIC8vIHRvIHBydW5l
IGJlY2F1c2UgdGhlc2UgZnVuY3Rpb25zIGFyZSBub3QgaW1wbGVtZW50ZWQgeWV0LgogICAgICAg
ICB2aXJ0dWFsIHZvaWQgZGVzdHJveURlY29kZWREYXRhKGJvb2wgZGVzdHJveUFsbCA9IHRydWUp
IHsgUV9VTlVTRUQoZGVzdHJveUFsbCk7IH0KLS0gCjEuNy45LjUKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>