<?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>227357</bug_id>
          
          <creation_ts>2021-06-24 09:47:44 -0700</creation_ts>
          <short_desc>CSS parser does not handle unpaired surrogates correctly</short_desc>
          <delta_ts>2021-06-24 11:25:21 -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>CSS</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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="Darin Adler">darin</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          <cc>ap</cc>
    
    <cc>cdumez</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gsnedders</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>heycam</cc>
    
    <cc>koivisto</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1772317</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-06-24 09:47:44 -0700</bug_when>
    <thetext>CSS parser does not handle unpaired surrogates correctly</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1772318</commentid>
    <comment_count>1</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-06-24 09:53:12 -0700</bug_when>
    <thetext>We already had a function lying around that does the right thing so this was easy to fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1772352</commentid>
    <comment_count>2</comment_count>
      <attachid>432188</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-06-24 10:33:48 -0700</bug_when>
    <thetext>Created attachment 432188
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1772380</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-06-24 11:24:07 -0700</bug_when>
    <thetext>Committed r279238 (239123@main): &lt;https://commits.webkit.org/239123@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 432188.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1772384</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-06-24 11:25:21 -0700</bug_when>
    <thetext>&lt;rdar://problem/79734024&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432188</attachid>
            <date>2021-06-24 10:33:48 -0700</date>
            <delta_ts>2021-06-24 11:24:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227357-20210624103347.patch</filename>
            <type>text/plain</type>
            <size>6333</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5MjMyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMGI0NGNhZWM3YjdkZWQ4
YjcxYjI2MGU3NzQ1Zjk2YWMyMDhhYjczZi4uNjE3MDAyOThlYzNkMmQ3N2RlYWY3YmMzZDRmMjll
MTY5NzE1MjBlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIxLTA2LTI0ICBEYXJp
biBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBDU1MgcGFyc2VyIGRvZXMgbm90
IGhhbmRsZSB1bnBhaXJlZCBzdXJyb2dhdGVzIGNvcnJlY3RseQorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3MzU3CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGVzdHM6IGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy1zeW50YXgvaW5wdXQtcHJlcHJvY2Vzc2luZy5odG1sCisKKyAg
ICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRTdHJpbmdzLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OnN0cmluZ1RvVVNWU3RyaW5nKTogTWFkZSBub24taW5saW5lIHRvIGJlIHVzZWQgb3V0
c2lkZSB0aGlzIGZpbGUuCisgICAgICAgICogYmluZGluZ3MvanMvSlNET01Db252ZXJ0U3RyaW5n
cy5oOiBBZGRlZCBzdHJpbmdUb1VTVlN0cmluZy4KKworICAgICAgICAqIGNzcy9wYXJzZXIvQ1NT
VG9rZW5pemVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnByZXByb2Nlc3NTdHJpbmcpOiBDYWxs
IHN0cmluZ1RvVVNWU3RyaW5nIHRvIGNvbnZlcnQgdW5wYWlyZWQKKyAgICAgICAgc3Vycm9nYXRl
cyB0byByZXBsYWNlbWVudCBjaGFyYWN0ZXJzLgorCiAyMDIxLTA2LTI0ICBLaW1tbyBLaW5udW5l
biAgPGtraW5udW5lbkBhcHBsZS5jb20+CiAKICAgICAgICAgVXNpbmcgYSB2aWRlbyBhcyBhIHNv
dXJjZSBmb3IgYSBXZWJHTCB0ZXh0dXJlIGlzIHNsb3cgYW5kIGhhbmdzIG9uIGlPUyAxNQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01Db252ZXJ0U3RyaW5ncy5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRTdHJpbmdzLmNwcApp
bmRleCA5NTlmNWZmOTNkZDA5YTRlMzIzYTA5ZGViNzJlZTkyNTk1NWI1NDdmLi45MDg5NGUzZWQy
Y2U3OTRkNDZmOWYyMmVhYmNkZTVjNjM0ZTY2MzVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRTdHJpbmdzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRTdHJpbmdzLmNwcApAQCAtNzQsNyArNzQsNyBAQCBT
dHJpbmcgdmFsdWVUb0J5dGVTdHJpbmcoSlNHbG9iYWxPYmplY3QmIGxleGljYWxHbG9iYWxPYmpl
Y3QsIEpTVmFsdWUgdmFsdWUpCiAgICAgcmV0dXJuIHN0cmluZ1RvQnl0ZVN0cmluZyhsZXhpY2Fs
R2xvYmFsT2JqZWN0LCBzY29wZSwgV1RGTW92ZShzdHJpbmcpKTsKIH0KIAotc3RhdGljIGlubGlu
ZSBTdHJpbmcgc3RyaW5nVG9VU1ZTdHJpbmcoU3RyaW5nJiYgc3RyaW5nKQorU3RyaW5nIHN0cmlu
Z1RvVVNWU3RyaW5nKFN0cmluZyYmIHN0cmluZykKIHsKICAgICAvLyBGYXN0IHBhdGggZm9yIHRo
ZSBjYXNlIHdoZXJlIHRoZXJlIGFyZSBubyB1bnBhaXJlZCBzdXJyb2dhdGVzLgogICAgIGlmICgh
aGFzVW5wYWlyZWRTdXJyb2dhdGUoc3RyaW5nKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTRE9NQ29udmVydFN0cmluZ3MuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRE9NQ29udmVydFN0cmluZ3MuaAppbmRleCAyOWZhNzI1OWFkY2JmYmRlNDRjOTIw
YjM5YjBiOWY5NmMwZTU5YWJiLi41NGFiNmQxMGU3ZGQ0MDQ0NDY1MTc1ZGFiZjg0M2U0ZDRlYjgy
M2YxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRT
dHJpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01Db252ZXJ0U3Ry
aW5ncy5oCkBAIC0zNyw2ICszNyw5IEBAIFdFQkNPUkVfRVhQT1JUIFN0cmluZyB2YWx1ZVRvQnl0
ZVN0cmluZyhKU0M6OkpTR2xvYmFsT2JqZWN0JiwgSlNDOjpKU1ZhbHVlKTsKIFdFQkNPUkVfRVhQ
T1JUIFN0cmluZyBpZGVudGlmaWVyVG9VU1ZTdHJpbmcoSlNDOjpKU0dsb2JhbE9iamVjdCYsIGNv
bnN0IEpTQzo6SWRlbnRpZmllciYpOwogV0VCQ09SRV9FWFBPUlQgU3RyaW5nIHZhbHVlVG9VU1ZT
dHJpbmcoSlNDOjpKU0dsb2JhbE9iamVjdCYsIEpTQzo6SlNWYWx1ZSk7CiAKKy8vIEZJWE1FOiBD
b25zaWRlciByZW5hbWluZyB0aGlzIHRvIHJlcGxhY2VVbnBhaXJlZFN1cnJvZ2F0ZXNXaXRoUmVw
bGFjZW1lbnRDaGFyYWN0ZXIgYW5kIG1vdmluZyB0byBXVEYuCitTdHJpbmcgc3RyaW5nVG9VU1ZT
dHJpbmcoU3RyaW5nJiYpOworCiBpbmxpbmUgU3RyaW5nIHByb3BlcnR5TmFtZVRvU3RyaW5nKEpT
Qzo6UHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKICAgICBBU1NFUlQoIXByb3BlcnR5TmFt
ZS5pc1N5bWJvbCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NT
VG9rZW5pemVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTVG9rZW5pemVyLmNw
cAppbmRleCA2YWQzZGY5M2M5NmQ2ZGM3OGRkYmI1NjUyMDRmM2I3ZWNlYzRiOTE4Li45MDJjNmUy
YzUxZGQ1Zjk4MDI3YWRlZGNjZmIzMjBlMjdkNmIxM2Y3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvcGFyc2VyL0NTU1Rva2VuaXplci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L3BhcnNlci9DU1NUb2tlbml6ZXIuY3BwCkBAIC0xLDUgKzEsNSBAQAogLy8gQ29weXJpZ2h0IDIw
MTUgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0vLyBDb3B5cmln
aHQgKEMpIDIwMTYtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBDb3B5
cmlnaHQgKEMpIDIwMTYtMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAvLwog
Ly8gUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CiAvLyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCkBAIC0zNSwxOCArMzUsMjAgQEAKICNpbmNs
dWRlICJDU1NQYXJzZXJUb2tlblJhbmdlLmgiCiAjaW5jbHVkZSAiQ1NTVG9rZW5pemVySW5wdXRT
dHJlYW0uaCIKICNpbmNsdWRlICJIVE1MUGFyc2VySWRpb21zLmgiCisjaW5jbHVkZSAiSlNET01D
b252ZXJ0U3RyaW5ncy5oIgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4KICNp
bmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdUb0ludGVnZXJDb252ZXJzaW9uLmg+CiAjaW5jbHVkZSA8
d3RmL3VuaWNvZGUvQ2hhcmFjdGVyTmFtZXMuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi0v
LyBTZWU6IGh0dHA6Ly9kZXYudzMub3JnL2Nzc3dnL2Nzcy1zeW50YXgvI2lucHV0LXByZXByb2Nl
c3NpbmcKKy8vIGh0dHBzOi8vZHJhZnRzLmNzc3dnLm9yZy9jc3Mtc3ludGF4LyNpbnB1dC1wcmVw
cm9jZXNzaW5nCiBzdGF0aWMgU3RyaW5nIHByZXByb2Nlc3NTdHJpbmcoU3RyaW5nIHN0cmluZykK
IHsKLSAgICAvLyBBY2NvcmRpbmcgdG8gdGhlIHNwZWNpZmljYXRpb24sIHdlIHNob3VsZCByZXBs
YWNlICdccicgYW5kICdcZicgd2l0aCAnXG4nIGJ1dCB3ZSBkbyBub3QgbmVlZCB0bwotICAgIC8v
IGJlY2F1c2Ugb3VyIENTU1Rva2VuaXplciB0cmVhdHMgYWxsIG9mIHRoZW0gYXMgbmV3IGxpbmVz
LgotICAgIHJldHVybiBzdHJpbmcucmVwbGFjZSgnXDAnLCByZXBsYWNlbWVudENoYXJhY3Rlcik7
CisgICAgLy8gV2UgZG9uJ3QgcmVwbGFjZSAnXHInIGFuZCAnXGYnIHdpdGggJ1xuJyBhcyB0aGUg
c3BlY2lmaWNhdGlvbiBzdWdnZXN0cywgaW5zdGVhZAorICAgIC8vIHdlIHRyZWF0IHRoZW0gYWxs
IHRoZSBzYW1lIGluIHRoZSBpc05ld0xpbmUgZnVuY3Rpb24gYmVsb3cuCisgICAgc3RyaW5nLnJl
cGxhY2UoJ1wwJywgcmVwbGFjZW1lbnRDaGFyYWN0ZXIpOworICAgIHJldHVybiBzdHJpbmdUb1VT
VlN0cmluZyhXVEZNb3ZlKHN0cmluZykpOwogfQogCiBzdGQ6OnVuaXF1ZV9wdHI8Q1NTVG9rZW5p
emVyPiBDU1NUb2tlbml6ZXI6OnRyeUNyZWF0ZShjb25zdCBTdHJpbmcmIHN0cmluZykKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDM5M2QxMjRlZGI5ZjNkZjIzMGFkZTc5NzY4OWI0
YTI2Nzc2NTVhYmEuLmNjZTc5MTQ0MzY4M2I4YmQ4MDJhMDBhNmZkMDQ3NWIzOTUwZTdjM2QgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIxLTA2LTI0
ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBDU1MgcGFyc2VyIGRv
ZXMgbm90IGhhbmRsZSB1bnBhaXJlZCBzdXJyb2dhdGVzIGNvcnJlY3RseQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3MzU3CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy1zeW50YXgvaW5wdXQtcHJlcHJvY2Vzc2luZy1leHBlY3RlZC50eHQ6CisgICAgICAg
IEV4cGVjdCB0ZXN0cyB0byBwYXNzIGluc3RlYWQgb2YgZmFpbC4KKwogMjAyMS0wNi0yNCAgQ2hy
aXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIChyMjc5MjExKSBpbnRyb2R1
Y2VkIDQgZmFpbGluZyB3ZWItcGxhdGZvcm0tdGVzdHMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1zeW50YXgvaW5wdXQtcHJl
cHJvY2Vzc2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3Mtc3ludGF4L2lucHV0LXByZXByb2Nlc3NpbmctZXhwZWN0ZWQu
dHh0CmluZGV4IGYwZTNhZTI2YmEyMzFhZDEwMDgzYzU1ZTcyNzZiNmUwYTY0YTA0MjAuLmVjNDk0
ZjU4NmVjMTE4NDdmZWEwNDJkODJmODliN2U2MjJhODRlZTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1zeW50YXgvaW5wdXQt
cHJlcHJvY2Vzc2luZy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXN5bnRheC9pbnB1dC1wcmVwcm9jZXNzaW5nLWV4
cGVjdGVkLnR4dApAQCAtNCw5ICs0LDkgQEAgUEFTUyAiZlwwb28iIGJlY29tZXMgImbvv71vbyIK
IFBBU1MgIlwwZm9vIiBiZWNvbWVzICLvv71mb28iCiBQQVNTICJcMCIgYmVjb21lcyAi77+9Igog
UEFTUyAiXDBcMFwwIiBiZWNvbWVzICLvv73vv73vv70iCi1GQUlMICJmb29VK2Q4MDAiIGJlY29t
ZXMgImZvb++/vSIgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgImZvb1x1ZmZmZCIgYnV0IGdvdCAi
Zm9vVStkODAwIgotRkFJTCAiZlUrZDgwMG9vIiBiZWNvbWVzICJm77+9b28iIGFzc2VydF9lcXVh
bHM6IGV4cGVjdGVkICJmXHVmZmZkb28iIGJ1dCBnb3QgImZVK2Q4MDBvbyIKLUZBSUwgIlUrZDgw
MGZvbyIgYmVjb21lcyAi77+9Zm9vIiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiXHVmZmZkZm9v
IiBidXQgZ290ICJVK2Q4MDBmb28iCi1GQUlMICJVK2Q4MDAiIGJlY29tZXMgIu+/vSIgYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgIlx1ZmZmZCIgYnV0IGdvdCAiVStkODAwIgotRkFJTCAiVStkODAw
VStkODAwVStkODAwIiBiZWNvbWVzICLvv73vv73vv70iIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVk
ICJcdWZmZmRcdWZmZmRcdWZmZmQiIGJ1dCBnb3QgIlUrZDgwMFUrZDgwMFUrZDgwMCIKK1BBU1Mg
ImZvb1UrZDgwMCIgYmVjb21lcyAiZm9v77+9IgorUEFTUyAiZlUrZDgwMG9vIiBiZWNvbWVzICJm
77+9b28iCitQQVNTICJVK2Q4MDBmb28iIGJlY29tZXMgIu+/vWZvbyIKK1BBU1MgIlUrZDgwMCIg
YmVjb21lcyAi77+9IgorUEFTUyAiVStkODAwVStkODAwVStkODAwIiBiZWNvbWVzICLvv73vv73v
v70iCiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>