<?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>65789</bug_id>
          
          <creation_ts>2011-08-05 13:57:10 -0700</creation_ts>
          <short_desc>Leak in CFNetwork Loader RetainPtr&lt;&gt; should Adopt a Copy allocation</short_desc>
          <delta_ts>2011-08-05 17:25:09 -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>WebCore Misc.</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>1</everconfirmed>
          <reporter name="Joseph Pecoraro">joepeck</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>aroben</cc>
    
    <cc>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>psolanki</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>447397</commentid>
    <comment_count>0</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2011-08-05 13:57:10 -0700</bug_when>
    <thetext>Both of these:

    if (RetainPtr&lt;CFDataRef&gt; bodyData = CFURLRequestCopyHTTPRequestBody(request))
         return FormData::create(CFDataGetBytePtr(bodyData.get()), CFDataGetLength(bodyData.get()));
 
    if (RetainPtr&lt;CFArrayRef&gt; bodyParts = wkCFURLRequestCopyHTTPRequestBodyParts(request)) {
         RefPtr&lt;FormData&gt; formData = FormData::create();

Cause leaks because RetainPtr::operation= will CFRetain() but FooCopyBar() already returns
a +1 allocation. We should adopt the reference with AdoptCF.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>447398</commentid>
    <comment_count>1</comment_count>
      <attachid>103104</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2011-08-05 14:00:18 -0700</bug_when>
    <thetext>Created attachment 103104
[PATCH] Proposed Fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>447423</commentid>
    <comment_count>2</comment_count>
      <attachid>103104</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2011-08-05 14:30:07 -0700</bug_when>
    <thetext>Comment on attachment 103104
[PATCH] Proposed Fix

cq- based on the bot failing to build on Windows.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>447425</commentid>
    <comment_count>3</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2011-08-05 14:34:09 -0700</bug_when>
    <thetext>Windows build bot says:
http://queues.webkit.org/results/9323095

3&gt;####### COMPILING 2 FILES USING AT MOST 8 PARALLEL INSTANCES OF cl.exe ###########
3&gt;FormDataStreamCFNet.cpp
3&gt;..\platform\network\cf\FormDataStreamCFNet.cpp(94) : error C2061: syntax error : identifier &apos;AdoptCF&apos;
3&gt;..\platform\network\cf\FormDataStreamCFNet.cpp(94) : error C2059: syntax error : &apos;)&apos;
3&gt;..\platform\network\cf\FormDataStreamCFNet.cpp(95) : error C2143: syntax error : missing &apos;;&apos; before &apos;return&apos;
3&gt;..\platform\network\cf\FormDataStreamCFNet.cpp(95) : error C2065: &apos;bodyData&apos; : undeclared identifier
3&gt;..\platform\network\cf\FormDataStreamCFNet.cpp(95) : error C2228: left of &apos;.get&apos; must have class/struct/union
3&gt;        type is &apos;&apos;unknown-type&apos;&apos;
3&gt;..\platform\network\cf\FormDataStreamCFNet.cpp(95) : error C2228: left of &apos;.get&apos; must have class/struct/union
3&gt;        type is &apos;&apos;unknown-type&apos;&apos;

This built fine for me locally. Maybe the Window&apos;s compiler doesn&apos;t like the shorthand
constructor syntax inside of an if statement? I could move the assignments outside
of the if statements if needed. Adding some windows developers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>447426</commentid>
    <comment_count>4</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2011-08-05 14:34:33 -0700</bug_when>
    <thetext>s/if statement/if condition/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>447433</commentid>
    <comment_count>5</comment_count>
      <attachid>103117</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2011-08-05 14:48:44 -0700</bug_when>
    <thetext>Created attachment 103117
[PATCH] Fix Build Issue With Previous Patch

I forgot that by default PLATFORM(MAC) doesn&apos;t take this path by default.
So my local build was a false positive. I&apos;ve now tested building this change
correctly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>447467</commentid>
    <comment_count>6</comment_count>
      <attachid>103117</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2011-08-05 16:24:46 -0700</bug_when>
    <thetext>Comment on attachment 103117
[PATCH] Fix Build Issue With Previous Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>447493</commentid>
    <comment_count>7</comment_count>
      <attachid>103117</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-05 17:25:05 -0700</bug_when>
    <thetext>Comment on attachment 103117
[PATCH] Fix Build Issue With Previous Patch

Clearing flags on attachment: 103117

Committed r92530: &lt;http://trac.webkit.org/changeset/92530&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>447495</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-05 17:25:09 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>103104</attachid>
            <date>2011-08-05 14:00:18 -0700</date>
            <delta_ts>2011-08-05 14:48:44 -0700</delta_ts>
            <desc>[PATCH] Proposed Fix</desc>
            <filename>proposed-1.patch</filename>
            <type>text/plain</type>
            <size>1770</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAxZWFhNzhkLi4wODhkMDk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUg
QEAKKzIwMTEtMDgtMDUgIEpvc2VwaCBQZWNvcmFybyAgPGpvZXBlY2tAd2Via2l0Lm9yZz4KKwor
ICAgICAgICBMZWFrIGluIENGTmV0d29yayBMb2FkZXIgUmV0YWluUHRyPD4gc2hvdWxkIEFkb3B0
IGEgQ29weSBhbGxvY2F0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD02NTc4OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIEZpeCBhIGxlYWsgYnkgYWRvcHRpbmcgYW4gYWxsb2NhdGlvbiBpbnN0ZWFkIG9m
IHJldGFpbmluZyBpdC4KKworICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY2YvRm9ybURhdGFT
dHJlYW1DRk5ldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpodHRwQm9keUZyb21SZXF1ZXN0KToK
KwogMjAxMS0wOC0wMyAgSWFuIEhlbmRlcnNvbiAgPGlhbmhAYXBwbGUuY29tPgogCiAgICAgICAg
IERyYXcgcmVjdGFuZ3VsYXIgYm94IHNoYWRvdyBmb3IgZWxlbWVudHMgd2l0aCBib3JkZXItcmFk
aXVzIGlmIG5vIGNvcm5lcnMgYXJlIHZpc2libGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvY2YvRm9ybURhdGFTdHJlYW1DRk5ldC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL0Zvcm1EYXRhU3RyZWFtQ0ZOZXQuY3BwCmluZGV4IGU0
ZmM1MWMuLmQxMTIxYWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvY2YvRm9ybURhdGFTdHJlYW1DRk5ldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9jZi9Gb3JtRGF0YVN0cmVhbUNGTmV0LmNwcApAQCAtOTEsMTAgKzkxLDEwIEBA
IHZvaWQgc2V0SFRUUEJvZHkoQ0ZNdXRhYmxlVVJMUmVxdWVzdFJlZiByZXF1ZXN0LCBQYXNzUmVm
UHRyPEZvcm1EYXRhPiBmb3JtRGF0YSkKIAogUGFzc1JlZlB0cjxGb3JtRGF0YT4gaHR0cEJvZHlG
cm9tUmVxdWVzdChDRlVSTFJlcXVlc3RSZWYgcmVxdWVzdCkKIHsKLSAgICBpZiAoUmV0YWluUHRy
PENGRGF0YVJlZj4gYm9keURhdGEgPSBDRlVSTFJlcXVlc3RDb3B5SFRUUFJlcXVlc3RCb2R5KHJl
cXVlc3QpKQorICAgIGlmIChSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBib2R5RGF0YShBZG9wdENGLCBD
RlVSTFJlcXVlc3RDb3B5SFRUUFJlcXVlc3RCb2R5KHJlcXVlc3QpKSkKICAgICAgICAgcmV0dXJu
IEZvcm1EYXRhOjpjcmVhdGUoQ0ZEYXRhR2V0Qnl0ZVB0cihib2R5RGF0YS5nZXQoKSksIENGRGF0
YUdldExlbmd0aChib2R5RGF0YS5nZXQoKSkpOwogCi0gICAgaWYgKFJldGFpblB0cjxDRkFycmF5
UmVmPiBib2R5UGFydHMgPSB3a0NGVVJMUmVxdWVzdENvcHlIVFRQUmVxdWVzdEJvZHlQYXJ0cyhy
ZXF1ZXN0KSkgeworICAgIGlmIChSZXRhaW5QdHI8Q0ZBcnJheVJlZj4gYm9keVBhcnRzKEFkb3B0
Q0YsIHdrQ0ZVUkxSZXF1ZXN0Q29weUhUVFBSZXF1ZXN0Qm9keVBhcnRzKHJlcXVlc3QpKSkgewog
ICAgICAgICBSZWZQdHI8Rm9ybURhdGE+IGZvcm1EYXRhID0gRm9ybURhdGE6OmNyZWF0ZSgpOwog
CiAgICAgICAgIENGSW5kZXggY291bnQgPSBDRkFycmF5R2V0Q291bnQoYm9keVBhcnRzLmdldCgp
KTsK
</data>
<flag name="review"
          id="98585"
          type_id="1"
          status="+"
          setter="darin"
    />
    <flag name="commit-queue"
          id="98592"
          type_id="3"
          status="-"
          setter="joepeck"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>103117</attachid>
            <date>2011-08-05 14:48:44 -0700</date>
            <delta_ts>2011-08-05 17:25:05 -0700</delta_ts>
            <desc>[PATCH] Fix Build Issue With Previous Patch</desc>
            <filename>take2.patch</filename>
            <type>text/plain</type>
            <size>1801</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAxZWFhNzhkLi4wODhkMDk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUg
QEAKKzIwMTEtMDgtMDUgIEpvc2VwaCBQZWNvcmFybyAgPGpvZXBlY2tAd2Via2l0Lm9yZz4KKwor
ICAgICAgICBMZWFrIGluIENGTmV0d29yayBMb2FkZXIgUmV0YWluUHRyPD4gc2hvdWxkIEFkb3B0
IGEgQ29weSBhbGxvY2F0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD02NTc4OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIEZpeCBhIGxlYWsgYnkgYWRvcHRpbmcgYW4gYWxsb2NhdGlvbiBpbnN0ZWFkIG9m
IHJldGFpbmluZyBpdC4KKworICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY2YvRm9ybURhdGFT
dHJlYW1DRk5ldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpodHRwQm9keUZyb21SZXF1ZXN0KToK
KwogMjAxMS0wOC0wMyAgSWFuIEhlbmRlcnNvbiAgPGlhbmhAYXBwbGUuY29tPgogCiAgICAgICAg
IERyYXcgcmVjdGFuZ3VsYXIgYm94IHNoYWRvdyBmb3IgZWxlbWVudHMgd2l0aCBib3JkZXItcmFk
aXVzIGlmIG5vIGNvcm5lcnMgYXJlIHZpc2libGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvY2YvRm9ybURhdGFTdHJlYW1DRk5ldC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL0Zvcm1EYXRhU3RyZWFtQ0ZOZXQuY3BwCmluZGV4IGU0
ZmM1MWMuLmEyMTNjYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvY2YvRm9ybURhdGFTdHJlYW1DRk5ldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9jZi9Gb3JtRGF0YVN0cmVhbUNGTmV0LmNwcApAQCAtOTEsMTAgKzkxLDEyIEBA
IHZvaWQgc2V0SFRUUEJvZHkoQ0ZNdXRhYmxlVVJMUmVxdWVzdFJlZiByZXF1ZXN0LCBQYXNzUmVm
UHRyPEZvcm1EYXRhPiBmb3JtRGF0YSkKIAogUGFzc1JlZlB0cjxGb3JtRGF0YT4gaHR0cEJvZHlG
cm9tUmVxdWVzdChDRlVSTFJlcXVlc3RSZWYgcmVxdWVzdCkKIHsKLSAgICBpZiAoUmV0YWluUHRy
PENGRGF0YVJlZj4gYm9keURhdGEgPSBDRlVSTFJlcXVlc3RDb3B5SFRUUFJlcXVlc3RCb2R5KHJl
cXVlc3QpKQorICAgIFJldGFpblB0cjxDRkRhdGFSZWY+IGJvZHlEYXRhKEFkb3B0Q0YsIENGVVJM
UmVxdWVzdENvcHlIVFRQUmVxdWVzdEJvZHkocmVxdWVzdCkpOworICAgIGlmIChib2R5RGF0YSkK
ICAgICAgICAgcmV0dXJuIEZvcm1EYXRhOjpjcmVhdGUoQ0ZEYXRhR2V0Qnl0ZVB0cihib2R5RGF0
YS5nZXQoKSksIENGRGF0YUdldExlbmd0aChib2R5RGF0YS5nZXQoKSkpOwogCi0gICAgaWYgKFJl
dGFpblB0cjxDRkFycmF5UmVmPiBib2R5UGFydHMgPSB3a0NGVVJMUmVxdWVzdENvcHlIVFRQUmVx
dWVzdEJvZHlQYXJ0cyhyZXF1ZXN0KSkgeworICAgIFJldGFpblB0cjxDRkFycmF5UmVmPiBib2R5
UGFydHMoQWRvcHRDRiwgd2tDRlVSTFJlcXVlc3RDb3B5SFRUUFJlcXVlc3RCb2R5UGFydHMocmVx
dWVzdCkpOworICAgIGlmIChib2R5UGFydHMpIHsKICAgICAgICAgUmVmUHRyPEZvcm1EYXRhPiBm
b3JtRGF0YSA9IEZvcm1EYXRhOjpjcmVhdGUoKTsKIAogICAgICAgICBDRkluZGV4IGNvdW50ID0g
Q0ZBcnJheUdldENvdW50KGJvZHlQYXJ0cy5nZXQoKSk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>