<?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>234045</bug_id>
          
          <creation_ts>2021-12-08 16:59:36 -0800</creation_ts>
          <short_desc>Move matchSystemFontUse to SystemFontDatabase</short_desc>
          <delta_ts>2022-07-20 21:45:05 -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>Layout and Rendering</component>
          <version>WebKit Local 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>
          
          <blocked>233488</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Cameron McCormack (:heycam)">heycam</reporter>
          <assigned_to name="Cameron McCormack (:heycam)">heycam</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>mattwoodrow</cc>
    
    <cc>mmaxfield</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>1821871</commentid>
    <comment_count>0</comment_count>
    <who name="Cameron McCormack (:heycam)">heycam</who>
    <bug_when>2021-12-08 16:59:36 -0800</bug_when>
    <thetext>Move matchSystemFontUse to SystemFontDatabase</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821872</commentid>
    <comment_count>1</comment_count>
      <attachid>446460</attachid>
    <who name="Cameron McCormack (:heycam)">heycam</who>
    <bug_when>2021-12-08 17:00:40 -0800</bug_when>
    <thetext>Created attachment 446460
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1823012</commentid>
    <comment_count>2</comment_count>
      <attachid>446460</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-12-10 15:01:02 -0800</bug_when>
    <thetext>Comment on attachment 446460
Patch

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

&gt; Source/WebCore/platform/graphics/cocoa/SystemFontDatabaseCoreText.h:128
&gt; +    Vector&lt;AtomString&gt; m_textStyles;

Thinking about this, I think you&apos;re right, this is probably better.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1824596</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-12-15 17:00:31 -0800</bug_when>
    <thetext>&lt;rdar://problem/86550072&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1885449</commentid>
    <comment_count>4</comment_count>
      <attachid>461055</attachid>
    <who name="Matt Woodrow">mattwoodrow</who>
    <bug_when>2022-07-20 14:40:27 -0700</bug_when>
    <thetext>Created attachment 461055
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1885556</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-07-20 21:45:03 -0700</bug_when>
    <thetext>Committed 252682@main (3f53693343ca): &lt;https://commits.webkit.org/252682@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 461055.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>446460</attachid>
            <date>2021-12-08 17:00:40 -0800</date>
            <delta_ts>2021-12-10 15:01:02 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-234045-20211209120039.patch</filename>
            <type>text/plain</type>
            <size>9884</size>
            <attacher name="Cameron McCormack (:heycam)">heycam</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg2NjM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzY3Y2QyYTU1ZGE1ZmE1
MTIzNGYzZTgxZmY5OTRlYzRjZmM1NzRjYy4uMzA4MzdmNjdkOTc5NmQ3MDJkMzg5M2U4NjNlMGJm
YjVjYmNkOWIyMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDIxLTEyLTAyICBDYW1l
cm9uIE1jQ29ybWFjayAgPGhleWNhbUBhcHBsZS5jb20+CisKKyAgICAgICAgTW92ZSBtYXRjaFN5
c3RlbUZvbnRVc2UgdG8gU3lzdGVtRm9udERhdGFiYXNlCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzQwNDUKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBtYXRjaFN5c3RlbUZvbnRVc2UgaXMgdXNlZCB0byBt
YXAgYW4gQXRvbVN0cmluZyB0byBhIFN5c3RlbUZvbnRLaW5kCisgICAgICAgIHZhbHVlLiBUaGlz
IGZ1bmN0aW9uIGNhbiBiZSBjYWxsZWQgZnJvbSB3b3JrZXIgdGhyZWFkcyB3aXRoCisgICAgICAg
IE9mZnNjcmVlbkNhbnZhcywgYW5kIGJlY2F1c2UgaXQgZGVhbHMgd2l0aCBBdG9tU3RyaW5ncyBh
bmQgYWxzbworICAgICAgICBsYXppbHkgaW5pdGlhbGl6ZXMgc3RhdGljIHZhcmlhYmxlcywgaXQn
cyBub3QgdGhyZWFkIHNhZmUuCisKKyAgICAgICAgVGhpcyBwYXRjaCBtb3ZlcyBpdCB0byBTeXN0
ZW1Gb250RGF0YWJhc2UsIG9mIHdoaWNoIGVhY2ggdGhyZWFkIHdpbGwKKyAgICAgICAgaGF2ZSBp
dHMgb3duIGluc3RhbmNlLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9u
dERlc2NyaXB0aW9uQ29jb2EuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhc2NhZGVEZXNj
cmlwdGlvbjo6ZWZmZWN0aXZlRmFtaWx5Q291bnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6
Rm9udENhc2NhZGVEZXNjcmlwdGlvbjo6ZWZmZWN0aXZlRmFtaWx5QXQgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6Y29udmVydEFycmF5KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6Om1h
dGNoU3lzdGVtRm9udFVzZSk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
Y29jb2EvU3lzdGVtRm9udERhdGFiYXNlQ29yZVRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U3lzdGVtRm9udERhdGFiYXNlQ29yZVRleHQ6Om1hdGNoU3lzdGVtRm9udFVzZSk6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvU3lzdGVtRm9udERhdGFiYXNlQ29yZVRleHQuaDoK
KwogMjAyMS0xMi0wMiAgQ2FtZXJvbiBNY0Nvcm1hY2sgIDxoZXljYW1AYXBwbGUuY29tPgogCiAg
ICAgICAgIFJlbW92ZSBjYWNoZWQgbGFzdCByZXNvcnQgQ1RGb250RGVzY3JpcHRvcgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udERlc2NyaXB0
aW9uQ29jb2EuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9u
dERlc2NyaXB0aW9uQ29jb2EuY3BwCmluZGV4IDVhNGVjZTY5MjgxYTdmNjYxYzI1M2ZmNzk1NjU2
NzE3Nzk5OGNkYTAuLjFmNjU5OTI3MjA3MjQ1ZDUzZWIwZWE2ODMxYmUzMGNmNjYyNzcxYTggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnREZXNj
cmlwdGlvbkNvY29hLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
b2NvYS9Gb250RGVzY3JpcHRpb25Db2NvYS5jcHAKQEAgLTI3LDcyICsyNyw5IEBACiAjaW5jbHVk
ZSAiRm9udENhc2NhZGVEZXNjcmlwdGlvbi5oIgogCiAjaW5jbHVkZSAiU3lzdGVtRm9udERhdGFi
YXNlQ29yZVRleHQuaCIKLSNpbmNsdWRlIDxtdXRleD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
Ci10ZW1wbGF0ZTx0eXBlbmFtZSBULCB0eXBlbmFtZSBVLCBzdGQ6OnNpemVfdCBzaXplLCBzdGQ6
OnNpemVfdC4uLiBpbmRpY2VzPiBzdGQ6OmFycmF5PFQsIHNpemU+IGNvbnZlcnRBcnJheShVICgm
YXJyYXkpW3NpemVdLCBzdGQ6OmluZGV4X3NlcXVlbmNlPGluZGljZXMuLi4+KQotewotICAgIHJl
dHVybiB7IHsgYXJyYXlbaW5kaWNlc10uLi4gfSB9OwotfQotCi10ZW1wbGF0ZTx0eXBlbmFtZSBU
LCB0eXBlbmFtZSBVLCBzdGQ6OnNpemVfdCBzaXplPiBpbmxpbmUgc3RkOjphcnJheTxULCBzaXpl
PiBjb252ZXJ0QXJyYXkoVSAoJmFycmF5KVtzaXplXSkKLXsKLSAgICByZXR1cm4gY29udmVydEFy
cmF5PFQ+KGFycmF5LCBzdGQ6Om1ha2VfaW5kZXhfc2VxdWVuY2U8c2l6ZT4geyB9KTsKLX0KLQot
c3RhdGljIGlubGluZSBzdGQ6Om9wdGlvbmFsPFN5c3RlbUZvbnRLaW5kPiBtYXRjaFN5c3RlbUZv
bnRVc2UoY29uc3QgQXRvbVN0cmluZyYgc3RyaW5nKQotewotICAgIGlmIChlcXVhbExldHRlcnNJ
Z25vcmluZ0FTQ0lJQ2FzZShzdHJpbmcsICItd2Via2l0LXN5c3RlbS1mb250IikKLSAgICAgICAg
fHwgZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc3RyaW5nLCAiLWFwcGxlLXN5c3RlbSIp
Ci0gICAgICAgIHx8IGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHN0cmluZywgIi1hcHBs
ZS1zeXN0ZW0tZm9udCIpCi0gICAgICAgIHx8IGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNl
KHN0cmluZywgInN5c3RlbS11aSIpCi0gICAgICAgIHx8IGVxdWFsTGV0dGVyc0lnbm9yaW5nQVND
SUlDYXNlKHN0cmluZywgInVpLXNhbnMtc2VyaWYiKSkKLSAgICAgICAgcmV0dXJuIFN5c3RlbUZv
bnRLaW5kOjpTeXN0ZW1VSTsKLQotI2lmIEhBVkUoREVTSUdOX1NZU1RFTV9VSV9GT05UUykKLSAg
ICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc3RyaW5nLCAidWktc2VyaWYiKSkK
LSAgICAgICAgcmV0dXJuIFN5c3RlbUZvbnRLaW5kOjpVSVNlcmlmOwotICAgIGlmIChlcXVhbExl
dHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShzdHJpbmcsICJ1aS1tb25vc3BhY2UiKSkKLSAgICAgICAg
cmV0dXJuIFN5c3RlbUZvbnRLaW5kOjpVSU1vbm9zcGFjZTsKLSAgICBpZiAoZXF1YWxMZXR0ZXJz
SWdub3JpbmdBU0NJSUNhc2Uoc3RyaW5nLCAidWktcm91bmRlZCIpKQotICAgICAgICByZXR1cm4g
U3lzdGVtRm9udEtpbmQ6OlVJUm91bmRlZDsKLSNlbmRpZgotCi0gICAgc3RhdGljIGNvbnN0IENG
U3RyaW5nUmVmIHN0eWxlc1tdID0gewotICAgICAgICBrQ1RVSUZvbnRUZXh0U3R5bGVIZWFkbGlu
ZSwKLSAgICAgICAga0NUVUlGb250VGV4dFN0eWxlQm9keSwKLSAgICAgICAga0NUVUlGb250VGV4
dFN0eWxlVGl0bGUxLAotICAgICAgICBrQ1RVSUZvbnRUZXh0U3R5bGVUaXRsZTIsCi0gICAgICAg
IGtDVFVJRm9udFRleHRTdHlsZVRpdGxlMywKLSAgICAgICAga0NUVUlGb250VGV4dFN0eWxlU3Vi
aGVhZCwKLSAgICAgICAga0NUVUlGb250VGV4dFN0eWxlRm9vdG5vdGUsCi0gICAgICAgIGtDVFVJ
Rm9udFRleHRTdHlsZUNhcHRpb24xLAotICAgICAgICBrQ1RVSUZvbnRUZXh0U3R5bGVDYXB0aW9u
MiwKLSAgICAgICAga0NUVUlGb250VGV4dFN0eWxlU2hvcnRIZWFkbGluZSwKLSAgICAgICAga0NU
VUlGb250VGV4dFN0eWxlU2hvcnRCb2R5LAotICAgICAgICBrQ1RVSUZvbnRUZXh0U3R5bGVTaG9y
dFN1YmhlYWQsCi0gICAgICAgIGtDVFVJRm9udFRleHRTdHlsZVNob3J0Rm9vdG5vdGUsCi0gICAg
ICAgIGtDVFVJRm9udFRleHRTdHlsZVNob3J0Q2FwdGlvbjEsCi0gICAgICAgIGtDVFVJRm9udFRl
eHRTdHlsZVRhbGxCb2R5LAotICAgICAgICBrQ1RVSUZvbnRUZXh0U3R5bGVUaXRsZTAsCi0gICAg
ICAgIGtDVFVJRm9udFRleHRTdHlsZVRpdGxlNCwKLSAgICB9OwotCi0gICAgYXV0byBjb21wYXJl
QXNQb2ludGVyID0gW10oY29uc3QgQXRvbVN0cmluZyYgbGhzLCBjb25zdCBBdG9tU3RyaW5nJiBy
aHMpIHsKLSAgICAgICAgcmV0dXJuIGxocy5pbXBsKCkgPCByaHMuaW1wbCgpOwotICAgIH07Ci0g
ICAgc3RhdGljIGF1dG8gc3RyaW5ncyA9IG1ha2VOZXZlckRlc3Ryb3llZChbJmNvbXBhcmVBc1Bv
aW50ZXJdIHsKLSAgICAgICAgYXV0byByZXN1bHQgPSBjb252ZXJ0QXJyYXk8QXRvbVN0cmluZz4o
c3R5bGVzKTsKLSAgICAgICAgc3RkOjpzb3J0KHJlc3VsdC5iZWdpbigpLCByZXN1bHQuZW5kKCks
IGNvbXBhcmVBc1BvaW50ZXIpOwotICAgICAgICByZXR1cm4gcmVzdWx0OwotICAgIH0oKSk7Ci0g
ICAgaWYgKHN0ZDo6YmluYXJ5X3NlYXJjaChzdHJpbmdzLmdldCgpLmJlZ2luKCksIHN0cmluZ3Mu
Z2V0KCkuZW5kKCksIHN0cmluZywgY29tcGFyZUFzUG9pbnRlcikpCi0gICAgICAgIHJldHVybiBT
eXN0ZW1Gb250S2luZDo6VGV4dFN0eWxlOwotCi0gICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLX0K
LQogc3RhdGljIGlubGluZSBWZWN0b3I8UmV0YWluUHRyPENURm9udERlc2NyaXB0b3JSZWY+PiBz
eXN0ZW1Gb250Q2FzY2FkZUxpc3QoY29uc3QgRm9udERlc2NyaXB0aW9uJiBkZXNjcmlwdGlvbiwg
Y29uc3QgQXRvbVN0cmluZyYgY3NzRmFtaWx5LCBTeXN0ZW1Gb250S2luZCBzeXN0ZW1Gb250S2lu
ZCwgQWxsb3dVc2VySW5zdGFsbGVkRm9udHMgYWxsb3dVc2VySW5zdGFsbGVkRm9udHMpCiB7CiAg
ICAgcmV0dXJuIFN5c3RlbUZvbnREYXRhYmFzZUNvcmVUZXh0OjpzaW5nbGV0b24oKS5jYXNjYWRl
TGlzdChkZXNjcmlwdGlvbiwgY3NzRmFtaWx5LCBzeXN0ZW1Gb250S2luZCwgYWxsb3dVc2VySW5z
dGFsbGVkRm9udHMpOwpAQCAtMTA0LDcgKzQxLDcgQEAgdW5zaWduZWQgRm9udENhc2NhZGVEZXNj
cmlwdGlvbjo6ZWZmZWN0aXZlRmFtaWx5Q291bnQoKSBjb25zdAogICAgIHVuc2lnbmVkIHJlc3Vs
dCA9IDA7CiAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IGZhbWlseUNvdW50KCk7ICsraSkg
ewogICAgICAgICBjb25zdCBhdXRvJiBjc3NGYW1pbHkgPSBmYW1pbHlBdChpKTsKLSAgICAgICAg
aWYgKGF1dG8gdXNlID0gbWF0Y2hTeXN0ZW1Gb250VXNlKGNzc0ZhbWlseSkpCisgICAgICAgIGlm
IChhdXRvIHVzZSA9IFN5c3RlbUZvbnREYXRhYmFzZUNvcmVUZXh0OjpzaW5nbGV0b24oKS5tYXRj
aFN5c3RlbUZvbnRVc2UoY3NzRmFtaWx5KSkKICAgICAgICAgICAgIHJlc3VsdCArPSBzeXN0ZW1G
b250Q2FzY2FkZUxpc3QoKnRoaXMsIGNzc0ZhbWlseSwgKnVzZSwgc2hvdWxkQWxsb3dVc2VySW5z
dGFsbGVkRm9udHMoKSkuc2l6ZSgpOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICArK3Jlc3Vs
dDsKQEAgLTEyMiw3ICs1OSw3IEBAIEZvbnRGYW1pbHlTcGVjaWZpY2F0aW9uIEZvbnRDYXNjYWRl
RGVzY3JpcHRpb246OmVmZmVjdGl2ZUZhbWlseUF0KHVuc2lnbmVkIGluZGV4CiAgICAgLy8gVGhl
c2UgdHdvIGJlaGF2aW9ycyBzaG91bGQgYmUgdW5pZmllZCwgd2hpY2ggd291bGQgaG9wZWZ1bGx5
IGFsbG93IHVzIHRvIGRlbGV0ZSB0aGlzIGR1cGxpY2F0ZSBjb2RlLgogICAgIGZvciAodW5zaWdu
ZWQgaSA9IDA7IGkgPCBmYW1pbHlDb3VudCgpOyArK2kpIHsKICAgICAgICAgY29uc3QgYXV0byYg
Y3NzRmFtaWx5ID0gZmFtaWx5QXQoaSk7Ci0gICAgICAgIGlmIChhdXRvIHVzZSA9IG1hdGNoU3lz
dGVtRm9udFVzZShjc3NGYW1pbHkpKSB7CisgICAgICAgIGlmIChhdXRvIHVzZSA9IFN5c3RlbUZv
bnREYXRhYmFzZUNvcmVUZXh0OjpzaW5nbGV0b24oKS5tYXRjaFN5c3RlbUZvbnRVc2UoY3NzRmFt
aWx5KSkgewogICAgICAgICAgICAgYXV0byBjYXNjYWRlTGlzdCA9IHN5c3RlbUZvbnRDYXNjYWRl
TGlzdCgqdGhpcywgY3NzRmFtaWx5LCAqdXNlLCBzaG91bGRBbGxvd1VzZXJJbnN0YWxsZWRGb250
cygpKTsKICAgICAgICAgICAgIGlmIChpbmRleCA8IGNhc2NhZGVMaXN0LnNpemUoKSkKICAgICAg
ICAgICAgICAgICByZXR1cm4gRm9udEZhbWlseVNwZWNpZmljYXRpb24oY2FzY2FkZUxpc3RbaW5k
ZXhdLmdldCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2NvY29hL1N5c3RlbUZvbnREYXRhYmFzZUNvcmVUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NvY29hL1N5c3RlbUZvbnREYXRhYmFzZUNvcmVUZXh0LmNwcAppbmRl
eCA1NzYyZTA4OTNkOTkzYjQzOWI5MDU4OTJiMTYyNTY3NjA5YjViZDViLi4yODRlZDNjYTkzMmU4
OGViZDcwMTZmMzUyOGM2NDIxYzk5NzQxODA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9TeXN0ZW1Gb250RGF0YWJhc2VDb3JlVGV4dC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvU3lzdGVtRm9udERhdGFi
YXNlQ29yZVRleHQuY3BwCkBAIC0yODQsNiArMjg0LDU3IEBAIFN5c3RlbUZvbnREYXRhYmFzZUNv
cmVUZXh0OjpDYXNjYWRlTGlzdFBhcmFtZXRlcnMgU3lzdGVtRm9udERhdGFiYXNlQ29yZVRleHQ6
OnN5CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAorc3RkOjpvcHRpb25hbDxTeXN0ZW1Gb250S2lu
ZD4gU3lzdGVtRm9udERhdGFiYXNlQ29yZVRleHQ6Om1hdGNoU3lzdGVtRm9udFVzZShjb25zdCBB
dG9tU3RyaW5nJiBzdHJpbmcpCit7CisgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlD
YXNlKHN0cmluZywgIi13ZWJraXQtc3lzdGVtLWZvbnQiKQorICAgICAgICB8fCBlcXVhbExldHRl
cnNJZ25vcmluZ0FTQ0lJQ2FzZShzdHJpbmcsICItYXBwbGUtc3lzdGVtIikKKyAgICAgICAgfHwg
ZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc3RyaW5nLCAiLWFwcGxlLXN5c3RlbS1mb250
IikKKyAgICAgICAgfHwgZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc3RyaW5nLCAic3lz
dGVtLXVpIikKKyAgICAgICAgfHwgZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc3RyaW5n
LCAidWktc2Fucy1zZXJpZiIpKQorICAgICAgICByZXR1cm4gU3lzdGVtRm9udEtpbmQ6OlN5c3Rl
bVVJOworCisjaWYgSEFWRShERVNJR05fU1lTVEVNX1VJX0ZPTlRTKQorICAgIGlmIChlcXVhbExl
dHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShzdHJpbmcsICJ1aS1zZXJpZiIpKQorICAgICAgICByZXR1
cm4gU3lzdGVtRm9udEtpbmQ6OlVJU2VyaWY7CisgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5n
QVNDSUlDYXNlKHN0cmluZywgInVpLW1vbm9zcGFjZSIpKQorICAgICAgICByZXR1cm4gU3lzdGVt
Rm9udEtpbmQ6OlVJTW9ub3NwYWNlOworICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJ
Q2FzZShzdHJpbmcsICJ1aS1yb3VuZGVkIikpCisgICAgICAgIHJldHVybiBTeXN0ZW1Gb250S2lu
ZDo6VUlSb3VuZGVkOworI2VuZGlmCisKKyAgICBhdXRvIGNvbXBhcmVBc1BvaW50ZXIgPSBbXShj
b25zdCBBdG9tU3RyaW5nJiBsaHMsIGNvbnN0IEF0b21TdHJpbmcmIHJocykgeworICAgICAgICBy
ZXR1cm4gbGhzLmltcGwoKSA8IHJocy5pbXBsKCk7CisgICAgfTsKKworICAgIGlmIChtX3RleHRT
dHlsZXMuaXNFbXB0eSgpKSB7CisgICAgICAgIG1fdGV4dFN0eWxlcyA9IHsKKyAgICAgICAgICAg
IGtDVFVJRm9udFRleHRTdHlsZUhlYWRsaW5lLAorICAgICAgICAgICAga0NUVUlGb250VGV4dFN0
eWxlQm9keSwKKyAgICAgICAgICAgIGtDVFVJRm9udFRleHRTdHlsZVRpdGxlMSwKKyAgICAgICAg
ICAgIGtDVFVJRm9udFRleHRTdHlsZVRpdGxlMiwKKyAgICAgICAgICAgIGtDVFVJRm9udFRleHRT
dHlsZVRpdGxlMywKKyAgICAgICAgICAgIGtDVFVJRm9udFRleHRTdHlsZVN1YmhlYWQsCisgICAg
ICAgICAgICBrQ1RVSUZvbnRUZXh0U3R5bGVGb290bm90ZSwKKyAgICAgICAgICAgIGtDVFVJRm9u
dFRleHRTdHlsZUNhcHRpb24xLAorICAgICAgICAgICAga0NUVUlGb250VGV4dFN0eWxlQ2FwdGlv
bjIsCisgICAgICAgICAgICBrQ1RVSUZvbnRUZXh0U3R5bGVTaG9ydEhlYWRsaW5lLAorICAgICAg
ICAgICAga0NUVUlGb250VGV4dFN0eWxlU2hvcnRCb2R5LAorICAgICAgICAgICAga0NUVUlGb250
VGV4dFN0eWxlU2hvcnRTdWJoZWFkLAorICAgICAgICAgICAga0NUVUlGb250VGV4dFN0eWxlU2hv
cnRGb290bm90ZSwKKyAgICAgICAgICAgIGtDVFVJRm9udFRleHRTdHlsZVNob3J0Q2FwdGlvbjEs
CisgICAgICAgICAgICBrQ1RVSUZvbnRUZXh0U3R5bGVUYWxsQm9keSwKKyAgICAgICAgICAgIGtD
VFVJRm9udFRleHRTdHlsZVRpdGxlMCwKKyAgICAgICAgICAgIGtDVFVJRm9udFRleHRTdHlsZVRp
dGxlNCwKKyAgICAgICAgfTsKKyAgICAgICAgc3RkOjpzb3J0KG1fdGV4dFN0eWxlcy5iZWdpbigp
LCBtX3RleHRTdHlsZXMuZW5kKCksIGNvbXBhcmVBc1BvaW50ZXIpOworICAgIH0KKworICAgIGlm
IChzdGQ6OmJpbmFyeV9zZWFyY2gobV90ZXh0U3R5bGVzLmJlZ2luKCksIG1fdGV4dFN0eWxlcy5l
bmQoKSwgc3RyaW5nLCBjb21wYXJlQXNQb2ludGVyKSkKKyAgICAgICAgcmV0dXJuIFN5c3RlbUZv
bnRLaW5kOjpUZXh0U3R5bGU7CisKKyAgICByZXR1cm4gc3RkOjpudWxsb3B0OworfQorCiBWZWN0
b3I8UmV0YWluUHRyPENURm9udERlc2NyaXB0b3JSZWY+PiBTeXN0ZW1Gb250RGF0YWJhc2VDb3Jl
VGV4dDo6Y2FzY2FkZUxpc3QoY29uc3QgRm9udERlc2NyaXB0aW9uJiBkZXNjcmlwdGlvbiwgY29u
c3QgQXRvbVN0cmluZyYgY3NzRmFtaWx5LCBTeXN0ZW1Gb250S2luZCBzeXN0ZW1Gb250S2luZCwg
QWxsb3dVc2VySW5zdGFsbGVkRm9udHMgYWxsb3dVc2VySW5zdGFsbGVkRm9udHMpCiB7CiAgICAg
cmV0dXJuIGNhc2NhZGVMaXN0KHN5c3RlbUZvbnRQYXJhbWV0ZXJzKGRlc2NyaXB0aW9uLCBjc3NG
YW1pbHksIHN5c3RlbUZvbnRLaW5kLCBhbGxvd1VzZXJJbnN0YWxsZWRGb250cyksIHN5c3RlbUZv
bnRLaW5kKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nv
Y29hL1N5c3RlbUZvbnREYXRhYmFzZUNvcmVUZXh0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jb2NvYS9TeXN0ZW1Gb250RGF0YWJhc2VDb3JlVGV4dC5oCmluZGV4IDlhZDFl
MGNjNDUwZjBlYWE4Mjk4MTczNTU5NzgwMGFjMDgwNDk2ZDQuLmE2YjgzODA5ZTczOTAyYWUyMjA2
Y2QyZTlkZTc2MjI3MDViNGVmZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NvY29hL1N5c3RlbUZvbnREYXRhYmFzZUNvcmVUZXh0LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvU3lzdGVtRm9udERhdGFiYXNlQ29yZVRl
eHQuaApAQCAtOTIsNiArOTIsNyBAQCBwdWJsaWM6CiAKICAgICBzdGF0aWMgU3lzdGVtRm9udERh
dGFiYXNlQ29yZVRleHQmIHNpbmdsZXRvbigpOwogCisgICAgc3RkOjpvcHRpb25hbDxTeXN0ZW1G
b250S2luZD4gbWF0Y2hTeXN0ZW1Gb250VXNlKGNvbnN0IEF0b21TdHJpbmcmIGZhbWlseSk7CiAg
ICAgVmVjdG9yPFJldGFpblB0cjxDVEZvbnREZXNjcmlwdG9yUmVmPj4gY2FzY2FkZUxpc3QoY29u
c3QgRm9udERlc2NyaXB0aW9uJiwgY29uc3QgQXRvbVN0cmluZyYgY3NzRmFtaWx5LCBTeXN0ZW1G
b250S2luZCwgQWxsb3dVc2VySW5zdGFsbGVkRm9udHMpOwogCiAgICAgU3RyaW5nIHNlcmlmRmFt
aWx5KGNvbnN0IFN0cmluZyYgbG9jYWxlKTsKQEAgLTEyMyw2ICsxMjQsOCBAQCBwcml2YXRlOgog
ICAgIEhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+IG1fY3Vyc2l2ZUZhbWlsaWVzOwogICAgIEhhc2hN
YXA8U3RyaW5nLCBTdHJpbmc+IG1fZmFudGFzeUZhbWlsaWVzOwogICAgIEhhc2hNYXA8U3RyaW5n
LCBTdHJpbmc+IG1fbW9ub3NwYWNlRmFtaWxpZXM7CisKKyAgICBWZWN0b3I8QXRvbVN0cmluZz4g
bV90ZXh0U3R5bGVzOwogfTsKIAogfQo=
</data>
<flag name="review"
          id="471866"
          type_id="1"
          status="+"
          setter="mmaxfield"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>461055</attachid>
            <date>2022-07-20 14:40:27 -0700</date>
            <delta_ts>2022-07-20 21:45:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-234045-20220721094026.patch</filename>
            <type>text/plain</type>
            <size>9741</size>
            <attacher name="Matt Woodrow">mattwoodrow</attacher>
            
              <data encoding="base64">RnJvbSAzNjc4MmJhYTY4OWQxMDYzY2E4ODRlZWE5N2FkNThjOTdjNzBiZGEwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBDYW1lcm9uIE1jQ29ybWFjayA8aGV5Y2FtQGFwcGxlLmNvbT4K
RGF0ZTogVGh1LCAyNSBOb3YgMjAyMSAwODo0MDoyMyArMTEwMApTdWJqZWN0OiBbUEFUQ0hdIE1v
dmUgbWF0Y2hTeXN0ZW1Gb250VXNlIHRvIFN5c3RlbUZvbnREYXRhYmFzZQogaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNDA0NQoKUmV2aWV3ZWQgYnkgTXlsZXMgQy4g
TWF4ZmllbGQuCgptYXRjaFN5c3RlbUZvbnRVc2UgaXMgdXNlZCB0byBtYXAgYW4gQXRvbVN0cmlu
ZyB0byBhIFN5c3RlbUZvbnRLaW5kCnZhbHVlLiBUaGlzIGZ1bmN0aW9uIGNhbiBiZSBjYWxsZWQg
ZnJvbSB3b3JrZXIgdGhyZWFkcyB3aXRoCk9mZnNjcmVlbkNhbnZhcywgYW5kIGJlY2F1c2UgaXQg
ZGVhbHMgd2l0aCBBdG9tU3RyaW5ncyBhbmQgYWxzbwpsYXppbHkgaW5pdGlhbGl6ZXMgc3RhdGlj
IHZhcmlhYmxlcywgaXQncyBub3QgdGhyZWFkIHNhZmUuCgpUaGlzIHBhdGNoIG1vdmVzIGl0IHRv
IFN5c3RlbUZvbnREYXRhYmFzZSwgb2Ygd2hpY2ggZWFjaCB0aHJlYWQgd2lsbApoYXZlIGl0cyBv
d24gaW5zdGFuY2UuCgoqIHBsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnREZXNjcmlwdGlvbkNv
Y29hLmNwcDoKKFdlYkNvcmU6OkZvbnRDYXNjYWRlRGVzY3JpcHRpb246OmVmZmVjdGl2ZUZhbWls
eUNvdW50IGNvbnN0KToKKFdlYkNvcmU6OkZvbnRDYXNjYWRlRGVzY3JpcHRpb246OmVmZmVjdGl2
ZUZhbWlseUF0IGNvbnN0KToKKFdlYkNvcmU6OmNvbnZlcnRBcnJheSk6IERlbGV0ZWQuCihXZWJD
b3JlOjptYXRjaFN5c3RlbUZvbnRVc2UpOiBEZWxldGVkLgoqIHBsYXRmb3JtL2dyYXBoaWNzL2Nv
Y29hL1N5c3RlbUZvbnREYXRhYmFzZUNvcmVUZXh0LmNwcDoKKFdlYkNvcmU6OlN5c3RlbUZvbnRE
YXRhYmFzZUNvcmVUZXh0OjptYXRjaFN5c3RlbUZvbnRVc2UpOgoqIHBsYXRmb3JtL2dyYXBoaWNz
L2NvY29hL1N5c3RlbUZvbnREYXRhYmFzZUNvcmVUZXh0Lmg6Ci0tLQogLi4uL2dyYXBoaWNzL2Nv
Y29hL0ZvbnREZXNjcmlwdGlvbkNvY29hLmNwcCAgIHwgNjcgKy0tLS0tLS0tLS0tLS0tLS0tLQog
Li4uL2NvY29hL1N5c3RlbUZvbnREYXRhYmFzZUNvcmVUZXh0LmNwcCAgICAgIHwgNTEgKysrKysr
KysrKysrKysKIC4uLi9jb2NvYS9TeXN0ZW1Gb250RGF0YWJhc2VDb3JlVGV4dC5oICAgICAgICB8
ICAzICsKIDMgZmlsZXMgY2hhbmdlZCwgNTYgaW5zZXJ0aW9ucygrKSwgNjUgZGVsZXRpb25zKC0p
CgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9u
dERlc2NyaXB0aW9uQ29jb2EuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y29jb2EvRm9udERlc2NyaXB0aW9uQ29jb2EuY3BwCmluZGV4IDc0Y2Y0ODY2MjNlYS4uMDk5MjQ2
MTM2ZWJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2Nv
YS9Gb250RGVzY3JpcHRpb25Db2NvYS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY29jb2EvRm9udERlc2NyaXB0aW9uQ29jb2EuY3BwCkBAIC0yNyw3MiArMjcsOSBA
QAogI2luY2x1ZGUgIkZvbnRDYXNjYWRlRGVzY3JpcHRpb24uaCIKIAogI2luY2x1ZGUgIlN5c3Rl
bUZvbnREYXRhYmFzZUNvcmVUZXh0LmgiCi0jaW5jbHVkZSA8bXV0ZXg+CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotdGVtcGxhdGU8dHlwZW5hbWUgVCwgdHlwZW5hbWUgVSwgc3RkOjpzaXplX3Qg
c2l6ZSwgc3RkOjpzaXplX3QuLi4gaW5kaWNlcz4gc3RkOjphcnJheTxULCBzaXplPiBjb252ZXJ0
QXJyYXkoVSAoJmFycmF5KVtzaXplXSwgc3RkOjppbmRleF9zZXF1ZW5jZTxpbmRpY2VzLi4uPikK
LXsKLSAgICByZXR1cm4geyB7IGFycmF5W2luZGljZXNdLi4uIH0gfTsKLX0KLQotdGVtcGxhdGU8
dHlwZW5hbWUgVCwgdHlwZW5hbWUgVSwgc3RkOjpzaXplX3Qgc2l6ZT4gaW5saW5lIHN0ZDo6YXJy
YXk8VCwgc2l6ZT4gY29udmVydEFycmF5KFUgKCZhcnJheSlbc2l6ZV0pCi17Ci0gICAgcmV0dXJu
IGNvbnZlcnRBcnJheTxUPihhcnJheSwgc3RkOjptYWtlX2luZGV4X3NlcXVlbmNlPHNpemU+IHsg
fSk7Ci19Ci0KLXN0YXRpYyBpbmxpbmUgc3RkOjpvcHRpb25hbDxTeXN0ZW1Gb250S2luZD4gbWF0
Y2hTeXN0ZW1Gb250VXNlKGNvbnN0IEF0b21TdHJpbmcmIHN0cmluZykKLXsKLSAgICBpZiAoZXF1
YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc3RyaW5nLCAiLXdlYmtpdC1zeXN0ZW0tZm9udCJf
cykKLSAgICAgICAgfHwgZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc3RyaW5nLCAiLWFw
cGxlLXN5c3RlbSJfcykKLSAgICAgICAgfHwgZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uo
c3RyaW5nLCAiLWFwcGxlLXN5c3RlbS1mb250Il9zKQotICAgICAgICB8fCBlcXVhbExldHRlcnNJ
Z25vcmluZ0FTQ0lJQ2FzZShzdHJpbmcsICJzeXN0ZW0tdWkiX3MpCi0gICAgICAgIHx8IGVxdWFs
TGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHN0cmluZywgInVpLXNhbnMtc2VyaWYiX3MpKQotICAg
ICAgICByZXR1cm4gU3lzdGVtRm9udEtpbmQ6OlN5c3RlbVVJOwotCi0jaWYgSEFWRShERVNJR05f
U1lTVEVNX1VJX0ZPTlRTKQotICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShz
dHJpbmcsICJ1aS1zZXJpZiJfcykpCi0gICAgICAgIHJldHVybiBTeXN0ZW1Gb250S2luZDo6VUlT
ZXJpZjsKLSAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc3RyaW5nLCAidWkt
bW9ub3NwYWNlIl9zKSkKLSAgICAgICAgcmV0dXJuIFN5c3RlbUZvbnRLaW5kOjpVSU1vbm9zcGFj
ZTsKLSAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc3RyaW5nLCAidWktcm91
bmRlZCJfcykpCi0gICAgICAgIHJldHVybiBTeXN0ZW1Gb250S2luZDo6VUlSb3VuZGVkOwotI2Vu
ZGlmCi0KLSAgICBzdGF0aWMgY29uc3QgQ0ZTdHJpbmdSZWYgc3R5bGVzW10gPSB7Ci0gICAgICAg
IGtDVFVJRm9udFRleHRTdHlsZUhlYWRsaW5lLAotICAgICAgICBrQ1RVSUZvbnRUZXh0U3R5bGVC
b2R5LAotICAgICAgICBrQ1RVSUZvbnRUZXh0U3R5bGVUaXRsZTEsCi0gICAgICAgIGtDVFVJRm9u
dFRleHRTdHlsZVRpdGxlMiwKLSAgICAgICAga0NUVUlGb250VGV4dFN0eWxlVGl0bGUzLAotICAg
ICAgICBrQ1RVSUZvbnRUZXh0U3R5bGVTdWJoZWFkLAotICAgICAgICBrQ1RVSUZvbnRUZXh0U3R5
bGVGb290bm90ZSwKLSAgICAgICAga0NUVUlGb250VGV4dFN0eWxlQ2FwdGlvbjEsCi0gICAgICAg
IGtDVFVJRm9udFRleHRTdHlsZUNhcHRpb24yLAotICAgICAgICBrQ1RVSUZvbnRUZXh0U3R5bGVT
aG9ydEhlYWRsaW5lLAotICAgICAgICBrQ1RVSUZvbnRUZXh0U3R5bGVTaG9ydEJvZHksCi0gICAg
ICAgIGtDVFVJRm9udFRleHRTdHlsZVNob3J0U3ViaGVhZCwKLSAgICAgICAga0NUVUlGb250VGV4
dFN0eWxlU2hvcnRGb290bm90ZSwKLSAgICAgICAga0NUVUlGb250VGV4dFN0eWxlU2hvcnRDYXB0
aW9uMSwKLSAgICAgICAga0NUVUlGb250VGV4dFN0eWxlVGFsbEJvZHksCi0gICAgICAgIGtDVFVJ
Rm9udFRleHRTdHlsZVRpdGxlMCwKLSAgICAgICAga0NUVUlGb250VGV4dFN0eWxlVGl0bGU0LAot
ICAgIH07Ci0KLSAgICBhdXRvIGNvbXBhcmVBc1BvaW50ZXIgPSBbXShjb25zdCBBdG9tU3RyaW5n
JiBsaHMsIGNvbnN0IEF0b21TdHJpbmcmIHJocykgewotICAgICAgICByZXR1cm4gbGhzLmltcGwo
KSA8IHJocy5pbXBsKCk7Ci0gICAgfTsKLSAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQgc3RyaW5n
cyA9IFsmY29tcGFyZUFzUG9pbnRlcl0gewotICAgICAgICBhdXRvIHJlc3VsdCA9IGNvbnZlcnRB
cnJheTxBdG9tU3RyaW5nPihzdHlsZXMpOwotICAgICAgICBzdGQ6OnNvcnQocmVzdWx0LmJlZ2lu
KCksIHJlc3VsdC5lbmQoKSwgY29tcGFyZUFzUG9pbnRlcik7Ci0gICAgICAgIHJldHVybiByZXN1
bHQ7Ci0gICAgfSgpOwotICAgIGlmIChzdGQ6OmJpbmFyeV9zZWFyY2goc3RyaW5ncy5nZXQoKS5i
ZWdpbigpLCBzdHJpbmdzLmdldCgpLmVuZCgpLCBzdHJpbmcsIGNvbXBhcmVBc1BvaW50ZXIpKQot
ICAgICAgICByZXR1cm4gU3lzdGVtRm9udEtpbmQ6OlRleHRTdHlsZTsKLQotICAgIHJldHVybiBz
dGQ6Om51bGxvcHQ7Ci19Ci0KIHN0YXRpYyBpbmxpbmUgVmVjdG9yPFJldGFpblB0cjxDVEZvbnRE
ZXNjcmlwdG9yUmVmPj4gc3lzdGVtRm9udENhc2NhZGVMaXN0KGNvbnN0IEZvbnREZXNjcmlwdGlv
biYgZGVzY3JpcHRpb24sIGNvbnN0IEF0b21TdHJpbmcmIGNzc0ZhbWlseSwgU3lzdGVtRm9udEtp
bmQgc3lzdGVtRm9udEtpbmQsIEFsbG93VXNlckluc3RhbGxlZEZvbnRzIGFsbG93VXNlckluc3Rh
bGxlZEZvbnRzKQogewogICAgIHJldHVybiBTeXN0ZW1Gb250RGF0YWJhc2VDb3JlVGV4dDo6c2lu
Z2xldG9uKCkuY2FzY2FkZUxpc3QoZGVzY3JpcHRpb24sIGNzc0ZhbWlseSwgc3lzdGVtRm9udEtp
bmQsIGFsbG93VXNlckluc3RhbGxlZEZvbnRzKTsKQEAgLTEwNCw3ICs0MSw3IEBAIHVuc2lnbmVk
IEZvbnRDYXNjYWRlRGVzY3JpcHRpb246OmVmZmVjdGl2ZUZhbWlseUNvdW50KCkgY29uc3QKICAg
ICB1bnNpZ25lZCByZXN1bHQgPSAwOwogICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBmYW1p
bHlDb3VudCgpOyArK2kpIHsKICAgICAgICAgY29uc3QgYXV0byYgY3NzRmFtaWx5ID0gZmFtaWx5
QXQoaSk7Ci0gICAgICAgIGlmIChhdXRvIHVzZSA9IG1hdGNoU3lzdGVtRm9udFVzZShjc3NGYW1p
bHkpKQorICAgICAgICBpZiAoYXV0byB1c2UgPSBTeXN0ZW1Gb250RGF0YWJhc2VDb3JlVGV4dDo6
c2luZ2xldG9uKCkubWF0Y2hTeXN0ZW1Gb250VXNlKGNzc0ZhbWlseSkpCiAgICAgICAgICAgICBy
ZXN1bHQgKz0gc3lzdGVtRm9udENhc2NhZGVMaXN0KCp0aGlzLCBjc3NGYW1pbHksICp1c2UsIHNo
b3VsZEFsbG93VXNlckluc3RhbGxlZEZvbnRzKCkpLnNpemUoKTsKICAgICAgICAgZWxzZQogICAg
ICAgICAgICAgKytyZXN1bHQ7CkBAIC0xMjIsNyArNTksNyBAQCBGb250RmFtaWx5U3BlY2lmaWNh
dGlvbiBGb250Q2FzY2FkZURlc2NyaXB0aW9uOjplZmZlY3RpdmVGYW1pbHlBdCh1bnNpZ25lZCBp
bmRleAogICAgIC8vIFRoZXNlIHR3byBiZWhhdmlvcnMgc2hvdWxkIGJlIHVuaWZpZWQsIHdoaWNo
IHdvdWxkIGhvcGVmdWxseSBhbGxvdyB1cyB0byBkZWxldGUgdGhpcyBkdXBsaWNhdGUgY29kZS4K
ICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgZmFtaWx5Q291bnQoKTsgKytpKSB7CiAgICAg
ICAgIGNvbnN0IGF1dG8mIGNzc0ZhbWlseSA9IGZhbWlseUF0KGkpOwotICAgICAgICBpZiAoYXV0
byB1c2UgPSBtYXRjaFN5c3RlbUZvbnRVc2UoY3NzRmFtaWx5KSkgeworICAgICAgICBpZiAoYXV0
byB1c2UgPSBTeXN0ZW1Gb250RGF0YWJhc2VDb3JlVGV4dDo6c2luZ2xldG9uKCkubWF0Y2hTeXN0
ZW1Gb250VXNlKGNzc0ZhbWlseSkpIHsKICAgICAgICAgICAgIGF1dG8gY2FzY2FkZUxpc3QgPSBz
eXN0ZW1Gb250Q2FzY2FkZUxpc3QoKnRoaXMsIGNzc0ZhbWlseSwgKnVzZSwgc2hvdWxkQWxsb3dV
c2VySW5zdGFsbGVkRm9udHMoKSk7CiAgICAgICAgICAgICBpZiAoaW5kZXggPCBjYXNjYWRlTGlz
dC5zaXplKCkpCiAgICAgICAgICAgICAgICAgcmV0dXJuIEZvbnRGYW1pbHlTcGVjaWZpY2F0aW9u
KGNhc2NhZGVMaXN0W2luZGV4XS5nZXQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9TeXN0ZW1Gb250RGF0YWJhc2VDb3JlVGV4dC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9TeXN0ZW1Gb250RGF0YWJhc2VD
b3JlVGV4dC5jcHAKaW5kZXggODU0YTYxZTA2MjUxLi40OTE4MDdjYTFjOGYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1N5c3RlbUZvbnREYXRhYmFz
ZUNvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2Nv
YS9TeXN0ZW1Gb250RGF0YWJhc2VDb3JlVGV4dC5jcHAKQEAgLTI5MSw2ICsyOTEsNTcgQEAgU3lz
dGVtRm9udERhdGFiYXNlQ29yZVRleHQ6OkNhc2NhZGVMaXN0UGFyYW1ldGVycyBTeXN0ZW1Gb250
RGF0YWJhc2VDb3JlVGV4dDo6c3kKICAgICByZXR1cm4gcmVzdWx0OwogfQogCitzdGQ6Om9wdGlv
bmFsPFN5c3RlbUZvbnRLaW5kPiBTeXN0ZW1Gb250RGF0YWJhc2VDb3JlVGV4dDo6bWF0Y2hTeXN0
ZW1Gb250VXNlKGNvbnN0IEF0b21TdHJpbmcmIHN0cmluZykKK3sKKyAgICBpZiAoZXF1YWxMZXR0
ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc3RyaW5nLCAiLXdlYmtpdC1zeXN0ZW0tZm9udCJfcykKKyAg
ICAgICAgfHwgZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc3RyaW5nLCAiLWFwcGxlLXN5
c3RlbSJfcykKKyAgICAgICAgfHwgZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc3RyaW5n
LCAiLWFwcGxlLXN5c3RlbS1mb250Il9zKQorICAgICAgICB8fCBlcXVhbExldHRlcnNJZ25vcmlu
Z0FTQ0lJQ2FzZShzdHJpbmcsICJzeXN0ZW0tdWkiX3MpCisgICAgICAgIHx8IGVxdWFsTGV0dGVy
c0lnbm9yaW5nQVNDSUlDYXNlKHN0cmluZywgInVpLXNhbnMtc2VyaWYiX3MpKQorICAgICAgICBy
ZXR1cm4gU3lzdGVtRm9udEtpbmQ6OlN5c3RlbVVJOworCisjaWYgSEFWRShERVNJR05fU1lTVEVN
X1VJX0ZPTlRTKQorICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShzdHJpbmcs
ICJ1aS1zZXJpZiJfcykpCisgICAgICAgIHJldHVybiBTeXN0ZW1Gb250S2luZDo6VUlTZXJpZjsK
KyAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc3RyaW5nLCAidWktbW9ub3Nw
YWNlIl9zKSkKKyAgICAgICAgcmV0dXJuIFN5c3RlbUZvbnRLaW5kOjpVSU1vbm9zcGFjZTsKKyAg
ICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc3RyaW5nLCAidWktcm91bmRlZCJf
cykpCisgICAgICAgIHJldHVybiBTeXN0ZW1Gb250S2luZDo6VUlSb3VuZGVkOworI2VuZGlmCisK
KyAgICBhdXRvIGNvbXBhcmVBc1BvaW50ZXIgPSBbXShjb25zdCBBdG9tU3RyaW5nJiBsaHMsIGNv
bnN0IEF0b21TdHJpbmcmIHJocykgeworICAgICAgICByZXR1cm4gbGhzLmltcGwoKSA8IHJocy5p
bXBsKCk7CisgICAgfTsKKworICAgIGlmIChtX3RleHRTdHlsZXMuaXNFbXB0eSgpKSB7CisgICAg
ICAgIG1fdGV4dFN0eWxlcyA9IHsKKyAgICAgICAgICAgIGtDVFVJRm9udFRleHRTdHlsZUhlYWRs
aW5lLAorICAgICAgICAgICAga0NUVUlGb250VGV4dFN0eWxlQm9keSwKKyAgICAgICAgICAgIGtD
VFVJRm9udFRleHRTdHlsZVRpdGxlMSwKKyAgICAgICAgICAgIGtDVFVJRm9udFRleHRTdHlsZVRp
dGxlMiwKKyAgICAgICAgICAgIGtDVFVJRm9udFRleHRTdHlsZVRpdGxlMywKKyAgICAgICAgICAg
IGtDVFVJRm9udFRleHRTdHlsZVN1YmhlYWQsCisgICAgICAgICAgICBrQ1RVSUZvbnRUZXh0U3R5
bGVGb290bm90ZSwKKyAgICAgICAgICAgIGtDVFVJRm9udFRleHRTdHlsZUNhcHRpb24xLAorICAg
ICAgICAgICAga0NUVUlGb250VGV4dFN0eWxlQ2FwdGlvbjIsCisgICAgICAgICAgICBrQ1RVSUZv
bnRUZXh0U3R5bGVTaG9ydEhlYWRsaW5lLAorICAgICAgICAgICAga0NUVUlGb250VGV4dFN0eWxl
U2hvcnRCb2R5LAorICAgICAgICAgICAga0NUVUlGb250VGV4dFN0eWxlU2hvcnRTdWJoZWFkLAor
ICAgICAgICAgICAga0NUVUlGb250VGV4dFN0eWxlU2hvcnRGb290bm90ZSwKKyAgICAgICAgICAg
IGtDVFVJRm9udFRleHRTdHlsZVNob3J0Q2FwdGlvbjEsCisgICAgICAgICAgICBrQ1RVSUZvbnRU
ZXh0U3R5bGVUYWxsQm9keSwKKyAgICAgICAgICAgIGtDVFVJRm9udFRleHRTdHlsZVRpdGxlMCwK
KyAgICAgICAgICAgIGtDVFVJRm9udFRleHRTdHlsZVRpdGxlNCwKKyAgICAgICAgfTsKKyAgICAg
ICAgc3RkOjpzb3J0KG1fdGV4dFN0eWxlcy5iZWdpbigpLCBtX3RleHRTdHlsZXMuZW5kKCksIGNv
bXBhcmVBc1BvaW50ZXIpOworICAgIH0KKworICAgIGlmIChzdGQ6OmJpbmFyeV9zZWFyY2gobV90
ZXh0U3R5bGVzLmJlZ2luKCksIG1fdGV4dFN0eWxlcy5lbmQoKSwgc3RyaW5nLCBjb21wYXJlQXNQ
b2ludGVyKSkKKyAgICAgICAgcmV0dXJuIFN5c3RlbUZvbnRLaW5kOjpUZXh0U3R5bGU7CisKKyAg
ICByZXR1cm4gc3RkOjpudWxsb3B0OworfQorCiBWZWN0b3I8UmV0YWluUHRyPENURm9udERlc2Ny
aXB0b3JSZWY+PiBTeXN0ZW1Gb250RGF0YWJhc2VDb3JlVGV4dDo6Y2FzY2FkZUxpc3QoY29uc3Qg
Rm9udERlc2NyaXB0aW9uJiBkZXNjcmlwdGlvbiwgY29uc3QgQXRvbVN0cmluZyYgY3NzRmFtaWx5
LCBTeXN0ZW1Gb250S2luZCBzeXN0ZW1Gb250S2luZCwgQWxsb3dVc2VySW5zdGFsbGVkRm9udHMg
YWxsb3dVc2VySW5zdGFsbGVkRm9udHMpCiB7CiAgICAgcmV0dXJuIGNhc2NhZGVMaXN0KHN5c3Rl
bUZvbnRQYXJhbWV0ZXJzKGRlc2NyaXB0aW9uLCBjc3NGYW1pbHksIHN5c3RlbUZvbnRLaW5kLCBh
bGxvd1VzZXJJbnN0YWxsZWRGb250cyksIHN5c3RlbUZvbnRLaW5kKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1N5c3RlbUZvbnREYXRhYmFzZUNv
cmVUZXh0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9TeXN0ZW1G
b250RGF0YWJhc2VDb3JlVGV4dC5oCmluZGV4IGQyYmFlOWI4OTk3Ni4uMWNjYTcwZjQ2MjNlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9TeXN0ZW1G
b250RGF0YWJhc2VDb3JlVGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NvY29hL1N5c3RlbUZvbnREYXRhYmFzZUNvcmVUZXh0LmgKQEAgLTg5LDYgKzg5LDcgQEAg
cHVibGljOgogCiAgICAgc3RhdGljIFN5c3RlbUZvbnREYXRhYmFzZUNvcmVUZXh0JiBzaW5nbGV0
b24oKTsKIAorICAgIHN0ZDo6b3B0aW9uYWw8U3lzdGVtRm9udEtpbmQ+IG1hdGNoU3lzdGVtRm9u
dFVzZShjb25zdCBBdG9tU3RyaW5nJiBmYW1pbHkpOwogICAgIFZlY3RvcjxSZXRhaW5QdHI8Q1RG
b250RGVzY3JpcHRvclJlZj4+IGNhc2NhZGVMaXN0KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYsIGNv
bnN0IEF0b21TdHJpbmcmIGNzc0ZhbWlseSwgU3lzdGVtRm9udEtpbmQsIEFsbG93VXNlckluc3Rh
bGxlZEZvbnRzKTsKIAogICAgIFN0cmluZyBzZXJpZkZhbWlseShjb25zdCBTdHJpbmcmIGxvY2Fs
ZSk7CkBAIC0xMzQsNiArMTM1LDggQEAgcHJpdmF0ZToKICAgICBNZW1vcnlDb21wYWN0Um9iaW5I
b29kSGFzaE1hcDxTdHJpbmcsIFN0cmluZz4gbV9jdXJzaXZlRmFtaWxpZXM7CiAgICAgTWVtb3J5
Q29tcGFjdFJvYmluSG9vZEhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+IG1fZmFudGFzeUZhbWlsaWVz
OwogICAgIE1lbW9yeUNvbXBhY3RSb2Jpbkhvb2RIYXNoTWFwPFN0cmluZywgU3RyaW5nPiBtX21v
bm9zcGFjZUZhbWlsaWVzOworCisgICAgVmVjdG9yPEF0b21TdHJpbmc+IG1fdGV4dFN0eWxlczsK
IH07CiAKIGlubGluZSB2b2lkIGFkZChIYXNoZXImIGhhc2hlciwgY29uc3QgU3lzdGVtRm9udERh
dGFiYXNlQ29yZVRleHQ6OkNhc2NhZGVMaXN0UGFyYW1ldGVycyYgcGFyYW1ldGVycykK
</data>

          </attachment>
      

    </bug>

</bugzilla>