<?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>166853</bug_id>
          
          <creation_ts>2017-01-09 11:07:51 -0800</creation_ts>
          <short_desc>[TexMap] Use WTF::Function in TextureMapperPlatformLayerProxy</short_desc>
          <delta_ts>2017-01-10 04:30:48 -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>New Bugs</component>
          <version>WebKit 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="Zan Dobersek">zan</reporter>
          <assigned_to name="Zan Dobersek">zan</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>luiz</cc>
    
    <cc>noam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1265070</commentid>
    <comment_count>0</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2017-01-09 11:07:51 -0800</bug_when>
    <thetext>[TexMap] Use WTF::Function in TextureMapperPlatformLayerProxy</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1265071</commentid>
    <comment_count>1</comment_count>
      <attachid>298371</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2017-01-09 11:08:44 -0800</bug_when>
    <thetext>Created attachment 298371
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1265090</commentid>
    <comment_count>2</comment_count>
      <attachid>298371</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-01-09 12:24:56 -0800</bug_when>
    <thetext>Comment on attachment 298371
Patch

I know we have been making this change all over the place, but I wonder what&apos;s wrong with std::function? It&apos;s &quot;bloat&quot;, really? There&apos;s no description in wtf/Function.h of why the class is useful, which is a shame.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1265334</commentid>
    <comment_count>3</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2017-01-10 04:19:00 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; Comment on attachment 298371 [details]
&gt; Patch
&gt; 
&gt; I know we have been making this change all over the place, but I wonder
&gt; what&apos;s wrong with std::function? It&apos;s &quot;bloat&quot;, really? There&apos;s no
&gt; description in wtf/Function.h of why the class is useful, which is a shame.

std::function&lt;&gt; is prone to accidental copying, meaning that all the captured data (via std::bind() or lambda) is copied as well -- unless you&apos;re lucky enough to capture a non-copyable object that would throw up a compilation error if std::function&lt;&gt; that&apos;s capturing it was being copied.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1265335</commentid>
    <comment_count>4</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2017-01-10 04:19:20 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to comment #2)
&gt; &gt; Comment on attachment 298371 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; I know we have been making this change all over the place, but I wonder
&gt; &gt; what&apos;s wrong with std::function? It&apos;s &quot;bloat&quot;, really? There&apos;s no
&gt; &gt; description in wtf/Function.h of why the class is useful, which is a shame.
&gt; 
&gt; std::function&lt;&gt; is prone to accidental copying, meaning that all the
&gt; captured data (via std::bind() or lambda) is copied as well -- unless you&apos;re
&gt; lucky enough to capture a non-copyable object that would throw up a
&gt; compilation error if std::function&lt;&gt; that&apos;s capturing it was being copied.

... while WTF::Function is non-copyable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1265338</commentid>
    <comment_count>5</comment_count>
      <attachid>298371</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2017-01-10 04:30:39 -0800</bug_when>
    <thetext>Comment on attachment 298371
Patch

Clearing flags on attachment: 298371

Committed r210542: &lt;http://trac.webkit.org/changeset/210542&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1265339</commentid>
    <comment_count>6</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2017-01-10 04:30:48 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>298371</attachid>
            <date>2017-01-09 11:08:44 -0800</date>
            <delta_ts>2017-01-10 04:30:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-166853-20170109110709.patch</filename>
            <type>text/plain</type>
            <size>3462</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwNDk1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGNjMDI4N2JhZGE0OGRj
Y2I0MTcyNzNhYjlmMjVjMTA1YjhhMDVjNy4uNTQ2ODUyODI5Y2ExMTcxNzJhZGFkOTM0MGRmMGMx
ZWYxZmEyMzI5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE3LTAxLTA5ICBaYW4g
RG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KKworICAgICAgICBbVGV4TWFwXSBVc2Ug
V1RGOjpGdW5jdGlvbiBpbiBUZXh0dXJlTWFwcGVyUGxhdGZvcm1MYXllclByb3h5CisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjY4NTMKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVc2UgV1RGOjpGdW5jdGlv
biBpbiB0aGUgVGV4dHVyZU1hcHBlclBsYXRmb3JtTGF5ZXJQcm94eSwgaW5zdGVhZCBvZgorICAg
ICAgICB0aGUgc3RkOjpmdW5jdGlvbiBibG9hdC4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyUGxhdGZvcm1MYXllclByb3h5LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlRleHR1cmVNYXBwZXJQbGF0Zm9ybUxheWVyUHJveHk6OnNjaGVkdWxlVXBkYXRl
T25Db21wb3NpdG9yVGhyZWFkKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJQbGF0
Zm9ybUxheWVyUHJveHk6OmNvbXBvc2l0b3JUaHJlYWRVcGRhdGVUaW1lckZpcmVkKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlclBsYXRmb3JtTGF5ZXJQ
cm94eS5oOgorCiAyMDE3LTAxLTA3ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUu
Y29tPgogCiAgICAgICAgIEF2b2lkIHRyaWdnZXJpbmcgcmVidWlsZHMgZm9yIG1pbm9yIGNoYW5n
ZXMgb2YgQ1NTUHJvcGVydGllcy5qc29uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlclBsYXRmb3JtTGF5ZXJQcm94eS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlclBs
YXRmb3JtTGF5ZXJQcm94eS5jcHAKaW5kZXggNWUzYzgyZjFmMzNhZDUyOTI1MDY2ODk2YzljMjE0
YTMzYmY4YjMwNS4uYzFiYmNhMTU4MjA1MTdjNThiZGRlZTQyYzI2Yjk3MmRmM2ZjMmJmMiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVN
YXBwZXJQbGF0Zm9ybUxheWVyUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyUGxhdGZvcm1MYXllclByb3h5LmNwcApAQCAt
MTU2LDcgKzE1Niw3IEBAIHZvaWQgVGV4dHVyZU1hcHBlclBsYXRmb3JtTGF5ZXJQcm94eTo6c3dh
cEJ1ZmZlcigpCiAgICAgICAgIG1fdXNlZEJ1ZmZlcnMuYXBwZW5kKFdURk1vdmUocHJldkJ1ZmZl
cikpOwogfQogCi1ib29sIFRleHR1cmVNYXBwZXJQbGF0Zm9ybUxheWVyUHJveHk6OnNjaGVkdWxl
VXBkYXRlT25Db21wb3NpdG9yVGhyZWFkKHN0ZDo6ZnVuY3Rpb248dm9pZCgpPiYmIHVwZGF0ZUZ1
bmN0aW9uKQorYm9vbCBUZXh0dXJlTWFwcGVyUGxhdGZvcm1MYXllclByb3h5OjpzY2hlZHVsZVVw
ZGF0ZU9uQ29tcG9zaXRvclRocmVhZChGdW5jdGlvbjx2b2lkKCk+JiYgdXBkYXRlRnVuY3Rpb24p
CiB7CiAgICAgTG9ja0hvbGRlciBsb2NrZXIobV9sb2NrKTsKICAgICBpZiAoIW1fY29tcG9zaXRv
clRocmVhZFVwZGF0ZVRpbWVyKQpAQCAtMTY5LDcgKzE2OSw3IEBAIGJvb2wgVGV4dHVyZU1hcHBl
clBsYXRmb3JtTGF5ZXJQcm94eTo6c2NoZWR1bGVVcGRhdGVPbkNvbXBvc2l0b3JUaHJlYWQoc3Rk
OjpmdW5jCiAKIHZvaWQgVGV4dHVyZU1hcHBlclBsYXRmb3JtTGF5ZXJQcm94eTo6Y29tcG9zaXRv
clRocmVhZFVwZGF0ZVRpbWVyRmlyZWQoKQogewotICAgIHN0ZDo6ZnVuY3Rpb248dm9pZCgpPiB1
cGRhdGVGdW5jdGlvbjsKKyAgICBGdW5jdGlvbjx2b2lkKCk+IHVwZGF0ZUZ1bmN0aW9uOwogICAg
IHsKICAgICAgICAgTG9ja0hvbGRlciBsb2NrZXIobV9sb2NrKTsKICAgICAgICAgaWYgKCFtX2Nv
bXBvc2l0b3JUaHJlYWRVcGRhdGVGdW5jdGlvbikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyUGxhdGZvcm1MYXllclByb3h5
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBl
clBsYXRmb3JtTGF5ZXJQcm94eS5oCmluZGV4IDRiNTQyMTQ1MDUxZTAxOGYyYzI1NWY4MTVkYjEy
NzU5Y2I5OWUyOTEuLmI3MTBhYjRjZWRjMjU1NjgwYjU4ZjIxYmRjMTdiNWYwMzdiNjY4NzggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJl
TWFwcGVyUGxhdGZvcm1MYXllclByb3h5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJQbGF0Zm9ybUxheWVyUHJveHkuaApAQCAtMzIs
NiArMzIsNyBAQAogI2luY2x1ZGUgIlRleHR1cmVNYXBwZXIuaCIKICNpbmNsdWRlICJUcmFuc2Zv
cm1hdGlvbk1hdHJpeC5oIgogI2luY2x1ZGUgPHd0Zi9Db25kaXRpb24uaD4KKyNpbmNsdWRlIDx3
dGYvRnVuY3Rpb24uaD4KICNpbmNsdWRlIDx3dGYvTG9jay5oPgogI2luY2x1ZGUgPHd0Zi9SdW5M
b29wLmg+CiAjaW5jbHVkZSA8d3RmL1RocmVhZFNhZmVSZWZDb3VudGVkLmg+CkBAIC03Nyw3ICs3
OCw3IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgc3dhcEJ1ZmZlcigpOwogCi0gICAgYm9vbCBzY2hl
ZHVsZVVwZGF0ZU9uQ29tcG9zaXRvclRocmVhZChzdGQ6OmZ1bmN0aW9uPHZvaWQoKT4mJik7Cisg
ICAgYm9vbCBzY2hlZHVsZVVwZGF0ZU9uQ29tcG9zaXRvclRocmVhZChGdW5jdGlvbjx2b2lkKCk+
JiYpOwogCiBwcml2YXRlOgogICAgIHZvaWQgc2NoZWR1bGVSZWxlYXNlVW51c2VkQnVmZmVycygp
OwpAQCAtMTAwLDcgKzEwMSw3IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIGNvbXBvc2l0b3JUaHJl
YWRVcGRhdGVUaW1lckZpcmVkKCk7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFJ1bkxvb3A6OlRpbWVy
PFRleHR1cmVNYXBwZXJQbGF0Zm9ybUxheWVyUHJveHk+PiBtX2NvbXBvc2l0b3JUaHJlYWRVcGRh
dGVUaW1lcjsKLSAgICBzdGQ6OmZ1bmN0aW9uPHZvaWQoKT4gbV9jb21wb3NpdG9yVGhyZWFkVXBk
YXRlRnVuY3Rpb247CisgICAgRnVuY3Rpb248dm9pZCgpPiBtX2NvbXBvc2l0b3JUaHJlYWRVcGRh
dGVGdW5jdGlvbjsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
      

    </bug>

</bugzilla>