<?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>118503</bug_id>
          
          <creation_ts>2013-07-09 06:45:53 -0700</creation_ts>
          <short_desc>Improve StringImpl::constructInternal() method</short_desc>
          <delta_ts>2013-07-12 09:41:22 -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>Web Template Framework</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="Mikhail Pozdnyakov">mikhail.pozdnyakov</reporter>
          <assigned_to name="Mikhail Pozdnyakov">mikhail.pozdnyakov</assigned_to>
          <cc>andersca</cc>
    
    <cc>benjamin</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>kling</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>907099</commentid>
    <comment_count>0</comment_count>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2013-07-09 06:45:53 -0700</bug_when>
    <thetext>StringImpl::constructInternal does the following  (this code had been located previously inside tryCreateUninitializedForce)

    if (sizeof(CharType) == sizeof(char))
        return adoptRef(new (NotNull, impl) StringImpl(length, Force8BitConstructor));
    return adoptRef(new (NotNull, impl) StringImpl(length));

Compiler has to compile both branches even though optimizer will than remove one of those, and as the function is inline it can affect slightly the compilation time. 
Would be nice to have compile-time polymorphism in the constructor already.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907105</commentid>
    <comment_count>1</comment_count>
      <attachid>206316</attachid>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2013-07-09 07:03:58 -0700</bug_when>
    <thetext>Created attachment 206316
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907465</commentid>
    <comment_count>2</comment_count>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2013-07-10 14:19:56 -0700</bug_when>
    <thetext>Having had a discussion with Benjamin on IRC came to conclusion that this is not worthwhile as might affect code readability.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907553</commentid>
    <comment_count>3</comment_count>
      <attachid>206434</attachid>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2013-07-11 01:19:25 -0700</bug_when>
    <thetext>Created attachment 206434
alternate patch

Solves the problem without affecting code readability.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907564</commentid>
    <comment_count>4</comment_count>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2013-07-11 01:47:01 -0700</bug_when>
    <thetext>EWS doe not run, might be because the bug is closed, reopening..</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907565</commentid>
    <comment_count>5</comment_count>
      <attachid>206436</attachid>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2013-07-11 01:48:44 -0700</bug_when>
    <thetext>Created attachment 206436
same as before (try EWS)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907752</commentid>
    <comment_count>6</comment_count>
      <attachid>206436</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-07-11 14:11:36 -0700</bug_when>
    <thetext>Comment on attachment 206436
same as before (try EWS)

I am not sure why you obsess on this branch :)

But I don&apos;t see anything wrong with this. Note that the old code handle char and LChar.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907753</commentid>
    <comment_count>7</comment_count>
      <attachid>206436</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-07-11 14:12:02 -0700</bug_when>
    <thetext>Comment on attachment 206436
same as before (try EWS)

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

&gt; Source/WTF/ChangeLog:22
&gt; +        (WTF::StringImpl::reallocateInternal):
&gt; +        * wtf/text/StringImpl.h:
&gt; +        (WTF::StringImpl::StringImpl):
&gt; +        (WTF::StringImpl::tryCreateUninitialized):
&gt; +        (WTF::LChar):
&gt; +        (WTF::UChar):

Oh, don&apos;t forget to fix your changelog.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907987</commentid>
    <comment_count>8</comment_count>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2013-07-12 09:41:22 -0700</bug_when>
    <thetext>Committed r152595: &lt;http://trac.webkit.org/changeset/152595&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>206316</attachid>
            <date>2013-07-09 07:03:58 -0700</date>
            <delta_ts>2013-07-11 01:19:25 -0700</delta_ts>
            <desc>patch</desc>
            <filename>bug118503</filename>
            <type>text/plain</type>
            <size>5169</size>
            <attacher name="Mikhail Pozdnyakov">mikhail.pozdnyakov</attacher>
            
              <data encoding="base64">Y29tbWl0IDBhMDMwODc2YWQ0YjQ2MmEzNTZkNWUzMGUyNDA4ZDU2YWQ5OTA5Y2IKQXV0aG9yOiBN
aWtoYWlsIFBvemRueWFrb3YgPG1pa2hhaWwucG96ZG55YWtvdkBpbnRlbC5jb20+CkRhdGU6ICAg
VHVlIEp1bCA5IDE2OjU5OjU1IDIwMTMgKzAzMDAKCiAgICBidWcxMTg1MDMKCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV1RGL0NoYW5nZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDdiODcx
MDEuLjkwYmI5OTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XVEYvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTMtMDctMDkgIE1pa2hhaWwgUG96
ZG55YWtvdiAgPG1pa2hhaWwucG96ZG55YWtvdkBpbnRlbC5jb20+CisKKyAgICAgICAgR2V0IHJp
ZCBvZiBTdHJpbmdJbXBsOjpjb25zdHJ1Y3RJbnRlcm5hbCgpIG1ldGhvZAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE4NTAzCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIGdvYWwgb2YgU3RyaW5nSW1w
bDo6Y29uc3RydWN0SW50ZXJuYWwoKSB3YXMgdG8gaW52b2tlIGFwcHJvcHJpYXRlIFN0cmluZ0lt
cGwKKyAgICAgICAgY29uc3RydWN0b3IgYmFzZWQgb24gZ2l2ZW4gdGVtcGxhdGUgcGFyYW1ldGVy
LgorICAgICAgICBIYXZpbmcgY29tcGlsZS10aW1lIHBvbHltb3JwaGlzbSBpbnNpZGUgY29uc3Ry
dWN0b3JzIGlzIG1vcmUgcHJlZmVycmFibGUgYXMgaXQKKyAgICAgICAgc2F2ZXMgc29tZSBsaW5l
cyBvZiBjb2RlIGFuZCBhbHNvIGtlZXBzIHRoZSBjb21waWxlciBmcm9tIGNvbXBpbGluZyBvZiB1
bm5lZGVkCisgICAgICAgIGNvZGUuCisKKyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdJbXBsLmNw
cDoKKyAgICAgICAgKFdURjo6U3RyaW5nSW1wbDo6Y3JlYXRlVW5pbml0aWFsaXplZEludGVybmFs
KToKKyAgICAgICAgKFdURjo6U3RyaW5nSW1wbDo6cmVhbGxvY2F0ZUludGVybmFsKToKKyAgICAg
ICAgKiB3dGYvdGV4dC9TdHJpbmdJbXBsLmg6CisgICAgICAgIChXVEY6OlN0cmluZ0ltcGw6OlN0
cmluZ0ltcGwpOgorICAgICAgICAoV1RGOjpTdHJpbmdJbXBsOjp0cnlDcmVhdGVVbmluaXRpYWxp
emVkKToKKwogMjAxMy0wNy0wOCAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAK
ICAgICAgICAgQWRkIERlcXVlOjpyZW1vdmVMYXN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0
Zi90ZXh0L1N0cmluZ0ltcGwuY3BwIGIvU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdJbXBsLmNw
cAppbmRleCA0ZDJhNGYxLi4wNWMxMmJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi90ZXh0
L1N0cmluZ0ltcGwuY3BwCisrKyBiL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5jcHAK
QEAgLTE5OSw3ICsxOTksNyBAQCBpbmxpbmUgUGFzc1JlZlB0cjxTdHJpbmdJbXBsPiBTdHJpbmdJ
bXBsOjpjcmVhdGVVbmluaXRpYWxpemVkSW50ZXJuYWwodW5zaWduZWQgbAogICAgIFN0cmluZ0lt
cGwqIHN0cmluZyA9IHN0YXRpY19jYXN0PFN0cmluZ0ltcGwqPihmYXN0TWFsbG9jKHNpemUpKTsK
IAogICAgIGRhdGEgPSByZWludGVycHJldF9jYXN0PENoYXJUeXBlKj4oc3RyaW5nICsgMSk7Ci0g
ICAgcmV0dXJuIGNvbnN0cnVjdEludGVybmFsPENoYXJUeXBlPihzdHJpbmcsIGxlbmd0aCk7Cisg
ICAgcmV0dXJuIGFkb3B0UmVmKG5ldyAoTm90TnVsbCwgc3RyaW5nKSBTdHJpbmdJbXBsKGxlbmd0
aCwgQ29uc3RydWN0b3JDaGFyVHlwZVRhZzxDaGFyVHlwZT4oKSkpOwogfQogCiBQYXNzUmVmUHRy
PFN0cmluZ0ltcGw+IFN0cmluZ0ltcGw6OmNyZWF0ZVVuaW5pdGlhbGl6ZWQodW5zaWduZWQgbGVu
Z3RoLCBMQ2hhciomIGRhdGEpCkBAIC0yMzEsNyArMjMxLDcgQEAgaW5saW5lIFBhc3NSZWZQdHI8
U3RyaW5nSW1wbD4gU3RyaW5nSW1wbDo6cmVhbGxvY2F0ZUludGVybmFsKFBhc3NSZWZQdHI8U3Ry
aW5nSW0KICAgICBTdHJpbmdJbXBsKiBzdHJpbmcgPSBzdGF0aWNfY2FzdDxTdHJpbmdJbXBsKj4o
ZmFzdFJlYWxsb2Mob3JpZ2luYWxTdHJpbmcubGVha1JlZigpLCBzaXplKSk7CiAKICAgICBkYXRh
ID0gcmVpbnRlcnByZXRfY2FzdDxDaGFyVHlwZSo+KHN0cmluZyArIDEpOwotICAgIHJldHVybiBj
b25zdHJ1Y3RJbnRlcm5hbDxDaGFyVHlwZT4oc3RyaW5nLCBsZW5ndGgpOworICAgIHJldHVybiBh
ZG9wdFJlZihuZXcgKE5vdE51bGwsIHN0cmluZykgU3RyaW5nSW1wbChsZW5ndGgsIENvbnN0cnVj
dG9yQ2hhclR5cGVUYWc8Q2hhclR5cGU+KCkpKTsKIH0KIAogUGFzc1JlZlB0cjxTdHJpbmdJbXBs
PiBTdHJpbmdJbXBsOjpyZWFsbG9jYXRlKFBhc3NSZWZQdHI8U3RyaW5nSW1wbD4gb3JpZ2luYWxT
dHJpbmcsIHVuc2lnbmVkIGxlbmd0aCwgTENoYXIqJiBkYXRhKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dURi93dGYvdGV4dC9TdHJpbmdJbXBsLmggYi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0lt
cGwuaAppbmRleCBlNWM3NzFjLi5lZmViOGUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi90
ZXh0L1N0cmluZ0ltcGwuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0ltcGwuaApA
QCAtMTk4LDEwICsxOTgsOSBAQCBwcml2YXRlOgogICAgICAgICBoYXNoKCk7CiAgICAgfQogCi0g
ICAgLy8gRklYTUU6IHRoZXJlIGhhcyB0byBiZSBhIGxlc3MgaGFja3kgd2F5IHRvIGRvIHRoaXMu
Ci0gICAgZW51bSBGb3JjZThCaXQgeyBGb3JjZThCaXRDb25zdHJ1Y3RvciB9OworICAgIHRlbXBs
YXRlIDx0eXBlbmFtZSBDaGFyVHlwZT4gc3RydWN0IENvbnN0cnVjdG9yQ2hhclR5cGVUYWcgeyB9
OwogICAgIC8vIENyZWF0ZSBhIG5vcm1hbCA4LWJpdCBzdHJpbmcgd2l0aCBpbnRlcm5hbCBzdG9y
YWdlIChCdWZmZXJJbnRlcm5hbCkKLSAgICBTdHJpbmdJbXBsKHVuc2lnbmVkIGxlbmd0aCwgRm9y
Y2U4Qml0KQorICAgIFN0cmluZ0ltcGwodW5zaWduZWQgbGVuZ3RoLCBDb25zdHJ1Y3RvckNoYXJU
eXBlVGFnPExDaGFyPikKICAgICAgICAgOiBtX3JlZkNvdW50KHNfcmVmQ291bnRJbmNyZW1lbnQp
CiAgICAgICAgICwgbV9sZW5ndGgobGVuZ3RoKQogICAgICAgICAsIG1fZGF0YTgocmVpbnRlcnBy
ZXRfY2FzdDxjb25zdCBMQ2hhcio+KHRoaXMgKyAxKSkKQEAgLTIxNSw3ICsyMTQsNyBAQCBwcml2
YXRlOgogICAgIH0KIAogICAgIC8vIENyZWF0ZSBhIG5vcm1hbCAxNi1iaXQgc3RyaW5nIHdpdGgg
aW50ZXJuYWwgc3RvcmFnZSAoQnVmZmVySW50ZXJuYWwpCi0gICAgU3RyaW5nSW1wbCh1bnNpZ25l
ZCBsZW5ndGgpCisgICAgU3RyaW5nSW1wbCh1bnNpZ25lZCBsZW5ndGgsIENvbnN0cnVjdG9yQ2hh
clR5cGVUYWc8VUNoYXI+ID0gQ29uc3RydWN0b3JDaGFyVHlwZVRhZzxVQ2hhcj4oKSkKICAgICAg
ICAgOiBtX3JlZkNvdW50KHNfcmVmQ291bnRJbmNyZW1lbnQpCiAgICAgICAgICwgbV9sZW5ndGgo
bGVuZ3RoKQogICAgICAgICAsIG1fZGF0YTE2KHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgVUNoYXIq
Pih0aGlzICsgMSkpCkBAIC00NDMsNyArNDQyLDcgQEAgcHVibGljOgogICAgICAgICB9CiAgICAg
ICAgIG91dHB1dCA9IHJlaW50ZXJwcmV0X2Nhc3Q8VCo+KHJlc3VsdEltcGwgKyAxKTsKIAotICAg
ICAgICByZXR1cm4gY29uc3RydWN0SW50ZXJuYWw8VD4ocmVzdWx0SW1wbCwgbGVuZ3RoKTsKKyAg
ICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyAoTm90TnVsbCwgcmVzdWx0SW1wbCkgU3RyaW5nSW1w
bChsZW5ndGgsIENvbnN0cnVjdG9yQ2hhclR5cGVUYWc8VD4oKSkpOwogICAgIH0KIAogICAgIHN0
YXRpYyBQYXNzUmVmUHRyPFN0cmluZ0ltcGw+IGNyZWF0ZUVtcHR5VW5pcXVlKCkKQEAgLTc2Nyw3
ICs3NjYsNiBAQCBwcml2YXRlOgogICAgIGJvb2wgaXNTdGF0aWMoKSBjb25zdCB7IHJldHVybiBt
X3JlZkNvdW50ICYgc19yZWZDb3VudEZsYWdJc1N0YXRpY1N0cmluZzsgfQogICAgIHRlbXBsYXRl
IDxjbGFzcyBVQ2hhclByZWRpY2F0ZT4gUGFzc1JlZlB0cjxTdHJpbmdJbXBsPiBzdHJpcE1hdGNo
ZWRDaGFyYWN0ZXJzKFVDaGFyUHJlZGljYXRlKTsKICAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgQ2hh
clR5cGUsIGNsYXNzIFVDaGFyUHJlZGljYXRlPiBQYXNzUmVmUHRyPFN0cmluZ0ltcGw+IHNpbXBs
aWZ5TWF0Y2hlZENoYXJhY3RlcnNUb1NwYWNlKFVDaGFyUHJlZGljYXRlKTsKLSAgICB0ZW1wbGF0
ZSA8dHlwZW5hbWUgQ2hhclR5cGU+IHN0YXRpYyBQYXNzUmVmUHRyPFN0cmluZ0ltcGw+IGNvbnN0
cnVjdEludGVybmFsKFN0cmluZ0ltcGwqLCB1bnNpZ25lZCk7CiAgICAgdGVtcGxhdGUgPHR5cGVu
YW1lIENoYXJUeXBlPiBzdGF0aWMgUGFzc1JlZlB0cjxTdHJpbmdJbXBsPiBjcmVhdGVVbmluaXRp
YWxpemVkSW50ZXJuYWwodW5zaWduZWQsIENoYXJUeXBlKiYpOwogICAgIHRlbXBsYXRlIDx0eXBl
bmFtZSBDaGFyVHlwZT4gc3RhdGljIFBhc3NSZWZQdHI8U3RyaW5nSW1wbD4gcmVhbGxvY2F0ZUlu
dGVybmFsKFBhc3NSZWZQdHI8U3RyaW5nSW1wbD4sIHVuc2lnbmVkLCBDaGFyVHlwZSomKTsKICAg
ICB0ZW1wbGF0ZSA8dHlwZW5hbWUgQ2hhclR5cGU+IHN0YXRpYyBQYXNzUmVmUHRyPFN0cmluZ0lt
cGw+IGNyZWF0ZUludGVybmFsKGNvbnN0IENoYXJUeXBlKiwgdW5zaWduZWQpOwpAQCAtODUwLDE0
ICs4NDgsNiBAQCBWYWx1ZUNoZWNrPFN0cmluZ0ltcGwqPiB7CiB9OwogI2VuZGlmCiAKLXRlbXBs
YXRlIDx0eXBlbmFtZSBDaGFyVHlwZT4KLUFMV0FZU19JTkxJTkUgUGFzc1JlZlB0cjxTdHJpbmdJ
bXBsPiBTdHJpbmdJbXBsOjpjb25zdHJ1Y3RJbnRlcm5hbChTdHJpbmdJbXBsKiBpbXBsLCB1bnNp
Z25lZCBsZW5ndGgpCi17Ci0gICAgaWYgKHNpemVvZihDaGFyVHlwZSkgPT0gc2l6ZW9mKGNoYXIp
KQotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IChOb3ROdWxsLCBpbXBsKSBTdHJpbmdJbXBs
KGxlbmd0aCwgRm9yY2U4Qml0Q29uc3RydWN0b3IpKTsKLSAgICByZXR1cm4gYWRvcHRSZWYobmV3
IChOb3ROdWxsLCBpbXBsKSBTdHJpbmdJbXBsKGxlbmd0aCkpOwotfQotCiB0ZW1wbGF0ZSA8Pgog
QUxXQVlTX0lOTElORSBjb25zdCBMQ2hhciogU3RyaW5nSW1wbDo6Z2V0Q2hhcmFjdGVyczxMQ2hh
cj4oKSBjb25zdCB7IHJldHVybiBjaGFyYWN0ZXJzOCgpOyB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>206434</attachid>
            <date>2013-07-11 01:19:25 -0700</date>
            <delta_ts>2013-07-11 01:48:44 -0700</delta_ts>
            <desc>alternate patch</desc>
            <filename>bug118503_v2</filename>
            <type>text/plain</type>
            <size>2425</size>
            <attacher name="Mikhail Pozdnyakov">mikhail.pozdnyakov</attacher>
            
              <data encoding="base64">Y29tbWl0IDU4ZWE2MDkwNTM2N2E4MDYzYjc3MjFiMzgzMzYyNjBkNzNjZGYxZmYKQXV0aG9yOiBN
aWtoYWlsIFBvemRueWFrb3YgPG1pa2hhaWwucG96ZG55YWtvdkBpbnRlbC5jb20+CkRhdGU6ICAg
VGh1IEp1bCAxMSAxMToxNTo0NCAyMDEzICswMzAwCgogICAgYnVnMTE4NTAzCgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dURi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRleCBjM2Yy
Mzc4Li40YTUzY2ZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV1RGL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEzLTA3LTExICBNaWtoYWlsIFBv
emRueWFrb3YgIDxtaWtoYWlsLnBvemRueWFrb3ZAaW50ZWwuY29tPgorCisgICAgICAgIEltcHJv
dmUgU3RyaW5nSW1wbDo6Y29uc3RydWN0SW50ZXJuYWwoKSBtZXRob2QKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExODUwMworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFN0cmluZ0ltcGw6OmNvbnN0cnVjdElu
dGVybmFsIHVzZWQgJ2lmICgpJyBzdGF0ZW1lbnQgdG8gZGVjaWRlIHdoaWNoIGNvbnN0cnVjdG9y
CisgICAgICAgIHRvIGludm9rZSBoZW5jZSBjb21waWxlciBoYWQgdG8gY29tcGlsZSBib3RoIGJy
YW5jaGVzIGV2ZW4gdGhvdWdoIG9wdGltaXplciB3b3VsZAorICAgICAgICBoYXZlIHRoZW4gcmVt
b3ZlZCBvbmUgb2YgdGhvc2UsIGFuZCBhcyB0aGUgZnVuY3Rpb24gaXMgaW5saW5lIGl0IGNvdWxk
IGFmZmVjdAorICAgICAgICBzbGlnaHRseSB0aGUgY29tcGlsYXRpb24gdGltZS4KKworICAgICAg
ICBUaGUgcHJvYmxlbSBpcyBzb2x2ZWQgdmlhIHRlbXBsYXRlIHNwZWNpYWxpemF0aW9uLgorCisg
ICAgICAgICogd3RmL3RleHQvU3RyaW5nSW1wbC5jcHA6CisgICAgICAgIChXVEY6OlN0cmluZ0lt
cGw6OmNyZWF0ZVVuaW5pdGlhbGl6ZWRJbnRlcm5hbCk6CisgICAgICAgIChXVEY6OlN0cmluZ0lt
cGw6OnJlYWxsb2NhdGVJbnRlcm5hbCk6CisgICAgICAgICogd3RmL3RleHQvU3RyaW5nSW1wbC5o
OgorICAgICAgICAoV1RGOjpTdHJpbmdJbXBsOjpTdHJpbmdJbXBsKToKKyAgICAgICAgKFdURjo6
U3RyaW5nSW1wbDo6dHJ5Q3JlYXRlVW5pbml0aWFsaXplZCk6CisgICAgICAgIChXVEY6OkxDaGFy
KToKKyAgICAgICAgKFdURjo6VUNoYXIpOgorCiAyMDEzLTA3LTEwICBNaWNoYWVsIEJyw7xuaW5n
ICA8bWljaGFlbC5icnVuaW5nQGRpZ2lhLmNvbT4KIAogICAgICAgICBXb3JrYXJvdW5kIGZvciB4
ODYgb3B0aW1pemVyIGJ1ZyBpbiBNU1ZDIDIwMTIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0
Zi90ZXh0L1N0cmluZ0ltcGwuaCBiL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5oCmlu
ZGV4IGU1Yzc3MWMuLjBkNmMzNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL3RleHQvU3Ry
aW5nSW1wbC5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5oCkBAIC04NTAs
MTMgKzg1MCwxMCBAQCBWYWx1ZUNoZWNrPFN0cmluZ0ltcGwqPiB7CiB9OwogI2VuZGlmCiAKLXRl
bXBsYXRlIDx0eXBlbmFtZSBDaGFyVHlwZT4KLUFMV0FZU19JTkxJTkUgUGFzc1JlZlB0cjxTdHJp
bmdJbXBsPiBTdHJpbmdJbXBsOjpjb25zdHJ1Y3RJbnRlcm5hbChTdHJpbmdJbXBsKiBpbXBsLCB1
bnNpZ25lZCBsZW5ndGgpCi17Ci0gICAgaWYgKHNpemVvZihDaGFyVHlwZSkgPT0gc2l6ZW9mKGNo
YXIpKQotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IChOb3ROdWxsLCBpbXBsKSBTdHJpbmdJ
bXBsKGxlbmd0aCwgRm9yY2U4Qml0Q29uc3RydWN0b3IpKTsKLSAgICByZXR1cm4gYWRvcHRSZWYo
bmV3IChOb3ROdWxsLCBpbXBsKSBTdHJpbmdJbXBsKGxlbmd0aCkpOwotfQordGVtcGxhdGUgPD4K
K0FMV0FZU19JTkxJTkUgUGFzc1JlZlB0cjxTdHJpbmdJbXBsPiBTdHJpbmdJbXBsOjpjb25zdHJ1
Y3RJbnRlcm5hbDxMQ2hhcj4oU3RyaW5nSW1wbCogaW1wbCwgdW5zaWduZWQgbGVuZ3RoKSB7IHJl
dHVybiBhZG9wdFJlZihuZXcgKE5vdE51bGwsIGltcGwpIFN0cmluZ0ltcGwobGVuZ3RoLCBGb3Jj
ZThCaXRDb25zdHJ1Y3RvcikpOyB9Cit0ZW1wbGF0ZSA8PgorQUxXQVlTX0lOTElORSBQYXNzUmVm
UHRyPFN0cmluZ0ltcGw+IFN0cmluZ0ltcGw6OmNvbnN0cnVjdEludGVybmFsPFVDaGFyPihTdHJp
bmdJbXBsKiBpbXBsLCB1bnNpZ25lZCBsZW5ndGgpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyAoTm90
TnVsbCwgaW1wbCkgU3RyaW5nSW1wbChsZW5ndGgpKTsgfQogCiB0ZW1wbGF0ZSA8PgogQUxXQVlT
X0lOTElORSBjb25zdCBMQ2hhciogU3RyaW5nSW1wbDo6Z2V0Q2hhcmFjdGVyczxMQ2hhcj4oKSBj
b25zdCB7IHJldHVybiBjaGFyYWN0ZXJzOCgpOyB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>206436</attachid>
            <date>2013-07-11 01:48:44 -0700</date>
            <delta_ts>2013-07-11 14:12:02 -0700</delta_ts>
            <desc>same as before (try EWS)</desc>
            <filename>bug118503_v2</filename>
            <type>text/plain</type>
            <size>2425</size>
            <attacher name="Mikhail Pozdnyakov">mikhail.pozdnyakov</attacher>
            
              <data encoding="base64">Y29tbWl0IDU4ZWE2MDkwNTM2N2E4MDYzYjc3MjFiMzgzMzYyNjBkNzNjZGYxZmYKQXV0aG9yOiBN
aWtoYWlsIFBvemRueWFrb3YgPG1pa2hhaWwucG96ZG55YWtvdkBpbnRlbC5jb20+CkRhdGU6ICAg
VGh1IEp1bCAxMSAxMToxNTo0NCAyMDEzICswMzAwCgogICAgYnVnMTE4NTAzCgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dURi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRleCBjM2Yy
Mzc4Li40YTUzY2ZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV1RGL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEzLTA3LTExICBNaWtoYWlsIFBv
emRueWFrb3YgIDxtaWtoYWlsLnBvemRueWFrb3ZAaW50ZWwuY29tPgorCisgICAgICAgIEltcHJv
dmUgU3RyaW5nSW1wbDo6Y29uc3RydWN0SW50ZXJuYWwoKSBtZXRob2QKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExODUwMworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFN0cmluZ0ltcGw6OmNvbnN0cnVjdElu
dGVybmFsIHVzZWQgJ2lmICgpJyBzdGF0ZW1lbnQgdG8gZGVjaWRlIHdoaWNoIGNvbnN0cnVjdG9y
CisgICAgICAgIHRvIGludm9rZSBoZW5jZSBjb21waWxlciBoYWQgdG8gY29tcGlsZSBib3RoIGJy
YW5jaGVzIGV2ZW4gdGhvdWdoIG9wdGltaXplciB3b3VsZAorICAgICAgICBoYXZlIHRoZW4gcmVt
b3ZlZCBvbmUgb2YgdGhvc2UsIGFuZCBhcyB0aGUgZnVuY3Rpb24gaXMgaW5saW5lIGl0IGNvdWxk
IGFmZmVjdAorICAgICAgICBzbGlnaHRseSB0aGUgY29tcGlsYXRpb24gdGltZS4KKworICAgICAg
ICBUaGUgcHJvYmxlbSBpcyBzb2x2ZWQgdmlhIHRlbXBsYXRlIHNwZWNpYWxpemF0aW9uLgorCisg
ICAgICAgICogd3RmL3RleHQvU3RyaW5nSW1wbC5jcHA6CisgICAgICAgIChXVEY6OlN0cmluZ0lt
cGw6OmNyZWF0ZVVuaW5pdGlhbGl6ZWRJbnRlcm5hbCk6CisgICAgICAgIChXVEY6OlN0cmluZ0lt
cGw6OnJlYWxsb2NhdGVJbnRlcm5hbCk6CisgICAgICAgICogd3RmL3RleHQvU3RyaW5nSW1wbC5o
OgorICAgICAgICAoV1RGOjpTdHJpbmdJbXBsOjpTdHJpbmdJbXBsKToKKyAgICAgICAgKFdURjo6
U3RyaW5nSW1wbDo6dHJ5Q3JlYXRlVW5pbml0aWFsaXplZCk6CisgICAgICAgIChXVEY6OkxDaGFy
KToKKyAgICAgICAgKFdURjo6VUNoYXIpOgorCiAyMDEzLTA3LTEwICBNaWNoYWVsIEJyw7xuaW5n
ICA8bWljaGFlbC5icnVuaW5nQGRpZ2lhLmNvbT4KIAogICAgICAgICBXb3JrYXJvdW5kIGZvciB4
ODYgb3B0aW1pemVyIGJ1ZyBpbiBNU1ZDIDIwMTIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0
Zi90ZXh0L1N0cmluZ0ltcGwuaCBiL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5oCmlu
ZGV4IGU1Yzc3MWMuLjBkNmMzNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL3RleHQvU3Ry
aW5nSW1wbC5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5oCkBAIC04NTAs
MTMgKzg1MCwxMCBAQCBWYWx1ZUNoZWNrPFN0cmluZ0ltcGwqPiB7CiB9OwogI2VuZGlmCiAKLXRl
bXBsYXRlIDx0eXBlbmFtZSBDaGFyVHlwZT4KLUFMV0FZU19JTkxJTkUgUGFzc1JlZlB0cjxTdHJp
bmdJbXBsPiBTdHJpbmdJbXBsOjpjb25zdHJ1Y3RJbnRlcm5hbChTdHJpbmdJbXBsKiBpbXBsLCB1
bnNpZ25lZCBsZW5ndGgpCi17Ci0gICAgaWYgKHNpemVvZihDaGFyVHlwZSkgPT0gc2l6ZW9mKGNo
YXIpKQotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IChOb3ROdWxsLCBpbXBsKSBTdHJpbmdJ
bXBsKGxlbmd0aCwgRm9yY2U4Qml0Q29uc3RydWN0b3IpKTsKLSAgICByZXR1cm4gYWRvcHRSZWYo
bmV3IChOb3ROdWxsLCBpbXBsKSBTdHJpbmdJbXBsKGxlbmd0aCkpOwotfQordGVtcGxhdGUgPD4K
K0FMV0FZU19JTkxJTkUgUGFzc1JlZlB0cjxTdHJpbmdJbXBsPiBTdHJpbmdJbXBsOjpjb25zdHJ1
Y3RJbnRlcm5hbDxMQ2hhcj4oU3RyaW5nSW1wbCogaW1wbCwgdW5zaWduZWQgbGVuZ3RoKSB7IHJl
dHVybiBhZG9wdFJlZihuZXcgKE5vdE51bGwsIGltcGwpIFN0cmluZ0ltcGwobGVuZ3RoLCBGb3Jj
ZThCaXRDb25zdHJ1Y3RvcikpOyB9Cit0ZW1wbGF0ZSA8PgorQUxXQVlTX0lOTElORSBQYXNzUmVm
UHRyPFN0cmluZ0ltcGw+IFN0cmluZ0ltcGw6OmNvbnN0cnVjdEludGVybmFsPFVDaGFyPihTdHJp
bmdJbXBsKiBpbXBsLCB1bnNpZ25lZCBsZW5ndGgpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyAoTm90
TnVsbCwgaW1wbCkgU3RyaW5nSW1wbChsZW5ndGgpKTsgfQogCiB0ZW1wbGF0ZSA8PgogQUxXQVlT
X0lOTElORSBjb25zdCBMQ2hhciogU3RyaW5nSW1wbDo6Z2V0Q2hhcmFjdGVyczxMQ2hhcj4oKSBj
b25zdCB7IHJldHVybiBjaGFyYWN0ZXJzOCgpOyB9Cg==
</data>
<flag name="review"
          id="228112"
          type_id="1"
          status="+"
          setter="benjamin"
    />
          </attachment>
      

    </bug>

</bugzilla>