<?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>194452</bug_id>
          
          <creation_ts>2019-02-08 14:41:58 -0800</creation_ts>
          <short_desc>Use maxSingleCharacterString in comparisons instead of literal constants.</short_desc>
          <delta_ts>2019-02-08 15:09:29 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mark Lam">mark.lam</reporter>
          <assigned_to name="Mark Lam">mark.lam</assigned_to>
          <cc>fpizlo</cc>
    
    <cc>keith_miller</cc>
    
    <cc>msaboff</cc>
    
    <cc>rmorisset</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1504304</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2019-02-08 14:41:58 -0800</bug_when>
    <thetext>This way, if we ever change maxSingleCharacterString, it won&apos;t break all this code that relies on it being 0xff implicitly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1504306</commentid>
    <comment_count>1</comment_count>
      <attachid>361536</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2019-02-08 14:44:39 -0800</bug_when>
    <thetext>Created attachment 361536
proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1504309</commentid>
    <comment_count>2</comment_count>
      <attachid>361536</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-02-08 14:47:03 -0800</bug_when>
    <thetext>Comment on attachment 361536
proposed patch.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1504319</commentid>
    <comment_count>3</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2019-02-08 15:07:22 -0800</bug_when>
    <thetext>Thanks for the review.  Landed in r241214: &lt;http://trac.webkit.org/r241214&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1504321</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-02-08 15:09:29 -0800</bug_when>
    <thetext>&lt;rdar://problem/47931478&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>361536</attachid>
            <date>2019-02-08 14:44:39 -0800</date>
            <delta_ts>2019-02-08 14:47:03 -0800</delta_ts>
            <desc>proposed patch.</desc>
            <filename>bug-194452.patch</filename>
            <type>text/plain</type>
            <size>5298</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjQxMjEwKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBA
CisyMDE5LTAyLTA4ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKworICAgICAgICBV
c2UgbWF4U2luZ2xlQ2hhcmFjdGVyU3RyaW5nIGluIGNvbXBhcmlzb25zIGluc3RlYWQgb2YgbGl0
ZXJhbCBjb25zdGFudHMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xOTQ0NTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBUaGlzIHdheSwgaWYgd2UgZXZlciBjaGFuZ2UgbWF4U2luZ2xlQ2hhcmFjdGVyU3Ry
aW5nLCBpdCB3b24ndCBicmVhayBhbGwgdGhpcyBjb2RlCisgICAgICAgIHRoYXQgcmVsaWVzIG9u
IGl0IGJlaW5nIDB4ZmYgaW1wbGljaXRseS4KKworICAgICAgICAqIGRmZy9ERkdTcGVjdWxhdGl2
ZUpJVC5jcHA6CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGVTdHJp
bmdTbGljZSk6CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGVHZXRC
eVZhbE9uU3RyaW5nKToKKyAgICAgICAgKiBmdGwvRlRMTG93ZXJERkdUb0IzLmNwcDoKKyAgICAg
ICAgKEpTQzo6RlRMOjpERkc6Okxvd2VyREZHVG9CMzo6Y29tcGlsZVN0cmluZ0NoYXJBdCk6Cisg
ICAgICAgIChKU0M6OkZUTDo6REZHOjpMb3dlckRGR1RvQjM6OmNvbXBpbGVTdHJpbmdTbGljZSk6
CisgICAgICAgICogaml0L1RodW5rR2VuZXJhdG9ycy5jcHA6CisgICAgICAgIChKU0M6OnN0cmlu
Z0dldEJ5VmFsR2VuZXJhdG9yKToKKyAgICAgICAgKEpTQzo6Y2hhclRvU3RyaW5nKToKKwogMjAx
OS0wMi0wOCAgTWFyayBMYW0gIDxtYXJrLmxhbUBhcHBsZS5jb20+CiAKICAgICAgICAgRml4IERG
RydzIGRvZXNHQygpIGZvciBDaGVja1RpZXJVcCosIEdldEJ5VmFsLCBQdXRCeVZhbCosIGFuZCBT
dHJpbmdDaGFyQXQgbm9kZXMuCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1Nw
ZWN1bGF0aXZlSklULmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR1NwZWN1bGF0aXZlSklULmNwcAkocmV2aXNpb24gMjQxMjA5KQorKysgU291cmNlL0phdmFT
Y3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE1
NzcsNyArMTU3Nyw3IEBAIHZvaWQgU3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGVTdHJpbmdTbGljZSgK
ICAgICBpczE2Qml0LmxpbmsoJm1faml0KTsKICAgICBtX2ppdC5sb2FkMTYoTWFjcm9Bc3NlbWJs
ZXI6OkJhc2VJbmRleCh0ZW1wR1BSLCBzdGFydEluZGV4R1BSLCBNYWNyb0Fzc2VtYmxlcjo6VGlt
ZXNUd28sIDApLCB0ZW1wR1BSKTsKIAotICAgIGF1dG8gYmlnQ2hhcmFjdGVyID0gbV9qaXQuYnJh
bmNoMzIoTWFjcm9Bc3NlbWJsZXI6OkFib3ZlT3JFcXVhbCwgdGVtcEdQUiwgVHJ1c3RlZEltbTMy
KDB4MTAwKSk7CisgICAgYXV0byBiaWdDaGFyYWN0ZXIgPSBtX2ppdC5icmFuY2gzMihNYWNyb0Fz
c2VtYmxlcjo6QWJvdmUsIHRlbXBHUFIsIFRydXN0ZWRJbW0zMihtYXhTaW5nbGVDaGFyYWN0ZXJT
dHJpbmcpKTsKIAogICAgIC8vIDggYml0IHN0cmluZyB2YWx1ZXMgZG9uJ3QgbmVlZCB0aGUgaXNB
U0NJSSBjaGVjay4KICAgICBjb250OEJpdC5saW5rKCZtX2ppdCk7CkBAIC0yMTk0LDcgKzIxOTQs
NyBAQCB2b2lkIFNwZWN1bGF0aXZlSklUOjpjb21waWxlR2V0QnlWYWxPblN0CiAgICAgbV9qaXQu
bG9hZDE2KE1hY3JvQXNzZW1ibGVyOjpCYXNlSW5kZXgoc3RvcmFnZVJlZywgcHJvcGVydHlSZWcs
IE1hY3JvQXNzZW1ibGVyOjpUaW1lc1R3bywgMCksIHNjcmF0Y2hSZWcpOwogCiAgICAgSklUQ29t
cGlsZXI6Okp1bXAgYmlnQ2hhcmFjdGVyID0KLSAgICAgICAgbV9qaXQuYnJhbmNoMzIoTWFjcm9B
c3NlbWJsZXI6OkFib3ZlT3JFcXVhbCwgc2NyYXRjaFJlZywgVHJ1c3RlZEltbTMyKDB4MTAwKSk7
CisgICAgICAgIG1faml0LmJyYW5jaDMyKE1hY3JvQXNzZW1ibGVyOjpBYm92ZSwgc2NyYXRjaFJl
ZywgVHJ1c3RlZEltbTMyKG1heFNpbmdsZUNoYXJhY3RlclN0cmluZykpOwogCiAgICAgLy8gOCBi
aXQgc3RyaW5nIHZhbHVlcyBkb24ndCBuZWVkIHRoZSBpc0FTQ0lJIGNoZWNrLgogICAgIGNvbnQ4
Qml0LmxpbmsoJm1faml0KTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMTG93
ZXJERkdUb0IzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZU
TExvd2VyREZHVG9CMy5jcHAJKHJldmlzaW9uIDI0MTIxMCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9mdGwvRlRMTG93ZXJERkdUb0IzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjYxMiw3ICs2
NjEyLDcgQEAgcHJpdmF0ZToKICAgICAgICAgICAgICAgICBwcm92ZW5WYWx1ZShtX2dyYXBoLmNo
aWxkKG1fbm9kZSwgMSkpKSk7CiAgICAgICAgIFZhbHVlRnJvbUJsb2NrIGNoYXIxNkJpdCA9IG1f
b3V0LmFuY2hvcihjaGFyMTZCaXRWYWx1ZSk7CiAgICAgICAgIG1fb3V0LmJyYW5jaCgKLSAgICAg
ICAgICAgIG1fb3V0LmFib3ZlT3JFcXVhbChjaGFyMTZCaXRWYWx1ZSwgbV9vdXQuY29uc3RJbnQz
MigweDEwMCkpLAorICAgICAgICAgICAgbV9vdXQuYWJvdmUoY2hhcjE2Qml0VmFsdWUsIG1fb3V0
LmNvbnN0SW50MzIobWF4U2luZ2xlQ2hhcmFjdGVyU3RyaW5nKSksCiAgICAgICAgICAgICByYXJl
bHkoYmlnQ2hhcmFjdGVyKSwgdXN1YWxseShiaXRzQ29udGludWF0aW9uKSk7CiAgICAgICAgICAg
ICAKICAgICAgICAgbV9vdXQuYXBwZW5kVG8oYmlnQ2hhcmFjdGVyLCBiaXRzQ29udGludWF0aW9u
KTsKQEAgLTExOTczLDcgKzExOTczLDcgQEAgcHJpdmF0ZToKICAgICAgICAgTFZhbHVlIGNoYXIx
NkJpdFZhbHVlID0gbV9vdXQubG9hZDE2WmVyb0V4dDMyKG1fb3V0LmJhc2VJbmRleChtX2hlYXBz
LmNoYXJhY3RlcnMxNiwgc3RvcmFnZSwgbV9vdXQuemVyb0V4dFB0cihmcm9tKSkpOwogICAgICAg
ICBWYWx1ZUZyb21CbG9jayBjaGFyMTZCaXQgPSBtX291dC5hbmNob3IoY2hhcjE2Qml0VmFsdWUp
OwogICAgICAgICBtX291dC5icmFuY2goCi0gICAgICAgICAgICBtX291dC5hYm92ZU9yRXF1YWwo
Y2hhcjE2Qml0VmFsdWUsIG1fb3V0LmNvbnN0SW50MzIoMHgxMDApKSwKKyAgICAgICAgICAgIG1f
b3V0LmFib3ZlKGNoYXIxNkJpdFZhbHVlLCBtX291dC5jb25zdEludDMyKG1heFNpbmdsZUNoYXJh
Y3RlclN0cmluZykpLAogICAgICAgICAgICAgcmFyZWx5KGJpZ0NoYXJhY3RlciksIHVzdWFsbHko
Yml0c0NvbnRpbnVhdGlvbikpOwogCiAgICAgICAgIG1fb3V0LmFwcGVuZFRvKGJpZ0NoYXJhY3Rl
ciwgYml0c0NvbnRpbnVhdGlvbik7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L1Ro
dW5rR2VuZXJhdG9ycy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2pp
dC9UaHVua0dlbmVyYXRvcnMuY3BwCShyZXZpc2lvbiAyNDEyMDkpCisrKyBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvaml0L1RodW5rR2VuZXJhdG9ycy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY1Niw3
ICs2NTYsNyBAQCBNYWNyb0Fzc2VtYmxlckNvZGVSZWY8SklUVGh1bmtQdHJUYWc+IHN0CiAgICAg
aml0LmxvYWQxNihKU0ludGVyZmFjZUpJVDo6QmFzZUluZGV4KHN0cmluZ0dQUiwgaW5kZXhHUFIs
IEpTSW50ZXJmYWNlSklUOjpUaW1lc1R3bywgMCksIHN0cmluZ0dQUik7CiAgICAgY29udDhCaXQu
bGluaygmaml0KTsKIAotICAgIGZhaWx1cmVzLmFwcGVuZChqaXQuYnJhbmNoMzIoSlNJbnRlcmZh
Y2VKSVQ6OkFib3ZlT3JFcXVhbCwgc3RyaW5nR1BSLCBKU0ludGVyZmFjZUpJVDo6VHJ1c3RlZElt
bTMyKDB4MTAwKSkpOworICAgIGZhaWx1cmVzLmFwcGVuZChqaXQuYnJhbmNoMzIoSlNJbnRlcmZh
Y2VKSVQ6OkFib3ZlLCBzdHJpbmdHUFIsIEpTSW50ZXJmYWNlSklUOjpUcnVzdGVkSW1tMzIobWF4
U2luZ2xlQ2hhcmFjdGVyU3RyaW5nKSkpOwogICAgIGppdC5tb3ZlKEpTSW50ZXJmYWNlSklUOjpU
cnVzdGVkSW1tUHRyKHZtLT5zbWFsbFN0cmluZ3Muc2luZ2xlQ2hhcmFjdGVyU3RyaW5ncygpKSwg
aW5kZXhHUFIpOwogICAgIGppdC5sb2FkUHRyKEpTSW50ZXJmYWNlSklUOjpCYXNlSW5kZXgoaW5k
ZXhHUFIsIHN0cmluZ0dQUiwgSlNJbnRlcmZhY2VKSVQ6OlNjYWxlUHRyLCAwKSwgc3RyaW5nR1BS
KTsKICAgICBqaXQucmV0KCk7CkBAIC03MDEsNyArNzAxLDcgQEAgc3RhdGljIHZvaWQgc3RyaW5n
Q2hhckxvYWQoU3BlY2lhbGl6ZWRUaAogCiBzdGF0aWMgdm9pZCBjaGFyVG9TdHJpbmcoU3BlY2lh
bGl6ZWRUaHVua0pJVCYgaml0LCBWTSogdm0sIE1hY3JvQXNzZW1ibGVyOjpSZWdpc3RlcklEIHNy
YywgTWFjcm9Bc3NlbWJsZXI6OlJlZ2lzdGVySUQgZHN0LCBNYWNyb0Fzc2VtYmxlcjo6UmVnaXN0
ZXJJRCBzY3JhdGNoKQogewotICAgIGppdC5hcHBlbmRGYWlsdXJlKGppdC5icmFuY2gzMihNYWNy
b0Fzc2VtYmxlcjo6QWJvdmVPckVxdWFsLCBzcmMsIE1hY3JvQXNzZW1ibGVyOjpUcnVzdGVkSW1t
MzIoMHgxMDApKSk7CisgICAgaml0LmFwcGVuZEZhaWx1cmUoaml0LmJyYW5jaDMyKE1hY3JvQXNz
ZW1ibGVyOjpBYm92ZSwgc3JjLCBNYWNyb0Fzc2VtYmxlcjo6VHJ1c3RlZEltbTMyKG1heFNpbmds
ZUNoYXJhY3RlclN0cmluZykpKTsKICAgICBqaXQubW92ZShNYWNyb0Fzc2VtYmxlcjo6VHJ1c3Rl
ZEltbVB0cih2bS0+c21hbGxTdHJpbmdzLnNpbmdsZUNoYXJhY3RlclN0cmluZ3MoKSksIHNjcmF0
Y2gpOwogICAgIGppdC5sb2FkUHRyKE1hY3JvQXNzZW1ibGVyOjpCYXNlSW5kZXgoc2NyYXRjaCwg
c3JjLCBNYWNyb0Fzc2VtYmxlcjo6U2NhbGVQdHIsIDApLCBkc3QpOwogICAgIGppdC5hcHBlbmRG
YWlsdXJlKGppdC5icmFuY2hUZXN0UHRyKE1hY3JvQXNzZW1ibGVyOjpaZXJvLCBkc3QpKTsK
</data>
<flag name="review"
          id="378217"
          type_id="1"
          status="+"
          setter="ysuzuki"
    />
          </attachment>
      

    </bug>

</bugzilla>