<?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>138049</bug_id>
          
          <creation_ts>2014-10-24 11:06:00 -0700</creation_ts>
          <short_desc>Avoid unnecessary NSURLRequest copies in ResourceRequest::doUpdatePlatformRequest() / doUpdatePlatformHTTPBody()</short_desc>
          <delta_ts>2015-07-01 09:26:48 -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>Page Loading</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>REOPENED</bug_status>
          <resolution></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>
          <dependson>146470</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>ap</cc>
    
    <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1043984</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2014-10-24 11:06:00 -0700</bug_when>
    <thetext>Avoid unnecessary NSURLRequest copies in ResourceRequest::doUpdatePlatformRequest() / doUpdatePlatformHTTPBody(). It turns out that half the time, m_nsRequest is already mutable so it is unnecessary to call [NSURLRequest mutableCopy], we can just cast to an NSMutableURLRequest* and avoid copying.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1043997</commentid>
    <comment_count>1</comment_count>
      <attachid>240418</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2014-10-24 11:23:21 -0700</bug_when>
    <thetext>Created attachment 240418
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1044015</commentid>
    <comment_count>2</comment_count>
      <attachid>240418</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-10-24 12:13:17 -0700</bug_when>
    <thetext>Comment on attachment 240418
Patch

Clearing flags on attachment: 240418

Committed r175171: &lt;http://trac.webkit.org/changeset/175171&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1044016</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-10-24 12:13:21 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106021</commentid>
    <comment_count>4</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-07-01 01:28:47 -0700</bug_when>
    <thetext>This got rolled out. Do we know what the problem was? Was it that the mutable NSURLRequest wasn&apos;t expected to be changed?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106072</commentid>
    <comment_count>5</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-07-01 09:26:22 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; This got rolled out. Do we know what the problem was? Was it that the
&gt; mutable NSURLRequest wasn&apos;t expected to be changed?

I haven&apos;t had time to investigate yet. My priority was to safely and quickly fix the crash at this point and a simple roll out seemed like the right thing to do.
I&apos;ll take another look when I get some spare cycles.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106073</commentid>
    <comment_count>6</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-07-01 09:26:48 -0700</bug_when>
    <thetext>Reopening since it was rolled out.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>240418</attachid>
            <date>2014-10-24 11:23:21 -0700</date>
            <delta_ts>2014-10-24 12:13:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-138049-20141024112328.patch</filename>
            <type>text/plain</type>
            <size>5125</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc1MTQyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmNjNzVlNDY5OTNhYWU1
YTE3MTM2YTFkYzJlMWI3ZjQ2MTY3YjFlMi4uZmMzYmNhZmI2YmJiMWQ3YjJkZWNhZWE0MTY5NTI5
OTdhYWIzZTRiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDE0LTEwLTI0ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQXZvaWQgdW5uZWNlc3Nhcnkg
TlNVUkxSZXF1ZXN0IGNvcGllcyBpbiBSZXNvdXJjZVJlcXVlc3Q6OmRvVXBkYXRlUGxhdGZvcm1S
ZXF1ZXN0KCkgLyBkb1VwZGF0ZVBsYXRmb3JtSFRUUEJvZHkoKQorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM4MDQ5CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQXZvaWQgdW5uZWNlc3NhcnkgTlNVUkxSZXF1
ZXN0IGNvcGllcyBpbiBSZXNvdXJjZVJlcXVlc3Q6OmRvVXBkYXRlUGxhdGZvcm1SZXF1ZXN0KCkK
KyAgICAgICAgLyBkb1VwZGF0ZVBsYXRmb3JtSFRUUEJvZHkoKS4gSXQgdHVybnMgb3V0IHRoYXQg
YWJvdXQgaGFsZiB0aGUgdGltZSwgdGhlCisgICAgICAgIG1fbnNSZXF1ZXN0IG1lbWJlciBpcyBh
bHJlYWR5IG11dGFibGUgc28gaXQgaXMgdW5uZWNlc3NhcnkgdG8gY2FsbAorICAgICAgICBbTlNV
UkxSZXF1ZXN0IG11dGFibGVDb3B5XSwgd2UgY2FuIGp1c3QgY2FzdCBpdCB0byBhbiBOU011dGFi
bGVVUkxSZXF1ZXN0KiBhbmQKKyAgICAgICAgYXZvaWQgY29weWluZy4KKworICAgICAgICBUaGlz
IHBhdGNoIGFsc28gbW92ZXMgdGhlIGNvZGUgdG8gYSBuZXcgZW5zdXJlTXV0YWJsZU5TVVJMUmVx
dWVzdCgpIG1ldGhvZCB0bworICAgICAgICBhdm9pZCBkdXBsaWNhdGluZyB0aGUgbG9naWMuCisK
KyAgICAgICAgSSBzZWUgdGhhdCB3ZSBzcGVuZCB+MjElIGxlc3MgdGltZSBpbiB0aGVzZSAyIGZ1
bmN0aW9ucyB3aGVuIGxvYWRpbmcKKyAgICAgICAgaHR0cDovL2ZsaWNrci5jb20vZXhwbG9yZS8g
KDM5LjZtcyAtPiAzMS4ybXMpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgbm8gYmVoYXZpb3Ig
Y2hhbmdlLgorCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jZi9SZXNvdXJjZVJlcXVlc3Qu
aDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2NvY29hL1Jlc291cmNlUmVxdWVzdENvY29h
Lm1tOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0OjplbnN1cmVNdXRhYmxlTlNV
UkxSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdDo6ZG9VcGRhdGVQ
bGF0Zm9ybVJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Ojpkb1Vw
ZGF0ZVBsYXRmb3JtSFRUUEJvZHkpOgorCiAyMDE0LTEwLTIzICBFcmljIENhcmxzb24gIDxlcmlj
LmNhcmxzb25AYXBwbGUuY29tPgogCiAgICAgICAgIFtNYWNdIGRvbid0IHVwZGF0ZSBjYXB0aW9u
IHVzZXIgc3R5bGUgc2hlZXQgZHVyaW5nIHBhcnNpbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL1Jlc291cmNlUmVxdWVzdC5oCmluZGV4IDA0ZDliMDBiNGNl
ZDc0NThiOWVmNjQ4ZGY4MTJmNjgzNWUzOWEwMjMuLmRmNWFjZDBmZTc3YjdlMjg3MmM3OWVjMTk4
OWMzMDY1MTE4ZDFkOTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvY2YvUmVzb3VyY2VSZXF1ZXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0
d29yay9jZi9SZXNvdXJjZVJlcXVlc3QuaApAQCAtMzAsNiArMzAsNyBAQAogI2luY2x1ZGUgIlJl
c291cmNlUmVxdWVzdEJhc2UuaCIKICNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CiAKK09CSkNf
Q0xBU1MgTlNNdXRhYmxlVVJMUmVxdWVzdDsKIE9CSkNfQ0xBU1MgTlNVUkxSZXF1ZXN0OwogCiAj
aWYgUExBVEZPUk0oQ09DT0EpIHx8IFVTRShDRk5FVFdPUkspCkBAIC0xMzYsNiArMTM3LDEwIEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBkb1VwZGF0ZVBsYXRmb3JtSFRUUEJv
ZHkoKTsKICAgICAgICAgdm9pZCBkb1VwZGF0ZVJlc291cmNlSFRUUEJvZHkoKTsKIAorI2lmIFBM
QVRGT1JNKENPQ09BKQorICAgICAgICBOU011dGFibGVVUkxSZXF1ZXN0ICplbnN1cmVNdXRhYmxl
TlNVUkxSZXF1ZXN0KCk7CisjZW5kaWYKKwogICAgICAgICBQYXNzT3duUHRyPENyb3NzVGhyZWFk
UmVzb3VyY2VSZXF1ZXN0RGF0YT4gZG9QbGF0Zm9ybUNvcHlEYXRhKFBhc3NPd25QdHI8Q3Jvc3NU
aHJlYWRSZXNvdXJjZVJlcXVlc3REYXRhPikgY29uc3Q7CiAgICAgICAgIHZvaWQgZG9QbGF0Zm9y
bUFkb3B0KFBhc3NPd25QdHI8Q3Jvc3NUaHJlYWRSZXNvdXJjZVJlcXVlc3REYXRhPik7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2EvUmVzb3VyY2VS
ZXF1ZXN0Q29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29hL1Jl
c291cmNlUmVxdWVzdENvY29hLm1tCmluZGV4IDc3Yzg3OTgyNmQxYmRmMTc1YTg2MTg2ZDc2MzI4
YzE0YzVkN2I5ZjcuLjkyNTJlNjY4MWIwYTdjYTgxMTlmZjQ4YjM3NzVkOGM0YjRiZmFiNWUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2EvUmVzb3VyY2VS
ZXF1ZXN0Q29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2Nv
YS9SZXNvdXJjZVJlcXVlc3RDb2NvYS5tbQpAQCAtMTIzLDYgKzEyMywxNyBAQCB2b2lkIFJlc291
cmNlUmVxdWVzdDo6ZG9VcGRhdGVSZXNvdXJjZUhUVFBCb2R5KCkKICAgICB9CiB9CiAKK2lubGlu
ZSBOU011dGFibGVVUkxSZXF1ZXN0ICpSZXNvdXJjZVJlcXVlc3Q6OmVuc3VyZU11dGFibGVOU1VS
TFJlcXVlc3QoKQoreworICAgIGlmIChtX25zUmVxdWVzdCkgeworICAgICAgICBpZiAoIVttX25z
UmVxdWVzdC5nZXQoKSBpc0tpbmRPZkNsYXNzOltOU011dGFibGVVUkxSZXF1ZXN0IGNsYXNzXV0p
CisgICAgICAgICAgICBtX25zUmVxdWVzdCA9IGFkb3B0TlMoW21fbnNSZXF1ZXN0LmdldCgpIG11
dGFibGVDb3B5XSk7CisgICAgICAgIFsoTlNNdXRhYmxlVVJMUmVxdWVzdCAqKW1fbnNSZXF1ZXN0
LmdldCgpIHNldFVSTDp1cmwoKV07CisgICAgfSBlbHNlCisgICAgICAgIG1fbnNSZXF1ZXN0ID0g
YWRvcHROUyhbW05TTXV0YWJsZVVSTFJlcXVlc3QgYWxsb2NdIGluaXRXaXRoVVJMOnVybCgpXSk7
CisgICAgcmV0dXJuIChOU011dGFibGVVUkxSZXF1ZXN0ICopbV9uc1JlcXVlc3QuZ2V0KCk7Cit9
CisKIHZvaWQgUmVzb3VyY2VSZXF1ZXN0Ojpkb1VwZGF0ZVBsYXRmb3JtUmVxdWVzdCgpCiB7CiAg
ICAgaWYgKGlzTnVsbCgpKSB7CkBAIC0xMzAsMTIgKzE0MSw3IEBAIHZvaWQgUmVzb3VyY2VSZXF1
ZXN0Ojpkb1VwZGF0ZVBsYXRmb3JtUmVxdWVzdCgpCiAgICAgICAgIHJldHVybjsKICAgICB9CiAK
LSAgICBOU011dGFibGVVUkxSZXF1ZXN0ICpuc1JlcXVlc3QgPSBbbV9uc1JlcXVlc3QuZ2V0KCkg
bXV0YWJsZUNvcHldOwotCi0gICAgaWYgKG5zUmVxdWVzdCkKLSAgICAgICAgW25zUmVxdWVzdCBz
ZXRVUkw6dXJsKCldOwotICAgIGVsc2UKLSAgICAgICAgbnNSZXF1ZXN0ID0gW1tOU011dGFibGVV
UkxSZXF1ZXN0IGFsbG9jXSBpbml0V2l0aFVSTDp1cmwoKV07CisgICAgTlNNdXRhYmxlVVJMUmVx
dWVzdCAqbnNSZXF1ZXN0ID0gZW5zdXJlTXV0YWJsZU5TVVJMUmVxdWVzdCgpOwogCiAgICAgaWYg
KFJlc291cmNlUmVxdWVzdDo6aHR0cFBpcGVsaW5pbmdFbmFibGVkKCkpCiAgICAgICAgIHdrSFRU
UFJlcXVlc3RFbmFibGVQaXBlbGluaW5nKFtuc1JlcXVlc3QgX0NGVVJMUmVxdWVzdF0pOwpAQCAt
MTgxLDggKzE4Nyw2IEBAIHZvaWQgUmVzb3VyY2VSZXF1ZXN0Ojpkb1VwZGF0ZVBsYXRmb3JtUmVx
dWVzdCgpCiAgICAgICAgIFtOU1VSTFByb3RvY29sIHNldFByb3BlcnR5OnBhcnRpdGlvblZhbHVl
IGZvcktleTooTlNTdHJpbmcgKil3a0NhY2hlUGFydGl0aW9uS2V5KCkgaW5SZXF1ZXN0Om5zUmVx
dWVzdF07CiAgICAgfQogI2VuZGlmCi0KLSAgICBtX25zUmVxdWVzdCA9IGFkb3B0TlMobnNSZXF1
ZXN0KTsKIH0KIAogdm9pZCBSZXNvdXJjZVJlcXVlc3Q6OmRvVXBkYXRlUGxhdGZvcm1IVFRQQm9k
eSgpCkBAIC0xOTIsMTIgKzE5Niw3IEBAIHZvaWQgUmVzb3VyY2VSZXF1ZXN0Ojpkb1VwZGF0ZVBs
YXRmb3JtSFRUUEJvZHkoKQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgTlNNdXRhYmxl
VVJMUmVxdWVzdCAqbnNSZXF1ZXN0ID0gW21fbnNSZXF1ZXN0LmdldCgpIG11dGFibGVDb3B5XTsK
LQotICAgIGlmIChuc1JlcXVlc3QpCi0gICAgICAgIFtuc1JlcXVlc3Qgc2V0VVJMOnVybCgpXTsK
LSAgICBlbHNlCi0gICAgICAgIG5zUmVxdWVzdCA9IFtbTlNNdXRhYmxlVVJMUmVxdWVzdCBhbGxv
Y10gaW5pdFdpdGhVUkw6dXJsKCldOworICAgIE5TTXV0YWJsZVVSTFJlcXVlc3QgKm5zUmVxdWVz
dCA9IGVuc3VyZU11dGFibGVOU1VSTFJlcXVlc3QoKTsKIAogICAgIFJlZlB0cjxGb3JtRGF0YT4g
Zm9ybURhdGEgPSBodHRwQm9keSgpOwogICAgIGlmIChmb3JtRGF0YSAmJiAhZm9ybURhdGEtPmlz
RW1wdHkoKSkKQEAgLTIxMyw4ICsyMTIsNiBAQCB2b2lkIFJlc291cmNlUmVxdWVzdDo6ZG9VcGRh
dGVQbGF0Zm9ybUhUVFBCb2R5KCkKICAgICAgICAgICAgIG1faHR0cEhlYWRlckZpZWxkcy5zZXQo
SFRUUEhlYWRlck5hbWU6OkNvbnRlbnRMZW5ndGgsIGxlbmd0aFN0cmluZyk7CiAgICAgICAgIH0K
ICAgICB9Ci0KLSAgICBtX25zUmVxdWVzdCA9IGFkb3B0TlMobnNSZXF1ZXN0KTsKIH0KIAogdm9p
ZCBSZXNvdXJjZVJlcXVlc3Q6OnVwZGF0ZUZyb21EZWxlZ2F0ZVByZXNlcnZpbmdPbGRQcm9wZXJ0
aWVzKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgZGVsZWdhdGVQcm92aWRlZFJlcXVlc3QpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>