<?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>115759</bug_id>
          
          <creation_ts>2013-05-07 14:17:20 -0700</creation_ts>
          <short_desc>Move CanvasGradient and CanvasPattern in the union of CanvasStyle</short_desc>
          <delta_ts>2013-05-07 18:42:51 -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>Canvas</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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="Benjamin Poulain">benjamin</reporter>
          <assigned_to name="Benjamin Poulain">benjamin</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>885967</commentid>
    <comment_count>0</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-05-07 14:17:20 -0700</bug_when>
    <thetext>Move CanvasGradient and CanvasPattern in the union of CanvasStyle</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>885968</commentid>
    <comment_count>1</comment_count>
      <attachid>200975</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-05-07 14:18:46 -0700</bug_when>
    <thetext>Created attachment 200975
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>886003</commentid>
    <comment_count>2</comment_count>
      <attachid>200975</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-05-07 15:13:12 -0700</bug_when>
    <thetext>Comment on attachment 200975
Patch

Clearing flags on attachment: 200975

Committed r149696: &lt;http://trac.webkit.org/changeset/149696&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>886004</commentid>
    <comment_count>3</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-05-07 15:13:14 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>886087</commentid>
    <comment_count>4</comment_count>
      <attachid>200975</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2013-05-07 18:31:48 -0700</bug_when>
    <thetext>Comment on attachment 200975
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=200975&amp;action=review

&gt; Source/WebCore/html/canvas/CanvasStyle.cpp:130
&gt; -    , m_gradient(gradient)
&gt; +    , m_gradient(gradient.leakRef())
&gt;  {
&gt; +    m_gradient-&gt;ref();

This looks like a storage leak to me. We already have a ref because of the call to leakRef, no need to call ref again.

&gt; Source/WebCore/html/canvas/CanvasStyle.cpp:137
&gt; -    , m_pattern(pattern)
&gt; +    , m_pattern(pattern.leakRef())
&gt;  {
&gt; +    m_pattern-&gt;ref();

Ditto. Am I right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>886093</commentid>
    <comment_count>5</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-05-07 18:42:51 -0700</bug_when>
    <thetext>Damn! That is right.

Follow up: http://trac.webkit.org/changeset/149706</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>200975</attachid>
            <date>2013-05-07 14:18:46 -0700</date>
            <delta_ts>2013-05-07 18:31:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115759-20130507141752.patch</filename>
            <type>text/plain</type>
            <size>5335</size>
            <attacher name="Benjamin Poulain">benjamin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5Njg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2IxODA5MTg3NDA4OWFk
YjdmOWU3Yjk3ZjVhMmJlZDdhMzM5OTA1NC4uOGQ4ZjY5MTFiM2U3OWRiMGQ3YjE4MGY4OTVjOTYy
YmE5OTJlMjQ5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEzLTA1LTA3ICBCZW5q
YW1pbiBQb3VsYWluICA8YnBvdWxhaW5AYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgQ2FudmFz
R3JhZGllbnQgYW5kIENhbnZhc1BhdHRlcm4gaW4gdGhlIHVuaW9uIG9mIENhbnZhc1N0eWxlCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTU3NTkKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgR3JhZGll
bnQgYW5kIFBhdHRlcm4gYXJlIGV4Y2x1c2l2ZSB3aXRoIHRoZSBvdGhlciB2YWx1ZXMsIGJ1dCB0
aGV5CisgICAgICAgIHdlcmUgbGVmdCBvdXQgb2YgdGhlIHVuaW9uIGJlY2F1c2UgdGhleSBhcmUg
cmVmLWNvdW50ZWQuCisKKyAgICAgICAgVGhpcyBwYXRjaCBtb3ZlcyB0aGVtIGluIHRoZSB1bmlv
biwgYW5kIHNpbXBseSBkb2VzIHRoZSByZWYtY291bnRpbmcgbWFudWFsbHkuCisKKyAgICAgICAg
KiBodG1sL2NhbnZhcy9DYW52YXNTdHlsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYW52YXNT
dHlsZTo6Q2FudmFzU3R5bGUpOgorICAgICAgICAoV2ViQ29yZTo6Q2FudmFzU3R5bGU6On5DYW52
YXNTdHlsZSk6CisgICAgICAgICogaHRtbC9jYW52YXMvQ2FudmFzU3R5bGUuaDoKKyAgICAgICAg
KENhbnZhc1N0eWxlKToKKyAgICAgICAgKFdlYkNvcmU6OkNhbnZhc1N0eWxlOjpjYW52YXNHcmFk
aWVudCk6CisgICAgICAgIChXZWJDb3JlOjpDYW52YXNTdHlsZTo6Y2FudmFzUGF0dGVybik6CisK
IDIwMTMtMDUtMDcgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgogCiAgICAgICAgIFVz
ZSBPd25QdHIgaW5zdGVhZCBvZiBkZWxldGVBbGxWYWx1ZXMgaW4gU1ZHUmVzb3VyY2VzQ2FjaGUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0NhbnZhc1N0eWxlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0NhbnZhc1N0eWxlLmNwcAppbmRleCA5MzA5ZWM2
MTU0NDkzM2EzZWZmZGU0NjJlMjZmZTM5ZTE1ZDdkNzU2Li45ZmU1YjFiOTY0NmU3YjZlNzYxZTcy
Y2MxZTA0YWI2ZmIwOTUxNWE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZh
cy9DYW52YXNTdHlsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvQ2FudmFz
U3R5bGUuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNiwgMjAw
OCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYs
IDIwMDgsIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29weXJpZ2h0
IChDKSAyMDA4LCAyMDEwIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgt
aWVzKQogICogQ29weXJpZ2h0IChDKSAyMDA3IEFscCBUb2tlciA8YWxwQGF0b2tlci5jb20+CiAg
KiBDb3B5cmlnaHQgKEMpIDIwMDggRXJpYyBTZWlkZWwgPGVyaWNAd2Via2l0Lm9yZz4KQEAgLTEy
NSwxNCArMTI1LDI0IEBAIENhbnZhc1N0eWxlOjpDYW52YXNTdHlsZShmbG9hdCBjLCBmbG9hdCBt
LCBmbG9hdCB5LCBmbG9hdCBrLCBmbG9hdCBhKQogCiBDYW52YXNTdHlsZTo6Q2FudmFzU3R5bGUo
UGFzc1JlZlB0cjxDYW52YXNHcmFkaWVudD4gZ3JhZGllbnQpCiAgICAgOiBtX3R5cGUoR3JhZGll
bnQpCi0gICAgLCBtX2dyYWRpZW50KGdyYWRpZW50KQorICAgICwgbV9ncmFkaWVudChncmFkaWVu
dC5sZWFrUmVmKCkpCiB7CisgICAgbV9ncmFkaWVudC0+cmVmKCk7CiB9CiAKIENhbnZhc1N0eWxl
OjpDYW52YXNTdHlsZShQYXNzUmVmUHRyPENhbnZhc1BhdHRlcm4+IHBhdHRlcm4pCiAgICAgOiBt
X3R5cGUoSW1hZ2VQYXR0ZXJuKQotICAgICwgbV9wYXR0ZXJuKHBhdHRlcm4pCisgICAgLCBtX3Bh
dHRlcm4ocGF0dGVybi5sZWFrUmVmKCkpCiB7CisgICAgbV9wYXR0ZXJuLT5yZWYoKTsKK30KKwor
Q2FudmFzU3R5bGU6On5DYW52YXNTdHlsZSgpCit7CisgICAgaWYgKG1fdHlwZSA9PSBHcmFkaWVu
dCkKKyAgICAgICAgbV9ncmFkaWVudC0+ZGVyZWYoKTsKKyAgICBlbHNlIGlmIChtX3R5cGUgPT0g
SW1hZ2VQYXR0ZXJuKQorICAgICAgICBtX3BhdHRlcm4tPmRlcmVmKCk7CiB9CiAKIFBhc3NSZWZQ
dHI8Q2FudmFzU3R5bGU+IENhbnZhc1N0eWxlOjpjcmVhdGVGcm9tU3RyaW5nKGNvbnN0IFN0cmlu
ZyYgY29sb3IsIERvY3VtZW50KiBkb2N1bWVudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvY2FudmFzL0NhbnZhc1N0eWxlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9D
YW52YXNTdHlsZS5oCmluZGV4IDhjYmEzNWJhNDA1NWU0NWU4NDg0MGQzN2RkNGU4NzU2MzllNjI3
OGUuLmYyNTFiNTE5NWM5ZDZhMTEzMDY0ZTY1MzY3ZmNkOGI2NWU5YjQzMjQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvY2FudmFzL0NhbnZhc1N0eWxlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9jYW52YXMvQ2FudmFzU3R5bGUuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMDYsIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA4LCAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAxMCBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3Ig
aXRzIHN1YnNpZGlhcnkoLWllcykKICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKQEAgLTQxLDcgKzQxLDExIEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICBjbGFzcyBIVE1MQ2FudmFzRWxlbWVudDsKIAogICAg
IGNsYXNzIENhbnZhc1N0eWxlIDogcHVibGljIFJlZkNvdW50ZWQ8Q2FudmFzU3R5bGU+IHsKKyAg
ICAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CisgICAgICAgIFdURl9NQUtFX05PTkNPUFlB
QkxFKENhbnZhc1N0eWxlKTsKICAgICBwdWJsaWM6CisgICAgICAgIH5DYW52YXNTdHlsZSgpOwor
CiAgICAgICAgIHN0YXRpYyBQYXNzUmVmUHRyPENhbnZhc1N0eWxlPiBjcmVhdGVGcm9tUkdCQShS
R0JBMzIgcmdiYSkgeyByZXR1cm4gYWRvcHRSZWYobmV3IENhbnZhc1N0eWxlKHJnYmEpKTsgfQog
ICAgICAgICBzdGF0aWMgUGFzc1JlZlB0cjxDYW52YXNTdHlsZT4gY3JlYXRlRnJvbVN0cmluZyhj
b25zdCBTdHJpbmcmIGNvbG9yLCBEb2N1bWVudCogPSAwKTsKICAgICAgICAgc3RhdGljIFBhc3NS
ZWZQdHI8Q2FudmFzU3R5bGU+IGNyZWF0ZUZyb21TdHJpbmdXaXRoT3ZlcnJpZGVBbHBoYShjb25z
dCBTdHJpbmcmIGNvbG9yLCBmbG9hdCBhbHBoYSk7CkBAIC01Niw4ICs2MCw4IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKICAgICAgICAgZmxvYXQgb3ZlcnJpZGVBbHBoYSgpIGNvbnN0IHsgQVNTRVJU
KG1fdHlwZSA9PSBDdXJyZW50Q29sb3JXaXRoT3ZlcnJpZGVBbHBoYSk7IHJldHVybiBtX292ZXJy
aWRlQWxwaGE7IH0KIAogICAgICAgICBTdHJpbmcgY29sb3IoKSBjb25zdCB7IEFTU0VSVChtX3R5
cGUgPT0gUkdCQSB8fCBtX3R5cGUgPT0gQ01ZS0EpOyByZXR1cm4gQ29sb3IobV9yZ2JhKS5zZXJp
YWxpemVkKCk7IH0KLSAgICAgICAgQ2FudmFzR3JhZGllbnQqIGNhbnZhc0dyYWRpZW50KCkgY29u
c3QgeyByZXR1cm4gbV9ncmFkaWVudC5nZXQoKTsgfQotICAgICAgICBDYW52YXNQYXR0ZXJuKiBj
YW52YXNQYXR0ZXJuKCkgY29uc3QgeyByZXR1cm4gbV9wYXR0ZXJuLmdldCgpOyB9CisgICAgICAg
IENhbnZhc0dyYWRpZW50KiBjYW52YXNHcmFkaWVudCgpIGNvbnN0OworICAgICAgICBDYW52YXNQ
YXR0ZXJuKiBjYW52YXNQYXR0ZXJuKCkgY29uc3Q7CiAKICAgICAgICAgdm9pZCBhcHBseUZpbGxD
b2xvcihHcmFwaGljc0NvbnRleHQqKTsKICAgICAgICAgdm9pZCBhcHBseVN0cm9rZUNvbG9yKEdy
YXBoaWNzQ29udGV4dCopOwpAQCAtODIsMTEgKzg2LDEwIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
ICAgICAgICAgdW5pb24gewogICAgICAgICAgICAgUkdCQTMyIG1fcmdiYTsKICAgICAgICAgICAg
IGZsb2F0IG1fb3ZlcnJpZGVBbHBoYTsKKyAgICAgICAgICAgIENhbnZhc0dyYWRpZW50KiBtX2dy
YWRpZW50OworICAgICAgICAgICAgQ2FudmFzUGF0dGVybiogbV9wYXR0ZXJuOwogICAgICAgICB9
OwogCi0gICAgICAgIFJlZlB0cjxDYW52YXNHcmFkaWVudD4gbV9ncmFkaWVudDsKLSAgICAgICAg
UmVmUHRyPENhbnZhc1BhdHRlcm4+IG1fcGF0dGVybjsKLQogICAgICAgICBzdHJ1Y3QgQ01ZS0FW
YWx1ZXMgewogICAgICAgICAgICAgQ01ZS0FWYWx1ZXMoKSA6IGMoMCksIG0oMCksIHkoMCksIGso
MCksIGEoMCkgeyB9CiAgICAgICAgICAgICBDTVlLQVZhbHVlcyhmbG9hdCBjeWFuLCBmbG9hdCBt
YWdlbnRhLCBmbG9hdCB5ZWxsb3csIGZsb2F0IGJsYWNrLCBmbG9hdCBhbHBoYSkgOiBjKGN5YW4p
LCBtKG1hZ2VudGEpLCB5KHllbGxvdyksIGsoYmxhY2spLCBhKGFscGhhKSB7IH0KQEAgLTEwMSw2
ICsxMDQsMjAgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIFJHQkEzMiBjdXJyZW50Q29sb3Io
SFRNTENhbnZhc0VsZW1lbnQqKTsKICAgICBib29sIHBhcnNlQ29sb3JPckN1cnJlbnRDb2xvcihS
R0JBMzImIHBhcnNlZENvbG9yLCBjb25zdCBTdHJpbmcmIGNvbG9yU3RyaW5nLCBIVE1MQ2FudmFz
RWxlbWVudCopOwogCisgICAgaW5saW5lIENhbnZhc0dyYWRpZW50KiBDYW52YXNTdHlsZTo6Y2Fu
dmFzR3JhZGllbnQoKSBjb25zdAorICAgIHsKKyAgICAgICAgaWYgKG1fdHlwZSA9PSBHcmFkaWVu
dCkKKyAgICAgICAgICAgIHJldHVybiBtX2dyYWRpZW50OworICAgICAgICByZXR1cm4gMDsKKyAg
ICB9CisKKyAgICBpbmxpbmUgQ2FudmFzUGF0dGVybiogQ2FudmFzU3R5bGU6OmNhbnZhc1BhdHRl
cm4oKSBjb25zdAorICAgIHsKKyAgICAgICAgaWYgKG1fdHlwZSA9PSBJbWFnZVBhdHRlcm4pCisg
ICAgICAgICAgICByZXR1cm4gbV9wYXR0ZXJuOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>