<?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>118917</bug_id>
          
          <creation_ts>2013-07-19 11:58:01 -0700</creation_ts>
          <short_desc>[Windows] A few uses of String::charactersWithNullTermination() cause code to hold onto addresses of temporaries</short_desc>
          <delta_ts>2013-07-19 14:39:17 -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>PC</rep_platform>
          <op_sys>Windows 7</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P1</priority>
          <bug_severity>Major</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Brent Fulgham">bfulgham</reporter>
          <assigned_to name="Brent Fulgham">bfulgham</assigned_to>
          <cc>andersca</cc>
    
    <cc>ap</cc>
    
    <cc>bfulgham</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>910275</commentid>
    <comment_count>0</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2013-07-19 11:58:01 -0700</bug_when>
    <thetext>The recent code cleanup that created the String::charactersWithNullTermination() method accidentally stored the address of the temporary Vector buffer in various Windows API locations where it expects the memory to be retained by an external party.  This causes Windows to attempt to use potentially reclaimed memory, resulting in weird menu items and other problems.

This patch fixes the handful of places where this is an issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>910277</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2013-07-19 11:58:53 -0700</bug_when>
    <thetext>&lt;rdar://problem/14495809&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>910319</commentid>
    <comment_count>2</comment_count>
      <attachid>207144</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2013-07-19 14:24:02 -0700</bug_when>
    <thetext>Created attachment 207144
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>910324</commentid>
    <comment_count>3</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2013-07-19 14:39:17 -0700</bug_when>
    <thetext>Committed r152927: &lt;http://trac.webkit.org/changeset/152927&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>207144</attachid>
            <date>2013-07-19 14:24:02 -0700</date>
            <delta_ts>2013-07-19 14:25:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-118917-20130719142349.patch</filename>
            <type>text/plain</type>
            <size>3903</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1MjkyNikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIxIEBACisyMDEzLTA3LTE5ICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIFtXaW5kb3dzXSBBdm9pZCBw
YXNzaW5nIGFkZHJlc3NlcyBvZiB0ZW1wb3JhcmllcyB0byBXaW5kb3dzIEFQSS4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExODkxNworCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoZSB0ZW1wb3JhcnkgVmVj
dG9yIHJldHVybmVkIGJ5IFN0cmluZzo6Y2hhcmFjdGVyc1dpdGhOdWxsVGVybWluYXRpb24KKyAg
ICAgICAgd2FzIGdvaW5nIG91dCBvZiBzY29wZSBiZWZvcmUgaXRzIGZpcnN0IHVzZSwgY2F1c2lu
ZyBXaW5kb3dzIEFQSSB0bworICAgICAgICByZWNlaXZlIGdhcmJhZ2UgbWVtb3J5LgorCisgICAg
ICAgICogcGxhdGZvcm0vd2luL0NvbnRleHRNZW51V2luLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkNvbnRleHRNZW51OjpjcmVhdGVQbGF0Zm9ybUNvbnRleHRNZW51RnJvbUl0ZW1zKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS93aW4vUGFzdGVib2FyZFdpbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpj
cmVhdGVHbG9iYWxIRHJvcENvbnRlbnQpOgorICAgICAgICAqIHBsYXRmb3JtL3dpbi9TU0xLZXlH
ZW5lcmF0b3JXaW4uY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViQ29yZTo6c2lnbmVkUHVibGlj
S2V5QW5kQ2hhbGxlbmdlU3RyaW5nKToKKwogMjAxMy0wNy0xOSAgWm9sdGFuIEhvcnZhdGggIDx6
b2x0YW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBbQ1NTIFNoYXBlc10gUmVtb3ZlIGxpbmVXaXRo
aW5TaGFwZUJvdW5kcygpIGZyb20gU2hhcGVJbmZvIHNpbmNlIGl0J3Mgbm8gbG9uZ2VyIHVzZWQK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9Db250ZXh0TWVudVdpbi5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd2luL0NvbnRleHRNZW51V2luLmNw
cAkocmV2aXNpb24gMTUyOTAyKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd2luL0NvbnRl
eHRNZW51V2luLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTE5LDExICsxMTksMTQgQEAgSE1FTlUg
Q29udGV4dE1lbnU6OmNyZWF0ZVBsYXRmb3JtQ29udGV4dAogI2Vsc2UKICAgICAgICAgLy8gQ29u
dGV4dE1lbnVJdGVtOjpwbGF0Zm9ybUNvbnRleHRNZW51SXRlbSBkb2Vzbid0IHNldCB0aGUgdGl0
bGUgb2YgdGhlIE1FTlVJVEVNSU5GTyB0byBtYWtlIHRoZQogICAgICAgICAvLyBsaWZldGltZSBo
YW5kbGluZyBlYXNpZXIgZm9yIGNhbGxlcnMuCi0gICAgICAgIFN0cmluZyBpdGVtVGl0bGUgPSBp
dGVtLnRpdGxlKCk7CisgICAgICAgIFZlY3RvcjxVQ2hhcj4gd2lkZUNoYXJUaXRsZTsgLy8gUmV0
YWluIGJ1ZmZlciBmb3IgbG9uZyBlbm91Z2ggdG8gbWFrZSB0aGUgSW5zZXJ0TWVudUl0ZW0gY2Fs
bAorCisgICAgICAgIGNvbnN0IFN0cmluZyYgaXRlbVRpdGxlID0gaXRlbS50aXRsZSgpOwogICAg
ICAgICBpZiAoaXRlbS50eXBlKCkgIT0gU2VwYXJhdG9yVHlwZSkgewogICAgICAgICAgICAgbWVu
dUl0ZW0uZk1hc2sgfD0gTUlJTV9TVFJJTkc7CiAgICAgICAgICAgICBtZW51SXRlbS5jY2ggPSBp
dGVtVGl0bGUubGVuZ3RoKCk7Ci0gICAgICAgICAgICBtZW51SXRlbS5kd1R5cGVEYXRhID0gY29u
c3RfY2FzdDxMUFdTVFI+KGl0ZW1UaXRsZS5jaGFyYWN0ZXJzV2l0aE51bGxUZXJtaW5hdGlvbigp
LmRhdGEoKSk7CisgICAgICAgICAgICB3aWRlQ2hhclRpdGxlID0gaXRlbVRpdGxlLmNoYXJhY3Rl
cnNXaXRoTnVsbFRlcm1pbmF0aW9uKCk7CisgICAgICAgICAgICBtZW51SXRlbS5kd1R5cGVEYXRh
ID0gY29uc3RfY2FzdDxMUFdTVFI+KHdpZGVDaGFyVGl0bGUuZGF0YSgpKTsKICAgICAgICAgfQog
CiAgICAgICAgIDo6SW5zZXJ0TWVudUl0ZW0obWVudSwgaSwgVFJVRSwgJm1lbnVJdGVtKTsKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9QYXN0ZWJvYXJkV2luLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS93aW4vUGFzdGVib2FyZFdpbi5jcHAJKHJl
dmlzaW9uIDE1MjkwMikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9QYXN0ZWJvYXJk
V2luLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTYzLDcgKzk2Myw4IEBAIHN0YXRpYyBIR0xPQkFM
IGNyZWF0ZUdsb2JhbEhEcm9wQ29udGVudCgKICAgICAgICAgLy8gd2luZG93cyBkb2VzIG5vdCBl
bmpveSBhIGxlYWRpbmcgc2xhc2ggb24gcGF0aHMKICAgICAgICAgaWYgKGxvY2FsUGF0aFswXSA9
PSAnLycpCiAgICAgICAgICAgICBsb2NhbFBhdGggPSBsb2NhbFBhdGguc3Vic3RyaW5nKDEpOwot
ICAgICAgICBMUENXU1RSIGxvY2FsUGF0aFN0ciA9IGxvY2FsUGF0aC5jaGFyYWN0ZXJzV2l0aE51
bGxUZXJtaW5hdGlvbigpLmRhdGEoKTsKKyAgICAgICAgY29uc3QgVmVjdG9yPFVDaGFyPiYgbG9j
YWxQYXRoV2lkZSA9IGxvY2FsUGF0aC5jaGFyYWN0ZXJzV2l0aE51bGxUZXJtaW5hdGlvbigpOwor
ICAgICAgICBMUENXU1RSIGxvY2FsUGF0aFN0ciA9IGxvY2FsUGF0aFdpZGUuZGF0YSgpOwogICAg
ICAgICBpZiAod2NzbGVuKGxvY2FsUGF0aFN0cikgKyAxIDwgTUFYX1BBVEgpCiAgICAgICAgICAg
ICB3Y3NjcHlfcyhmaWxlUGF0aCwgTUFYX1BBVEgsIGxvY2FsUGF0aFN0cik7CiAgICAgICAgIGVs
c2UKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9TU0xLZXlHZW5lcmF0b3JXaW4u
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9TU0xLZXlHZW5l
cmF0b3JXaW4uY3BwCShyZXZpc2lvbiAxNTI5MDIpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS93aW4vU1NMS2V5R2VuZXJhdG9yV2luLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjgsNyArNjgs
OCBAQCBTdHJpbmcgV2ViQ29yZTo6c2lnbmVkUHVibGljS2V5QW5kQ2hhbGxlCiAgICAgICAgIFN0
cmluZyBsb2NhbENoYWxsZW5nZSA9IGNoYWxsZW5nZTsKIAogICAgICAgICAvLyBXaW5kb3dzIEFQ
SSB3b24ndCB3cml0ZSB0byBvdXIgYnVmZmVyLCBhbHRob3VnaCBpdCdzIG5vdCBkZWNsYXJlZCB3
aXRoIGNvbnN0LgotICAgICAgICByZXF1ZXN0SW5mby5wd3N6Q2hhbGxlbmdlU3RyaW5nID0gY29u
c3RfY2FzdDx3Y2hhcl90Kj4obG9jYWxDaGFsbGVuZ2UuY2hhcmFjdGVyc1dpdGhOdWxsVGVybWlu
YXRpb24oKS5kYXRhKCkpOworICAgICAgICBjb25zdCBWZWN0b3I8VUNoYXI+JiBsb2NhbENoYWxs
ZW5nZVdpZGUgPSBsb2NhbENoYWxsZW5nZS5jaGFyYWN0ZXJzV2l0aE51bGxUZXJtaW5hdGlvbigp
OworICAgICAgICByZXF1ZXN0SW5mby5wd3N6Q2hhbGxlbmdlU3RyaW5nID0gY29uc3RfY2FzdDx3
Y2hhcl90Kj4obG9jYWxDaGFsbGVuZ2VXaWRlLmRhdGEoKSk7CiAKICAgICAgICAgQ1JZUFRfQUxH
T1JJVEhNX0lERU5USUZJRVIgc2lnbkFsZ28gPSB7IDAgfTsKICAgICAgICAgc2lnbkFsZ28ucHN6
T2JqSWQgPSBzek9JRF9SU0FfU0hBMVJTQTsK
</data>
<flag name="review"
          id="228916"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>