<?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>249649</bug_id>
          
          <creation_ts>2022-12-20 07:09:58 -0800</creation_ts>
          <short_desc>[IFC][hanging punctuation] Line&apos;s trailing hanging content is either preserved whitespace or punctuation</short_desc>
          <delta_ts>2022-12-20 13:05:19 -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>Layout and Rendering</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="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>koivisto</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1920775</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2022-12-20 07:09:58 -0800</bug_when>
    <thetext>ssia</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1920779</commentid>
    <comment_count>1</comment_count>
      <attachid>464120</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-12-20 07:29:20 -0800</bug_when>
    <thetext>Created attachment 464120
[fast-cq]Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1920880</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-12-20 13:04:50 -0800</bug_when>
    <thetext>Committed 258159@main (4d0e3a44df3b): &lt;https://commits.webkit.org/258159@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 464120.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1920881</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-12-20 13:05:19 -0800</bug_when>
    <thetext>&lt;rdar://problem/103568099&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>464120</attachid>
            <date>2022-12-20 07:29:20 -0800</date>
            <delta_ts>2022-12-20 13:04:52 -0800</delta_ts>
            <desc>[fast-cq]Patch</desc>
            <filename>bug-249649-20221220072919.patch</filename>
            <type>text/plain</type>
            <size>13664</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSA1MDgzZGU3NjI4ZmUzZWJiZjJhNzdiMTRiZjRkMGNlODhlZjNiYzQwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IFR1ZSwgMjAgRGVjIDIwMjIgMDc6MjI6MDUgLTA4MDAKU3ViamVjdDogW1BBVENIXSBbSUZDXVto
YW5naW5nIHB1bmN0dWF0aW9uXSBMaW5lJ3MgdHJhaWxpbmcgaGFuZ2luZyBjb250ZW50IGlzCiBl
aXRoZXIgcHJlc2VydmVkIHdoaXRlc3BhY2Ugb3IgcHVuY3R1YXRpb24KIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNDk2NDkKClJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgoKVGhlIGhhbmdpbmcgY29udGVudCBjb3VsZCBiZQotIGxlYWRpbmcgcHVuY3R1YXRpb24g
KGF0IHRoZSBmcm9udCBvZiB0aGUgZmlyc3QgZm9ybWF0dGVkIGxpbmUpCi0gdHJhaWxpbmcgcHVu
Y3R1YXRpb24gKGF0IHRoZSBlbmQgb2YgdGhlIGxhc3QgZm9ybWF0dGVkIGxpbmUpCiAgb3IgcHJl
c2VydmVkIHdoaXRlc3BhY2UgKGFuZCB0aGUgZW5kIG9mIGVhY2ggbGluZSkKClRoaXMgcGF0Y2gg
ZW5zdXJlcyB0aGF0IExpbmU6OkhhbmdpbmdDb250ZW50IHJlZmxlY3RzIF5eLiBJdCBhbHNvIGNv
bXB1dGVzIHRyYWlsaW5nIGhhbmdpbmcgcHVuY3R1YXRpb24gd2hlbiBhcHBsaWNhYmxlLgoKKiBT
b3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMaW5l
LmNwcDoKKFdlYkNvcmU6OkxheW91dDo6TGluZTo6cmVzZXRUcmFpbGluZ0NvbnRlbnQpOgooV2Vi
Q29yZTo6TGF5b3V0OjpMaW5lOjpyZW1vdmVIYW5naW5nR2x5cGhzKToKKFdlYkNvcmU6OkxheW91
dDo6TGluZTo6YXBwZW5kSW5saW5lQm94U3RhcnQpOgooV2ViQ29yZTo6TGF5b3V0OjpMaW5lOjph
cHBlbmRJbmxpbmVCb3hFbmQpOgooV2ViQ29yZTo6TGF5b3V0OjpMaW5lOjphcHBlbmRUZXh0Q29u
dGVudCk6CihXZWJDb3JlOjpMYXlvdXQ6OkxpbmU6OkhhbmdpbmdDb250ZW50OjphZGRMZWFkaW5n
R2x5cGhzKTogRGVsZXRlZC4KKFdlYkNvcmU6OkxheW91dDo6TGluZTo6SGFuZ2luZ0NvbnRlbnQ6
OmFkZFRyYWlsaW5nR2x5cGhzKTogRGVsZXRlZC4KKiBTb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9y
bWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMaW5lLmg6CihXZWJDb3JlOjpMYXlvdXQ6Okxp
bmU6OmhhbmdpbmdUcmFpbGluZ1doaXRlc3BhY2VXaWR0aCBjb25zdCk6CihXZWJDb3JlOjpMYXlv
dXQ6OkxpbmU6OmhhbmdpbmdUcmFpbGluZ0NvbnRlbnRXaWR0aCBjb25zdCk6CihXZWJDb3JlOjpM
YXlvdXQ6OkxpbmU6OkhhbmdpbmdDb250ZW50OjpzZXRMZWFkaW5nUHVuY3R1YXRpb24pOgooV2Vi
Q29yZTo6TGF5b3V0OjpMaW5lOjpIYW5naW5nQ29udGVudDo6cmVzZXRUcmFpbGluZ0NvbnRlbnQp
OgooV2ViQ29yZTo6TGF5b3V0OjpMaW5lOjpIYW5naW5nQ29udGVudDo6dHJhaWxpbmdXaGl0ZXNw
YWNlV2lkdGggY29uc3QpOgooV2ViQ29yZTo6TGF5b3V0OjpMaW5lOjpIYW5naW5nQ29udGVudDo6
dHJhaWxpbmdXaWR0aCBjb25zdCk6CihXZWJDb3JlOjpMYXlvdXQ6OkxpbmU6OkhhbmdpbmdDb250
ZW50Ojp3aWR0aCBjb25zdCk6CihXZWJDb3JlOjpMYXlvdXQ6OkxpbmU6OkhhbmdpbmdDb250ZW50
OjpzZXRUcmFpbGluZ1B1bmN0dWF0aW9uKToKKFdlYkNvcmU6OkxheW91dDo6TGluZTo6SGFuZ2lu
Z0NvbnRlbnQ6OnNldFRyYWlsaW5nV2hpdGVzcGFjZSk6CihXZWJDb3JlOjpMYXlvdXQ6OkxpbmU6
OkhhbmdpbmdDb250ZW50OjpsZW5ndGggY29uc3QpOgooV2ViQ29yZTo6TGF5b3V0OjpMaW5lOjpI
YW5naW5nQ29udGVudDo6cmVzZXRUcmFpbGluZ1B1bmN0dWF0aW9uKToKKFdlYkNvcmU6OkxheW91
dDo6TGluZTo6aGFuZ2luZ0xlYWRpbmdDb250ZW50V2lkdGggY29uc3QpOiBEZWxldGVkLgooV2Vi
Q29yZTo6TGF5b3V0OjpMaW5lOjpIYW5naW5nQ29udGVudDo6bGVhZGluZ0xlbmd0aCBjb25zdCk6
IERlbGV0ZWQuCihXZWJDb3JlOjpMYXlvdXQ6OkxpbmU6OkhhbmdpbmdDb250ZW50Ojp0cmFpbGlu
Z0xlbmd0aCBjb25zdCk6IERlbGV0ZWQuCihXZWJDb3JlOjpMYXlvdXQ6OkxpbmU6OkhhbmdpbmdD
b250ZW50OjpsZWFkaW5nV2lkdGggY29uc3QpOiBEZWxldGVkLgooV2ViQ29yZTo6TGF5b3V0OjpM
aW5lOjpIYW5naW5nQ29udGVudDo6cmVzZXQpOiBEZWxldGVkLgooV2ViQ29yZTo6TGF5b3V0OjpM
aW5lOjpIYW5naW5nQ29udGVudDo6cmVzZXRUcmFpbGluZ0dseXBocyk6IERlbGV0ZWQuCiogU291
cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGluZUJ1
aWxkZXIuY3BwOgooV2ViQ29yZTo6TGF5b3V0Ojp0cmltbWFibGVUcmFpbGluZ0NvbnRlbnRXaWR0
aCk6Ci0tLQogLi4uL2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGluZS5jcHAgIHwg
NDMgKysrKystLS0tLS0tLQogLi4uL2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGlu
ZS5oICAgIHwgNjQgKysrKysrKysrKysrLS0tLS0tLQogLi4uL2lubGluZS9JbmxpbmVMaW5lQnVp
bGRlci5jcHAgICAgICAgICAgICAgIHwgIDQgKy0KIDMgZmlsZXMgY2hhbmdlZCwgNTkgaW5zZXJ0
aW9ucygrKSwgNTIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5
b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGluZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMaW5lLmNwcAppbmRl
eCA2NjVmZjIyZTllNTguLjZkMGRjMjQ0NTdlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGluZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGluZS5j
cHAKQEAgLTg1LDcgKzg1LDcgQEAgdm9pZCBMaW5lOjppbml0aWFsaXplKGNvbnN0IFZlY3RvcjxJ
bmxpbmVJdGVtPiYgbGluZVNwYW5uaW5nSW5saW5lQm94ZXMsIGJvb2wgaXMKIHZvaWQgTGluZTo6
cmVzZXRUcmFpbGluZ0NvbnRlbnQoKQogewogICAgIG1fdHJpbW1hYmxlVHJhaWxpbmdDb250ZW50
LnJlc2V0KCk7Ci0gICAgbV9oYW5naW5nQ29udGVudC5yZXNldFRyYWlsaW5nR2x5cGhzKCk7Cisg
ICAgbV9oYW5naW5nQ29udGVudC5yZXNldFRyYWlsaW5nQ29udGVudCgpOwogICAgIG1fdHJhaWxp
bmdTb2Z0SHlwaGVuV2lkdGggPSB7IH07CiB9CiAKQEAgLTI1Nyw3ICsyNTcsNyBAQCB2b2lkIExp
bmU6OnJlbW92ZUhhbmdpbmdHbHlwaHMoKQogewogICAgIEFTU0VSVChtX3RyaW1tYWJsZVRyYWls
aW5nQ29udGVudC5pc0VtcHR5KCkpOwogICAgIG1fY29udGVudExvZ2ljYWxXaWR0aCAtPSBtX2hh
bmdpbmdDb250ZW50LndpZHRoKCk7Ci0gICAgbV9oYW5naW5nQ29udGVudC5yZXNldCgpOworICAg
IG1faGFuZ2luZ0NvbnRlbnQucmVzZXRUcmFpbGluZ0NvbnRlbnQoKTsKIH0KIAogdm9pZCBMaW5l
OjpyZXNldEJpZGlMZXZlbEZvclRyYWlsaW5nV2hpdGVzcGFjZShVQmlEaUxldmVsIHJvb3RCaWRp
TGV2ZWwpCkBAIC0zMzEsNyArMzMxLDcgQEAgdm9pZCBMaW5lOjphcHBlbmRJbmxpbmVCb3hTdGFy
dChjb25zdCBJbmxpbmVJdGVtJiBpbmxpbmVJdGVtLCBjb25zdCBSZW5kZXJTdHlsZSYKIHsKICAg
ICBhdXRvJiBpbmxpbmVCb3hHZW9tZXRyeSA9IGZvcm1hdHRpbmdDb250ZXh0KCkuZ2VvbWV0cnlG
b3JCb3goaW5saW5lSXRlbS5sYXlvdXRCb3goKSk7CiAgICAgaWYgKGlubGluZUJveEdlb21ldHJ5
Lm1hcmdpbkJvcmRlckFuZFBhZGRpbmdTdGFydCgpKQotICAgICAgICBtX2hhbmdpbmdDb250ZW50
LnJlc2V0VHJhaWxpbmdHbHlwaHMoKTsKKyAgICAgICAgbV9oYW5naW5nQ29udGVudC5yZXNldFRy
YWlsaW5nQ29udGVudCgpOwogICAgIC8vIFRoaXMgaXMgcmVhbGx5IGp1c3QgYSBwbGFjZWhvbGRl
ciB0byBtYXJrIHRoZSBzdGFydCBvZiB0aGUgaW5saW5lIGJveCA8c3Bhbj4uCiAgICAgKyttX25v
blNwYW5uaW5nSW5saW5lTGV2ZWxCb3hDb3VudDsKICAgICBhdXRvIGxvZ2ljYWxMZWZ0ID0gbGFz
dFJ1bkxvZ2ljYWxSaWdodCgpOwpAQCAtMzUyLDcgKzM1Miw3IEBAIHZvaWQgTGluZTo6YXBwZW5k
SW5saW5lQm94U3RhcnQoY29uc3QgSW5saW5lSXRlbSYgaW5saW5lSXRlbSwgY29uc3QgUmVuZGVy
U3R5bGUmCiB2b2lkIExpbmU6OmFwcGVuZElubGluZUJveEVuZChjb25zdCBJbmxpbmVJdGVtJiBp
bmxpbmVJdGVtLCBjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUsIElubGluZUxheW91dFVuaXQgbG9n
aWNhbFdpZHRoKQogewogICAgIGlmIChmb3JtYXR0aW5nQ29udGV4dCgpLmdlb21ldHJ5Rm9yQm94
KGlubGluZUl0ZW0ubGF5b3V0Qm94KCkpLm1hcmdpbkJvcmRlckFuZFBhZGRpbmdFbmQoKSkKLSAg
ICAgICAgbV9oYW5naW5nQ29udGVudC5yZXNldFRyYWlsaW5nR2x5cGhzKCk7CisgICAgICAgIG1f
aGFuZ2luZ0NvbnRlbnQucmVzZXRUcmFpbGluZ0NvbnRlbnQoKTsKICAgICAvLyBUaGlzIGlzIHJl
YWxseSBqdXN0IGEgcGxhY2Vob2xkZXIgdG8gbWFyayB0aGUgZW5kIG9mIHRoZSBpbmxpbmUgYm94
IDwvc3Bhbj4uCiAgICAgYXV0byByZW1vdmVUcmFpbGluZ0xldHRlclNwYWNpbmcgPSBbJl0gewog
ICAgICAgICBpZiAoIW1fdHJpbW1hYmxlVHJhaWxpbmdDb250ZW50LmlzVHJhaWxpbmdSdW5QYXJ0
aWFsbHlUcmltbWFibGUoKSkKQEAgLTQ3OCwyMiArNDc4LDI3IEBAIHZvaWQgTGluZTo6YXBwZW5k
VGV4dENvbnRlbnQoY29uc3QgSW5saW5lVGV4dEl0ZW0mIGlubGluZVRleHRJdGVtLCBjb25zdCBS
ZW5kZXJTCiAgICAgYXV0byBpc1RyaW1tYWJsZSA9IHVwZGF0ZVRyaW1tYWJsZVN0YXR1cygpOwog
CiAgICAgYXV0byB1cGRhdGVIYW5naW5nU3RhdHVzID0gWyZdIHsKLSAgICAgICAgaWYgKGlubGlu
ZVRleHRJdGVtLmlzV2hpdGVzcGFjZSgpICYmICFpc1RyaW1tYWJsZSAmJiBtX3J1bnNbbGFzdFJ1
bkluZGV4XS5zaG91bGRUcmFpbGluZ1doaXRlc3BhY2VIYW5nKCkpIHsKLSAgICAgICAgICAgIC8v
IEhhbmdpbmcgdHJhaWxpbmcgd2hpdGVzcGFjZS4KLSAgICAgICAgICAgIG1faGFuZ2luZ0NvbnRl
bnQuYWRkVHJhaWxpbmdHbHlwaHMoaW5saW5lVGV4dEl0ZW0ubGVuZ3RoKCksIGxvZ2ljYWxXaWR0
aCk7CisgICAgICAgIGlmIChydW5IYXNIYW5nYWJsZVB1bmN0dWF0aW9uU3RhcnQpCisgICAgICAg
ICAgICBtX2hhbmdpbmdDb250ZW50LnNldExlYWRpbmdQdW5jdHVhdGlvbihUZXh0VXRpbDo6aGFu
Z2FibGVQdW5jdHVhdGlvblN0YXJ0V2lkdGgoaW5saW5lVGV4dEl0ZW0sIHN0eWxlKSk7CisKKyAg
ICAgICAgYXV0byBydW5IYXNIYW5nYWJsZVdoaXRlc3BhY2VFbmQgPSBpbmxpbmVUZXh0SXRlbS5p
c1doaXRlc3BhY2UoKSAmJiAhaXNUcmltbWFibGUgJiYgbV9ydW5zW2xhc3RSdW5JbmRleF0uc2hv
dWxkVHJhaWxpbmdXaGl0ZXNwYWNlSGFuZygpOworICAgICAgICBhdXRvIHJ1bkhhc0hhbmdhYmxl
UHVuY3R1YXRpb25FbmQgPSBUZXh0VXRpbDo6aGFzSGFuZ2FibGVQdW5jdHVhdGlvbkVuZChpbmxp
bmVUZXh0SXRlbSwgc3R5bGUpOworICAgICAgICBpZiAocnVuSGFzSGFuZ2FibGVXaGl0ZXNwYWNl
RW5kKSB7CisgICAgICAgICAgICBBU1NFUlQoIXJ1bkhhc0hhbmdhYmxlUHVuY3R1YXRpb25FbmQp
OworICAgICAgICAgICAgbV9oYW5naW5nQ29udGVudC5zZXRUcmFpbGluZ1doaXRlc3BhY2UoaW5s
aW5lVGV4dEl0ZW0ubGVuZ3RoKCksIGxvZ2ljYWxXaWR0aCk7CiAgICAgICAgICAgICByZXR1cm47
CiAgICAgICAgIH0KLSAgICAgICAgaWYgKHJ1bkhhc0hhbmdhYmxlUHVuY3R1YXRpb25TdGFydCkg
ewotICAgICAgICAgICAgbV9oYW5naW5nQ29udGVudC5hZGRMZWFkaW5nR2x5cGhzKDEsIFRleHRV
dGlsOjpoYW5nYWJsZVB1bmN0dWF0aW9uU3RhcnRXaWR0aChpbmxpbmVUZXh0SXRlbSwgc3R5bGUp
KTsKKyAgICAgICAgaWYgKHJ1bkhhc0hhbmdhYmxlUHVuY3R1YXRpb25FbmQpIHsKKyAgICAgICAg
ICAgIEFTU0VSVCghcnVuSGFzSGFuZ2FibGVXaGl0ZXNwYWNlRW5kKTsKKyAgICAgICAgICAgIG1f
aGFuZ2luZ0NvbnRlbnQuc2V0VHJhaWxpbmdQdW5jdHVhdGlvbihUZXh0VXRpbDo6aGFuZ2FibGVQ
dW5jdHVhdGlvbkVuZFdpZHRoKGlubGluZVRleHRJdGVtLCBzdHlsZSkpOwogICAgICAgICAgICAg
cmV0dXJuOwogICAgICAgICB9Ci0gICAgICAgIG1faGFuZ2luZ0NvbnRlbnQucmVzZXRUcmFpbGlu
Z0dseXBocygpOworICAgICAgICBtX2hhbmdpbmdDb250ZW50LnJlc2V0VHJhaWxpbmdDb250ZW50
KCk7CiAgICAgfTsKICAgICB1cGRhdGVIYW5naW5nU3RhdHVzKCk7CiAKICAgICBpZiAoaW5saW5l
VGV4dEl0ZW0uaGFzVHJhaWxpbmdTb2Z0SHlwaGVuKCkpCiAgICAgICAgIG1fdHJhaWxpbmdTb2Z0
SHlwaGVuV2lkdGggPSBzdHlsZS5mb250Q2FzY2FkZSgpLndpZHRoKFRleHRSdW4geyBTdHJpbmdW
aWV3IHsgc3R5bGUuaHlwaGVuU3RyaW5nKCkgfSB9KTsKLQogfQogCiB2b2lkIExpbmU6OmFwcGVu
ZE5vblJlcGxhY2VkSW5saW5lTGV2ZWxCb3goY29uc3QgSW5saW5lSXRlbSYgaW5saW5lSXRlbSwg
Y29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlLCBJbmxpbmVMYXlvdXRVbml0IG1hcmdpbkJveExvZ2lj
YWxXaWR0aCkKQEAgLTY2NywyMiArNjcyLDYgQEAgSW5saW5lTGF5b3V0VW5pdCBMaW5lOjpUcmlt
bWFibGVUcmFpbGluZ0NvbnRlbnQ6OnJlbW92ZVBhcnRpYWxseVRyaW1tYWJsZUNvbnRlbnQKICAg
ICByZXR1cm4gcmVtb3ZlKCk7CiB9CiAKLXZvaWQgTGluZTo6SGFuZ2luZ0NvbnRlbnQ6OmFkZExl
YWRpbmdHbHlwaHMoc2l6ZV90IGxlbmd0aCwgSW5saW5lTGF5b3V0VW5pdCBsb2dpY2FsV2lkdGgp
Ci17Ci0gICAgLy8gSGFuZ2luZyBwdW5jdHVhdGlvbi4KLSAgICBtX2xlYWRpbmdMZW5ndGggKz0g
bGVuZ3RoOwotICAgIG1fbGVhZGluZ1dpZHRoICs9IGxvZ2ljYWxXaWR0aDsKLX0KLQotdm9pZCBM
aW5lOjpIYW5naW5nQ29udGVudDo6YWRkVHJhaWxpbmdHbHlwaHMoc2l6ZV90IGxlbmd0aCwgSW5s
aW5lTGF5b3V0VW5pdCBsb2dpY2FsV2lkdGgpCi17Ci0gICAgLy8gV2hlbiBhIGdseXBoIGF0IHRo
ZSBzdGFydCBvciBlbmQgZWRnZSBvZiBhIGxpbmUgaGFuZ3MsIGl0IGlzIG5vdCBjb25zaWRlcmVk
IHdoZW4gbWVhc3VyaW5nIHRoZSBsaW5l4oCZcyBjb250ZW50cyBmb3IgZml0LCBhbGlnbm1lbnQs
IG9yIGp1c3RpZmljYXRpb24uCi0gICAgLy8gRGVwZW5kaW5nIG9uIHRoZSBsaW5l4oCZcyBhbGln
bm1lbnQvanVzdGlmaWNhdGlvbiwgdGhpcyBjYW4gcmVzdWx0IGluIHRoZSBtYXJrIGJlaW5nIHBs
YWNlZCBvdXRzaWRlIHRoZSBsaW5lIGJveC4KLSAgICAvLyBodHRwczovL2RyYWZ0cy5jc3N3Zy5v
cmcvY3NzLXRleHQtMy8jaGFuZ2luZwotICAgIG1fdHJhaWxpbmdMZW5ndGggKz0gbGVuZ3RoOwot
ICAgIG1fdHJhaWxpbmdXaWR0aCArPSBsb2dpY2FsV2lkdGg7Ci19Ci0KIGlubGluZSBzdGF0aWMg
TGluZTo6UnVuOjpUeXBlIHRvTGluZVJ1blR5cGUoY29uc3QgSW5saW5lSXRlbSYgaW5saW5lSXRl
bSkKIHsKICAgICBzd2l0Y2ggKGlubGluZUl0ZW0udHlwZSgpKSB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMaW5lLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVM
aW5lLmgKaW5kZXggNzFmZGUzZjFiZDkxLi4zMzYyOTkyZmE2YzAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmUuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9Jbmxp
bmVMaW5lLmgKQEAgLTU3LDggKzU3LDggQEAgcHVibGljOgogICAgIElubGluZUxheW91dFVuaXQg
dHJpbW1hYmxlVHJhaWxpbmdXaWR0aCgpIGNvbnN0IHsgcmV0dXJuIG1fdHJpbW1hYmxlVHJhaWxp
bmdDb250ZW50LndpZHRoKCk7IH0KICAgICBib29sIGlzVHJhaWxpbmdSdW5GdWxseVRyaW1tYWJs
ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdHJpbW1hYmxlVHJhaWxpbmdDb250ZW50LmlzVHJhaWxpbmdS
dW5GdWxseVRyaW1tYWJsZSgpOyB9CiAKKyAgICBJbmxpbmVMYXlvdXRVbml0IGhhbmdpbmdUcmFp
bGluZ1doaXRlc3BhY2VXaWR0aCgpIGNvbnN0IHsgcmV0dXJuIG1faGFuZ2luZ0NvbnRlbnQudHJh
aWxpbmdXaGl0ZXNwYWNlV2lkdGgoKTsgfQogICAgIElubGluZUxheW91dFVuaXQgaGFuZ2luZ1Ry
YWlsaW5nQ29udGVudFdpZHRoKCkgY29uc3QgeyByZXR1cm4gbV9oYW5naW5nQ29udGVudC50cmFp
bGluZ1dpZHRoKCk7IH0KLSAgICBJbmxpbmVMYXlvdXRVbml0IGhhbmdpbmdMZWFkaW5nQ29udGVu
dFdpZHRoKCkgY29uc3QgeyByZXR1cm4gbV9oYW5naW5nQ29udGVudC5sZWFkaW5nV2lkdGgoKTsg
fQogCiAgICAgc3RkOjpvcHRpb25hbDxJbmxpbmVMYXlvdXRVbml0PiB0cmFpbGluZ1NvZnRIeXBo
ZW5XaWR0aCgpIGNvbnN0IHsgcmV0dXJuIG1fdHJhaWxpbmdTb2Z0SHlwaGVuV2lkdGg7IH0KICAg
ICB2b2lkIGFkZFRyYWlsaW5nSHlwaGVuKElubGluZUxheW91dFVuaXQgaHlwaGVuTG9naWNhbFdp
ZHRoKTsKQEAgLTIzNywyNSArMjM3LDI5IEBAIHByaXZhdGU6CiAgICAgfTsKIAogICAgIHN0cnVj
dCBIYW5naW5nQ29udGVudCB7Ci0gICAgICAgIHZvaWQgYWRkTGVhZGluZ0dseXBocyhzaXplX3Qg
bGVuZ3RoLCBJbmxpbmVMYXlvdXRVbml0IGxvZ2ljYWxXaWR0aCk7Ci0gICAgICAgIHZvaWQgYWRk
VHJhaWxpbmdHbHlwaHMoc2l6ZV90IGxlbmd0aCwgSW5saW5lTGF5b3V0VW5pdCBsb2dpY2FsV2lk
dGgpOworICAgICAgICB2b2lkIHNldExlYWRpbmdQdW5jdHVhdGlvbihJbmxpbmVMYXlvdXRVbml0
IGxvZ2ljYWxXaWR0aCkgeyBtX2xlYWRpbmdQdW5jdHVhdGlvbldpZHRoID0gbG9naWNhbFdpZHRo
OyB9CisgICAgICAgIHZvaWQgc2V0VHJhaWxpbmdQdW5jdHVhdGlvbihJbmxpbmVMYXlvdXRVbml0
IGxvZ2ljYWxXaWR0aCk7CisgICAgICAgIHZvaWQgc2V0VHJhaWxpbmdXaGl0ZXNwYWNlKHNpemVf
dCBsZW5ndGgsIElubGluZUxheW91dFVuaXQgbG9naWNhbFdpZHRoKTsKIAotICAgICAgICB2b2lk
IHJlc2V0KCk7Ci0gICAgICAgIHZvaWQgcmVzZXRUcmFpbGluZ0dseXBocygpOworICAgICAgICB2
b2lkIHJlc2V0VHJhaWxpbmdDb250ZW50KCkgeyBtX3RyYWlsaW5nQ29udGVudCA9IHsgfTsgfQor
ICAgICAgICB2b2lkIHJlc2V0VHJhaWxpbmdQdW5jdHVhdGlvbigpOwogCi0gICAgICAgIHNpemVf
dCBsZWFkaW5nTGVuZ3RoKCkgY29uc3QgeyByZXR1cm4gbV9sZWFkaW5nTGVuZ3RoOyB9Ci0gICAg
ICAgIHNpemVfdCB0cmFpbGluZ0xlbmd0aCgpIGNvbnN0IHsgcmV0dXJuIG1fdHJhaWxpbmdMZW5n
dGg7IH0KLSAgICAgICAgc2l6ZV90IGxlbmd0aCgpIGNvbnN0IHsgcmV0dXJuIGxlYWRpbmdMZW5n
dGgoKSArIHRyYWlsaW5nTGVuZ3RoKCk7IH0KKyAgICAgICAgSW5saW5lTGF5b3V0VW5pdCB0cmFp
bGluZ1doaXRlc3BhY2VXaWR0aCgpIGNvbnN0IHsgcmV0dXJuIG1fdHJhaWxpbmdDb250ZW50ICYm
IG1fdHJhaWxpbmdDb250ZW50LT50eXBlID09IFRyYWlsaW5nQ29udGVudDo6VHlwZTo6V2hpdGVz
cGFjZSA/IG1fdHJhaWxpbmdDb250ZW50LT53aWR0aCA6IDAuZjsgfQorICAgICAgICBJbmxpbmVM
YXlvdXRVbml0IHRyYWlsaW5nV2lkdGgoKSBjb25zdCB7IHJldHVybiBtX3RyYWlsaW5nQ29udGVu
dCA/IG1fdHJhaWxpbmdDb250ZW50LT53aWR0aCA6IDAuZjsgfQorICAgICAgICBJbmxpbmVMYXlv
dXRVbml0IHdpZHRoKCkgY29uc3QgeyByZXR1cm4gbV9sZWFkaW5nUHVuY3R1YXRpb25XaWR0aCAr
IHRyYWlsaW5nV2lkdGgoKTsgfQogCi0gICAgICAgIElubGluZUxheW91dFVuaXQgbGVhZGluZ1dp
ZHRoKCkgY29uc3QgeyByZXR1cm4gbV9sZWFkaW5nV2lkdGg7IH0KLSAgICAgICAgSW5saW5lTGF5
b3V0VW5pdCB0cmFpbGluZ1dpZHRoKCkgY29uc3QgeyByZXR1cm4gbV90cmFpbGluZ1dpZHRoOyB9
Ci0gICAgICAgIElubGluZUxheW91dFVuaXQgd2lkdGgoKSBjb25zdCB7IHJldHVybiBsZWFkaW5n
V2lkdGgoKSArIHRyYWlsaW5nV2lkdGgoKTsgfQorICAgICAgICBzaXplX3QgbGVuZ3RoKCkgY29u
c3Q7CiAKICAgICBwcml2YXRlOgotICAgICAgICBzaXplX3QgbV9sZWFkaW5nTGVuZ3RoIHsgMCB9
OwotICAgICAgICBzaXplX3QgbV90cmFpbGluZ0xlbmd0aCB7IDAgfTsKLSAgICAgICAgSW5saW5l
TGF5b3V0VW5pdCBtX2xlYWRpbmdXaWR0aCB7IDAgfTsKLSAgICAgICAgSW5saW5lTGF5b3V0VW5p
dCBtX3RyYWlsaW5nV2lkdGggeyAwIH07CisgICAgICAgIElubGluZUxheW91dFVuaXQgbV9sZWFk
aW5nUHVuY3R1YXRpb25XaWR0aCB7IDAuZiB9OworICAgICAgICAvLyBUaGVyZSdzIGVpdGhlciBh
IHdoaXRlc3BhY2Ugb3IgcHVuY3R1YXRpb24gdHJhaWxpbmcgY29udGVudC4KKyAgICAgICAgc3Ry
dWN0IFRyYWlsaW5nQ29udGVudCB7CisgICAgICAgICAgICBlbnVtIGNsYXNzIFR5cGUgOiB1aW50
OF90IHsgV2hpdGVzcGFjZSwgUHVuY3R1YXRpb24gfTsKKyAgICAgICAgICAgIFR5cGUgdHlwZSB7
IFR5cGU6OldoaXRlc3BhY2UgfTsKKyAgICAgICAgICAgIHNpemVfdCBsZW5ndGggeyAwIH07Cisg
ICAgICAgICAgICBJbmxpbmVMYXlvdXRVbml0IHdpZHRoIHsgMC5mIH07CisgICAgICAgIH07Cisg
ICAgICAgIHN0ZDo6b3B0aW9uYWw8VHJhaWxpbmdDb250ZW50PiBtX3RyYWlsaW5nQ29udGVudCB7
IH07CiAgICAgfTsKIAogICAgIGNvbnN0IElubGluZUZvcm1hdHRpbmdDb250ZXh0JiBtX2lubGlu
ZUZvcm1hdHRpbmdDb250ZXh0OwpAQCAtMjY0LDcgKzI2OCw3IEBAIHByaXZhdGU6CiAgICAgSGFu
Z2luZ0NvbnRlbnQgbV9oYW5naW5nQ29udGVudDsKICAgICBJbmxpbmVMYXlvdXRVbml0IG1fY29u
dGVudExvZ2ljYWxXaWR0aCB7IDAgfTsKICAgICBzaXplX3QgbV9ub25TcGFubmluZ0lubGluZUxl
dmVsQm94Q291bnQgeyAwIH07Ci0gICAgc3RkOjpvcHRpb25hbDxJbmxpbmVMYXlvdXRVbml0PiBt
X3RyYWlsaW5nU29mdEh5cGhlbldpZHRoIHsgMCB9OworICAgIHN0ZDo6b3B0aW9uYWw8SW5saW5l
TGF5b3V0VW5pdD4gbV90cmFpbGluZ1NvZnRIeXBoZW5XaWR0aCB7IH07CiAgICAgSW5saW5lQm94
TGlzdFdpdGhDbG9uZWREZWNvcmF0aW9uRW5kIG1faW5saW5lQm94TGlzdFdpdGhDbG9uZWREZWNv
cmF0aW9uRW5kOwogICAgIElubGluZUxheW91dFVuaXQgbV9jbG9uZWRFbmREZWNvcmF0aW9uV2lk
dGhGb3JJbmxpbmVCb3hSdW5zIHsgMCB9OwogICAgIGJvb2wgbV9oYXNOb25EZWZhdWx0QmlkaUxl
dmVsUnVuIHsgZmFsc2UgfTsKQEAgLTI5MCwxNyArMjk0LDMxIEBAIGlubGluZSB2b2lkIExpbmU6
OlRyaW1tYWJsZVRyYWlsaW5nQ29udGVudDo6cmVzZXQoKQogICAgIG1fdHJpbW1hYmxlQ29udGVu
dE9mZnNldCA9IHsgfTsKIH0KIAotaW5saW5lIHZvaWQgTGluZTo6SGFuZ2luZ0NvbnRlbnQ6OnJl
c2V0KCkKK2lubGluZSB2b2lkIExpbmU6OkhhbmdpbmdDb250ZW50OjpzZXRUcmFpbGluZ1B1bmN0
dWF0aW9uKElubGluZUxheW91dFVuaXQgbG9naWNhbFdpZHRoKQoreworICAgIG1fdHJhaWxpbmdD
b250ZW50ID0geyBUcmFpbGluZ0NvbnRlbnQ6OlR5cGU6OlB1bmN0dWF0aW9uLCAxLCBsb2dpY2Fs
V2lkdGggfTsKK30KKworaW5saW5lIHZvaWQgTGluZTo6SGFuZ2luZ0NvbnRlbnQ6OnNldFRyYWls
aW5nV2hpdGVzcGFjZShzaXplX3QgbGVuZ3RoLCBJbmxpbmVMYXlvdXRVbml0IGxvZ2ljYWxXaWR0
aCkKK3sKKyAgICBtX3RyYWlsaW5nQ29udGVudCA9IHsgVHJhaWxpbmdDb250ZW50OjpUeXBlOjpX
aGl0ZXNwYWNlLCBsZW5ndGgsIGxvZ2ljYWxXaWR0aCB9OworfQorCitpbmxpbmUgc2l6ZV90IExp
bmU6OkhhbmdpbmdDb250ZW50OjpsZW5ndGgoKSBjb25zdAogewotICAgIG1fbGVhZGluZ0xlbmd0
aCA9IHsgfTsKLSAgICBtX2xlYWRpbmdXaWR0aCA9IHsgfTsKLSAgICByZXNldFRyYWlsaW5nR2x5
cGhzKCk7CisgICAgc2l6ZV90IGxlbmd0aCA9IDA7CisgICAgaWYgKG1fbGVhZGluZ1B1bmN0dWF0
aW9uV2lkdGgpCisgICAgICAgICsrbGVuZ3RoOworICAgIGlmIChtX3RyYWlsaW5nQ29udGVudCkK
KyAgICAgICAgbGVuZ3RoICs9IG1fdHJhaWxpbmdDb250ZW50LT5sZW5ndGg7CisgICAgcmV0dXJu
IGxlbmd0aDsKIH0KIAotaW5saW5lIHZvaWQgTGluZTo6SGFuZ2luZ0NvbnRlbnQ6OnJlc2V0VHJh
aWxpbmdHbHlwaHMoKQoraW5saW5lIHZvaWQgTGluZTo6SGFuZ2luZ0NvbnRlbnQ6OnJlc2V0VHJh
aWxpbmdQdW5jdHVhdGlvbigpCiB7Ci0gICAgbV90cmFpbGluZ0xlbmd0aCA9IHsgfTsKLSAgICBt
X3RyYWlsaW5nV2lkdGggPSB7IH07CisgICAgaWYgKCFtX3RyYWlsaW5nQ29udGVudCB8fCBtX3Ry
YWlsaW5nQ29udGVudC0+dHlwZSA9PSBUcmFpbGluZ0NvbnRlbnQ6OlR5cGU6OldoaXRlc3BhY2Up
CisgICAgICAgIHJldHVybjsKKyAgICBtX3RyYWlsaW5nQ29udGVudCA9IHsgfTsKIH0KIAogaW5s
aW5lIHZvaWQgTGluZTo6UnVuOjpzZXROZWVkc0h5cGhlbihJbmxpbmVMYXlvdXRVbml0IGh5cGhl
bkxvZ2ljYWxXaWR0aCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0
aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVCdWlsZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVCdWlsZGVyLmNwcApp
bmRleCA3MzA0NDkzOWUxNWQuLmU0OTAyYzcwMmRjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGluZUJ1aWxkZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lu
bGluZUxpbmVCdWlsZGVyLmNwcApAQCAtODI3LDEwICs4MjcsMTAgQEAgc3RhdGljIGJvb2wgc2hv
dWxkRGlzYWJsZUh5cGhlbmF0aW9uKGNvbnN0IFJlbmRlclN0eWxlJiByb290U3R5bGUsIHVuc2ln
bmVkIHN1Y2MKIHN0YXRpYyBmbG9hdCB0cmltbWFibGVUcmFpbGluZ0NvbnRlbnRXaWR0aChjb25z
dCBMaW5lJiBsaW5lKQogewogICAgIGlmIChhdXRvIHRyaW1tYWJsZVdpZHRoID0gbGluZS50cmlt
bWFibGVUcmFpbGluZ1dpZHRoKCkpIHsKLSAgICAgICAgQVNTRVJUKCFsaW5lLmhhbmdpbmdUcmFp
bGluZ0NvbnRlbnRXaWR0aCgpKTsKKyAgICAgICAgQVNTRVJUKCFsaW5lLmhhbmdpbmdUcmFpbGlu
Z1doaXRlc3BhY2VXaWR0aCgpKTsKICAgICAgICAgcmV0dXJuIHRyaW1tYWJsZVdpZHRoOwogICAg
IH0KLSAgICByZXR1cm4gbGluZS5oYW5naW5nVHJhaWxpbmdDb250ZW50V2lkdGgoKTsKKyAgICBy
ZXR1cm4gbGluZS5oYW5naW5nVHJhaWxpbmdXaGl0ZXNwYWNlV2lkdGgoKTsKIH0KIAogc3RhdGlj
IGlubGluZSBJbmxpbmVMYXlvdXRVbml0IGF2YWlsYWJsZVdpZHRoKGNvbnN0IExpbmVDYW5kaWRh
dGU6OklubGluZUNvbnRlbnQmIGNhbmRpZGF0ZUNvbnRlbnQsIGNvbnN0IExpbmUmIGxpbmUsIElu
bGluZUxheW91dFVuaXQgYXZhaWxhYmxlV2lkdGhGb3JDb250ZW50KQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>