<?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>26479</bug_id>
          
          <creation_ts>2009-06-17 07:15:49 -0700</creation_ts>
          <short_desc>Share code between filterEffects</short_desc>
          <delta_ts>2014-05-12 05:54:35 -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>SVG</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</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>68469</blocked>
    
    <blocked>26389</blocked>
    
    <blocked>26480</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dirk Schulze">krit</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>jeffschiller</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>126448</commentid>
    <comment_count>0</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-06-17 07:15:49 -0700</bug_when>
    <thetext>We can share more code between the effects. The imageBuffer creation and drawRect calculation to Filtereffect.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>126449</commentid>
    <comment_count>1</comment_count>
      <attachid>31412</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-06-17 07:18:17 -0700</bug_when>
    <thetext>Created attachment 31412
Share the code

share the code</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>126454</commentid>
    <comment_count>2</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-06-17 08:00:06 -0700</bug_when>
    <thetext>*** Bug 26478 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>126664</commentid>
    <comment_count>3</comment_count>
      <attachid>31412</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2009-06-18 01:11:14 -0700</bug_when>
    <thetext>Comment on attachment 31412
Share the code

I think it makes sense to hoist 
 78     GraphicsContext* filterContext = getEffectContext();
 79     if (!filterContext)
 80         return;
to above the creation of dstRect for clarity</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>126757</commentid>
    <comment_count>4</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-06-18 13:01:23 -0700</bug_when>
    <thetext>landed in r44810.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>31412</attachid>
            <date>2009-06-17 07:18:17 -0700</date>
            <delta_ts>2009-06-18 01:11:14 -0700</delta_ts>
            <desc>Share the code</desc>
            <filename>filterShareCode.patch</filename>
            <type>text/plain</type>
            <size>6019</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0NDc1NykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjUgQEAKKzIwMDktMDYtMTcgIERpcmsgU2NodWx6ZSAgPGtyaXRAd2Via2l0Lm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTaGFy
ZSBjb2RlIGJldHdlZW4gZmlsdGVyRWZmZWN0cworICAgICAgICBbaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTI2NDc5XQorCisgICAgICAgIFNoYXJlIG1vcmUgY29kZSBv
ZiBmaWx0ZXIgZWZmZWN0cy4gVGhlIGltYWdlQnVmZmVyIGNyZWF0aW9uIGNhbiBtb3ZlIHRvCisg
ICAgICAgIEZpbHRlckVmZmVjdCBhbnQgZXZlcnkgZWZmZWN0IGFza3MgZm9yIHRoZSBHcmFwaGlj
c0NvbnRleHQuIE1vdmUgdGhlCisgICAgICAgIGRyYXdpbmdSZWN0IGNhbGN1bGF0aW9uIHRvIEZp
bHRlckVmZmVjdC4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVy
RWZmZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbHRlckVmZmVjdDo6Y2FsY3VsYXRlRHJh
d2luZ1JlY3QpOgorICAgICAgICAoV2ViQ29yZTo6RmlsdGVyRWZmZWN0OjpnZXRFZmZlY3RDb250
ZXh0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlckVmZmVjdC5o
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvU291cmNlR3JhcGhpYy5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpTb3VyY2VHcmFwaGljOjphcHBseSk6CisgICAgICAgICogc3Zn
L2dyYXBoaWNzL2ZpbHRlcnMvU1ZHRkVGbG9vZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGRUZs
b29kOjphcHBseSk6CisgICAgICAgICogc3ZnL2dyYXBoaWNzL2ZpbHRlcnMvU1ZHRkVPZmZzZXQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RkVPZmZzZXQ6OmFwcGx5KToKKwogMjAwOS0wNi0xNyAg
R2F2aW4gQmFycmFjbG91Z2ggIDxiYXJyYWNsb3VnaEBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgT2xpdmVyIEh1bnQuCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Zp
bHRlcnMvRmlsdGVyRWZmZWN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvRmlsdGVyRWZmZWN0LmNwcAkocmV2aXNpb24gNDQ2NzApCisrKyBXZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyRWZmZWN0LmNwcAkod29ya2luZyBj
b3B5KQpAQCAtNTksNiArNTksMjAgQEAgRmxvYXRSZWN0IEZpbHRlckVmZmVjdDo6Y2FsY3VsYXRl
RWZmZWN0UgogICAgIHJldHVybiBzdWJSZWdpb24oKTsKIH0KIAorRmxvYXRSZWN0IEZpbHRlckVm
ZmVjdDo6Y2FsY3VsYXRlRHJhd2luZ1JlY3QoY29uc3QgRmxvYXRSZWN0JiBzcmNSZWN0KQorewor
ICAgIEZsb2F0UG9pbnQgc3RhcnRQb2ludCA9IEZsb2F0UG9pbnQoc3JjUmVjdC54KCkgLSBzdWJS
ZWdpb24oKS54KCksIHNyY1JlY3QueSgpIC0gc3ViUmVnaW9uKCkueSgpKTsKKyAgICBGbG9hdFJl
Y3QgZHJhd2luZ1JlY3QgPSBGbG9hdFJlY3Qoc3RhcnRQb2ludCwgc3JjUmVjdC5zaXplKCkpOwor
ICAgIHJldHVybiBkcmF3aW5nUmVjdDsKK30KKworR3JhcGhpY3NDb250ZXh0KiBGaWx0ZXJFZmZl
Y3Q6OmdldEVmZmVjdENvbnRleHQoKQoreworICAgIEludFJlY3QgYnVmZmVyUmVjdCA9IGVuY2xv
c2luZ0ludFJlY3Qoc3ViUmVnaW9uKCkpOworICAgIG1fZWZmZWN0QnVmZmVyID0gSW1hZ2VCdWZm
ZXI6OmNyZWF0ZShidWZmZXJSZWN0LnNpemUoKSwgZmFsc2UpOworICAgIHJldHVybiBtX2VmZmVj
dEJ1ZmZlci0+Y29udGV4dCgpOworfQorCiBUZXh0U3RyZWFtJiBGaWx0ZXJFZmZlY3Q6OmV4dGVy
bmFsUmVwcmVzZW50YXRpb24oVGV4dFN0cmVhbSYgdHMpIGNvbnN0CiB7CiAgICAgcmV0dXJuIHRz
OwpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlckVmZmVjdC5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJF
ZmZlY3QuaAkocmV2aXNpb24gNDQ2NzApCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Zp
bHRlcnMvRmlsdGVyRWZmZWN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTI0LDYgKzI0LDcgQEAKICNp
ZiBFTkFCTEUoRklMVEVSUykKICNpbmNsdWRlICJGaWx0ZXIuaCIKICNpbmNsdWRlICJGbG9hdFJl
Y3QuaCIKKyNpbmNsdWRlICJHcmFwaGljc0NvbnRleHQuaCIKICNpbmNsdWRlICJJbWFnZUJ1ZmZl
ci5oIgogI2luY2x1ZGUgIlRleHRTdHJlYW0uaCIKIApAQCAtNzQsNiArNzUsOSBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAgICAgICAgIEZsb2F0UmVjdCBjYWxjdWxhdGVVbmlvbk9mQ2hpbGRFZmZl
Y3RTdWJyZWdpb25zKEZpbHRlciosIEZpbHRlckVmZmVjdCosIEZpbHRlckVmZmVjdCopOwogICAg
ICAgICBGbG9hdFJlY3QgY2FsY3VsYXRlVW5pb25PZkNoaWxkRWZmZWN0U3VicmVnaW9ucyhGaWx0
ZXIqLCBGaWx0ZXJFZmZlY3QqKTsKIAorICAgICAgICBHcmFwaGljc0NvbnRleHQqIGdldEVmZmVj
dENvbnRleHQoKTsKKyAgICAgICAgRmxvYXRSZWN0IGNhbGN1bGF0ZURyYXdpbmdSZWN0KGNvbnN0
IEZsb2F0UmVjdCYpOworCiAgICAgICAgIHZpcnR1YWwgRmxvYXRSZWN0IHVuaXRlQ2hpbGRFZmZl
Y3RTdWJyZWdpb25zKEZpbHRlciogZmlsdGVyKSB7IHJldHVybiBmaWx0ZXItPmZpbHRlclJlZ2lv
bigpOyB9CiAgICAgICAgIHZpcnR1YWwgRmxvYXRSZWN0IGNhbGN1bGF0ZUVmZmVjdFJlY3QoRmls
dGVyKik7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBhcHBseShGaWx0ZXIqKSA9IDA7CkluZGV4OiBX
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvU291cmNlR3JhcGhpYy5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1NvdXJjZUdyYXBoaWMu
Y3BwCShyZXZpc2lvbiA0NDY3MCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9Tb3VyY2VHcmFwaGljLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTQsMTYgKzU0LDExIEBAIEZs
b2F0UmVjdCBTb3VyY2VHcmFwaGljOjpjYWxjdWxhdGVFZmZlY3QKIAogdm9pZCBTb3VyY2VHcmFw
aGljOjphcHBseShGaWx0ZXIqIGZpbHRlcikKIHsKLSAgICBJbnRSZWN0IGJ1ZmZlclJlY3QgPSBl
bmNsb3NpbmdJbnRSZWN0KHN1YlJlZ2lvbigpKTsKLSAgICBPd25QdHI8SW1hZ2VCdWZmZXI+IGZp
bHRlckdyYXBoaWMoSW1hZ2VCdWZmZXI6OmNyZWF0ZShidWZmZXJSZWN0LnNpemUoKSwgZmFsc2Up
KTsKLQotICAgIGlmICghZmlsdGVyR3JhcGhpYy5nZXQoKSkKKyAgICBHcmFwaGljc0NvbnRleHQq
IGZpbHRlckNvbnRleHQgPSBnZXRFZmZlY3RDb250ZXh0KCk7CisgICAgaWYgKCFmaWx0ZXJDb250
ZXh0KQogICAgICAgICByZXR1cm47CiAKLSAgICBHcmFwaGljc0NvbnRleHQqIGZpbHRlckNvbnRl
eHQgPSBmaWx0ZXJHcmFwaGljLT5jb250ZXh0KCk7CiAgICAgZmlsdGVyQ29udGV4dC0+ZHJhd0lt
YWdlKGZpbHRlci0+c291cmNlSW1hZ2UoKS0+aW1hZ2UoKSwgSW50UG9pbnQoKSk7Ci0KLSAgICBz
ZXRFZmZlY3RCdWZmZXIoZmlsdGVyR3JhcGhpYy5yZWxlYXNlKCkpOwogfQogCiB2b2lkIFNvdXJj
ZUdyYXBoaWM6OmR1bXAoKQpJbmRleDogV2ViQ29yZS9zdmcvZ3JhcGhpY3MvZmlsdGVycy9TVkdG
RUZsb29kLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9ncmFwaGljcy9maWx0ZXJzL1NW
R0ZFRmxvb2QuY3BwCShyZXZpc2lvbiA0NDY3MCkKKysrIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL2Zp
bHRlcnMvU1ZHRkVGbG9vZC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY2LDE3ICs2NiwxMiBAQCB2
b2lkIEZFRmxvb2Q6OnNldEZsb29kT3BhY2l0eShmbG9hdCBmbG9vCiAKIHZvaWQgRkVGbG9vZDo6
YXBwbHkoRmlsdGVyKikKIHsKLSAgICBJbnRSZWN0IGJ1ZmZlclJlY3QgPSBlbmNsb3NpbmdJbnRS
ZWN0KHN1YlJlZ2lvbigpKTsKLSAgICBPd25QdHI8SW1hZ2VCdWZmZXI+IGZpbHRlckdyYXBoaWMo
SW1hZ2VCdWZmZXI6OmNyZWF0ZShidWZmZXJSZWN0LnNpemUoKSwgZmFsc2UpKTsKLQotICAgIGlm
ICghZmlsdGVyR3JhcGhpYykKKyAgICBHcmFwaGljc0NvbnRleHQqIGZpbHRlckNvbnRleHQgPSBn
ZXRFZmZlY3RDb250ZXh0KCk7CisgICAgaWYgKCFmaWx0ZXJDb250ZXh0KQogICAgICAgICByZXR1
cm47CiAKICAgICBDb2xvciBjb2xvciA9IGNvbG9yV2l0aE92ZXJyaWRlQWxwaGEoZmxvb2RDb2xv
cigpLnJnYigpLCBmbG9vZE9wYWNpdHkoKSk7Ci0gICAgR3JhcGhpY3NDb250ZXh0KiBmaWx0ZXJD
b250ZXh0ID0gZmlsdGVyR3JhcGhpYy0+Y29udGV4dCgpOwogICAgIGZpbHRlckNvbnRleHQtPmZp
bGxSZWN0KEZsb2F0UmVjdChGbG9hdFBvaW50KCksIHN1YlJlZ2lvbigpLnNpemUoKSksIGNvbG9y
KTsKLQotICAgIHNldEVmZmVjdEJ1ZmZlcihmaWx0ZXJHcmFwaGljLnJlbGVhc2UoKSk7CiB9CiAK
IHZvaWQgRkVGbG9vZDo6ZHVtcCgpCkluZGV4OiBXZWJDb3JlL3N2Zy9ncmFwaGljcy9maWx0ZXJz
L1NWR0ZFT2Zmc2V0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9ncmFwaGljcy9maWx0
ZXJzL1NWR0ZFT2Zmc2V0LmNwcAkocmV2aXNpb24gNDQ2NzApCisrKyBXZWJDb3JlL3N2Zy9ncmFw
aGljcy9maWx0ZXJzL1NWR0ZFT2Zmc2V0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzAsMjAgKzcw
LDE2IEBAIHZvaWQgRkVPZmZzZXQ6OmFwcGx5KEZpbHRlciogZmlsdGVyKQogICAgIGlmICghbV9p
bi0+cmVzdWx0SW1hZ2UoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgSW50UmVjdCBidWZmZXJS
ZWN0ID0gZW5jbG9zaW5nSW50UmVjdChzdWJSZWdpb24oKSk7Ci0gICAgT3duUHRyPEltYWdlQnVm
ZmVyPiBmaWx0ZXJHcmFwaGljKEltYWdlQnVmZmVyOjpjcmVhdGUoYnVmZmVyUmVjdC5zaXplKCks
IGZhbHNlKSk7Ci0KLSAgICBpZiAoIWZpbHRlckdyYXBoaWMpCi0gICAgICAgIHJldHVybjsKLQog
ICAgIEZsb2F0UmVjdCBkc3RSZWN0ID0gRmxvYXRSZWN0KGR4KCkgKyBtX2luLT5zdWJSZWdpb24o
KS54KCkgLSBzdWJSZWdpb24oKS54KCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZHkoKSArIG1faW4tPnN1YlJlZ2lvbigpLnkoKSAtIHN1YlJlZ2lvbigpLnkoKSwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtX2luLT5zdWJSZWdpb24oKS53aWR0aCgpLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1faW4tPnN1YlJlZ2lvbigpLmhlaWdo
dCgpKTsKIAotICAgIEdyYXBoaWNzQ29udGV4dCogZmlsdGVyQ29udGV4dCA9IGZpbHRlckdyYXBo
aWMtPmNvbnRleHQoKTsKKyAgICBHcmFwaGljc0NvbnRleHQqIGZpbHRlckNvbnRleHQgPSBnZXRF
ZmZlY3RDb250ZXh0KCk7CisgICAgaWYgKCFmaWx0ZXJDb250ZXh0KQorICAgICAgICByZXR1cm47
CisKICAgICBmaWx0ZXJDb250ZXh0LT5kcmF3SW1hZ2UobV9pbi0+cmVzdWx0SW1hZ2UoKS0+aW1h
Z2UoKSwgZHN0UmVjdCk7Ci0gICAgc2V0RWZmZWN0QnVmZmVyKGZpbHRlckdyYXBoaWMucmVsZWFz
ZSgpKTsKIH0KIAogdm9pZCBGRU9mZnNldDo6ZHVtcCgpCg==
</data>
<flag name="review"
          id="16076"
          type_id="1"
          status="+"
          setter="oliver"
    />
          </attachment>
      

    </bug>

</bugzilla>