<?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>233984</bug_id>
          
          <creation_ts>2021-12-07 23:00:55 -0800</creation_ts>
          <short_desc>Make FontCache allowlist thread safe</short_desc>
          <delta_ts>2022-07-20 14:22:04 -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>1821418</commentid>
    <comment_count>0</comment_count>
    <who name="Cameron McCormack (:heycam)">heycam</who>
    <bug_when>2021-12-07 23:00:55 -0800</bug_when>
    <thetext>Make FontCache allowlist thread safe</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821419</commentid>
    <comment_count>1</comment_count>
      <attachid>446310</attachid>
    <who name="Cameron McCormack (:heycam)">heycam</who>
    <bug_when>2021-12-07 23:01:55 -0800</bug_when>
    <thetext>Created attachment 446310
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1822997</commentid>
    <comment_count>2</comment_count>
      <attachid>446310</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-12-10 14:49:11 -0800</bug_when>
    <thetext>Comment on attachment 446310
Patch

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

&gt; Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.cpp:1225
&gt; +    Locker locker { Allowlist::lock };

This might be an opportunity for performance improvement, since this allowlist is only used for testing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1824261</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-12-14 23:01:24 -0800</bug_when>
    <thetext>&lt;rdar://problem/86507543&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1885306</commentid>
    <comment_count>4</comment_count>
      <attachid>461035</attachid>
    <who name="Matt Woodrow">mattwoodrow</who>
    <bug_when>2022-07-19 22:12:45 -0700</bug_when>
    <thetext>Created attachment 461035
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1885444</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-07-20 14:22:02 -0700</bug_when>
    <thetext>Committed 252657@main (af751da03e16): &lt;https://commits.webkit.org/252657@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 461035.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>446310</attachid>
            <date>2021-12-07 23:01:55 -0800</date>
            <delta_ts>2021-12-10 14:49:11 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-233984-20211208180153.patch</filename>
            <type>text/plain</type>
            <size>3673</size>
            <attacher name="Cameron McCormack (:heycam)">heycam</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg2NjM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNThiMjZjMTljNjE2MzBl
ZTQ2MzVkNTUxYTk3YjIwZmIzNzcwZWY2Ni4uMDRiM2FiZTVmZjFmNzZmYjEyNjc1NmMwMTY3OTBi
MDMxZTc5NTgxNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDIxLTEyLTAyICBDYW1l
cm9uIE1jQ29ybWFjayAgPGhleWNhbUBhcHBsZS5jb20+CisKKyAgICAgICAgTWFrZSBGb250Q2Fj
aGUgYWxsb3dsaXN0IHRocmVhZCBzYWZlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMzM5ODQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBUaGUgYWxsb3dsaXN0IGluIEZvbnRDYWNoZSBjYW4gYmUgcmVhZCBm
cm9tIHdvcmtlciB0aHJlYWRzIHVzaW5nCisgICAgICAgIE9mZnNjcmVlbkNhbnZhcyBhbmQgd3Jp
dHRlbiBieSB0aGUgbWFpbiB0aHJlYWQgKGZyb20gV2ViVmlldyBhbmQKKyAgICAgICAgV2ViUHJv
Y2VzcyBpbml0aWFsaXphdGlvbiksIHdpdGhvdXQgYW55IGV4cGxpY2l0IHN5bmNocm9uaXphdGlv
bi4KKyAgICAgICAgQWRkIGEgbG9jayBhcm91bmQgYWxsb3dsaXN0IGFjY2Vzcy4KKworICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkFsbG93bGlzdDo6V1RGX1JFUVVJUkVTX0xPQ0spOgorICAgICAgICAoV2Vi
Q29yZTo6Rm9udENhY2hlOjpzZXRGb250QWxsb3dsaXN0KToKKyAgICAgICAgKFdlYkNvcmU6Omlz
QWxsb3dsaXN0ZWRGYW1pbHkpOgorICAgICAgICAoV2ViQ29yZTo6cGxhdGZvcm1Gb250TG9va3Vw
V2l0aEZhbWlseSk6CisgICAgICAgIChXZWJDb3JlOjpmb250QWxsb3dsaXN0KTogRGVsZXRlZC4K
KwogMjAyMS0xMi0wMiAgQ2FtZXJvbiBNY0Nvcm1hY2sgIDxoZXljYW1AYXBwbGUuY29tPgogCiAg
ICAgICAgIE1vdmUgY29tcHV0ZVVzZXJQcmVmZXJzU2ltcGxpZmllZCB0byBMYW5ndWFnZS5jcHAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRD
YWNoZUNvcmVUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29h
L0ZvbnRDYWNoZUNvcmVUZXh0LmNwcAppbmRleCAzNWYyMTNlOWUxN2Y3YzA3YmFhNzg4N2NlNWE4
MzVmYzI1ODdkYmM4Li4zMDVhMmJkZjE0NDQxYjFmMjBiODA5NmU0YTQ0NzU4OWI0MDFkMGRmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2Fj
aGVDb3JlVGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29j
b2EvRm9udENhY2hlQ29yZVRleHQuY3BwCkBAIC04NDMsMTkgKzg0MywzOCBAQCBTeW50aGVzaXNQ
YWlyIGNvbXB1dGVOZWNlc3NhcnlTeW50aGVzaXMoQ1RGb250UmVmIGZvbnQsIGNvbnN0IEZvbnRE
ZXNjcmlwdGlvbiYgZgogICAgIHJldHVybiBTeW50aGVzaXNQYWlyKG5lZWRzU3ludGhldGljQm9s
ZCwgbmVlZHNTeW50aGV0aWNPYmxpcXVlKTsKIH0KIAotdHlwZWRlZiBIYXNoU2V0PFN0cmluZywg
QVNDSUlDYXNlSW5zZW5zaXRpdmVIYXNoPiBBbGxvd2xpc3Q7Ci1zdGF0aWMgQWxsb3dsaXN0JiBm
b250QWxsb3dsaXN0KCkKLXsKLSAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8QWxsb3dsaXN0PiBh
bGxvd2xpc3Q7Ci0gICAgcmV0dXJuIGFsbG93bGlzdDsKLX0KK2NsYXNzIEFsbG93bGlzdCB7Citw
dWJsaWM6CisgICAgc3RhdGljIEFsbG93bGlzdCYgc2luZ2xldG9uKCkgV1RGX1JFUVVJUkVTX0xP
Q0sobG9jaykKKyAgICB7CisgICAgICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxBbGxvd2xpc3Q+
IGFsbG93bGlzdDsKKyAgICAgICAgcmV0dXJuIGFsbG93bGlzdDsKKyAgICB9CisKKyAgICB2b2lk
IHNldChjb25zdCBWZWN0b3I8U3RyaW5nPiYgaW5wdXRBbGxvd2xpc3QpIFdURl9SRVFVSVJFU19M
T0NLKGxvY2spCisgICAgeworICAgICAgICBtX2ZhbWlsaWVzLmNsZWFyKCk7CisgICAgICAgIGZv
ciAoYXV0byYgaXRlbSA6IGlucHV0QWxsb3dsaXN0KQorICAgICAgICAgICAgbV9mYW1pbGllcy5h
ZGQoaXRlbSk7CisgICAgfQorCisgICAgYm9vbCBhbGxvd3MoY29uc3QgQXRvbVN0cmluZyYgZmFt
aWx5KSBjb25zdCBXVEZfUkVRVUlSRVNfTE9DSyhsb2NrKQorICAgIHsKKyAgICAgICAgcmV0dXJu
IG1fZmFtaWxpZXMuaXNFbXB0eSgpIHx8IG1fZmFtaWxpZXMuY29udGFpbnMoZmFtaWx5KTsKKyAg
ICB9CisKKyAgICBzdGF0aWMgTG9jayBsb2NrOworCitwcml2YXRlOgorICAgIEhhc2hTZXQ8U3Ry
aW5nLCBBU0NJSUNhc2VJbnNlbnNpdGl2ZUhhc2g+IG1fZmFtaWxpZXM7Cit9OworCitMb2NrIEFs
bG93bGlzdDo6bG9jazsKIAogdm9pZCBGb250Q2FjaGU6OnNldEZvbnRBbGxvd2xpc3QoY29uc3Qg
VmVjdG9yPFN0cmluZz4mIGlucHV0QWxsb3dsaXN0KQogewotICAgIEFsbG93bGlzdCYgYWxsb3ds
aXN0ID0gZm9udEFsbG93bGlzdCgpOwotICAgIGFsbG93bGlzdC5jbGVhcigpOwotICAgIGZvciAo
YXV0byYgaXRlbSA6IGlucHV0QWxsb3dsaXN0KQotICAgICAgICBhbGxvd2xpc3QuYWRkKGl0ZW0p
OworICAgIExvY2tlciBsb2NrZXIgeyBBbGxvd2xpc3Q6OmxvY2sgfTsKKyAgICBBbGxvd2xpc3Q6
OnNpbmdsZXRvbigpLnNldChpbnB1dEFsbG93bGlzdCk7CiB9CiAKIGNsYXNzIEZvbnREYXRhYmFz
ZSB7CkBAIC0xMTk4LDEwICsxMjE3LDE4IEBAIHN0YXRpYyBib29sIGlzRG90UHJlZml4ZWRGb3Ji
aWRkZW5Gb250KGNvbnN0IEF0b21TdHJpbmcmIGZhbWlseSkKICAgICAgICAgfHwgZXF1YWxMZXR0
ZXJzSWdub3JpbmdBU0NJSUNhc2UoZmFtaWx5LCAiLmFwcGxlc3lzdGVtdWlmb250cm91bmRlZCIp
OwogfQogCitzdGF0aWMgYm9vbCBpc0FsbG93bGlzdGVkRmFtaWx5KGNvbnN0IEF0b21TdHJpbmcm
IGZhbWlseSkKK3sKKyAgICBpZiAoaXNTeXN0ZW1Gb250KGZhbWlseS5zdHJpbmcoKSkpCisgICAg
ICAgIHJldHVybiB0cnVlOworCisgICAgTG9ja2VyIGxvY2tlciB7IEFsbG93bGlzdDo6bG9jayB9
OworICAgIHJldHVybiBBbGxvd2xpc3Q6OnNpbmdsZXRvbigpLmFsbG93cyhmYW1pbHkpOworfQor
CiBzdGF0aWMgRm9udExvb2t1cCBwbGF0Zm9ybUZvbnRMb29rdXBXaXRoRmFtaWx5KGNvbnN0IEF0
b21TdHJpbmcmIGZhbWlseSwgRm9udFNlbGVjdGlvblJlcXVlc3QgcmVxdWVzdCwgZmxvYXQgc2l6
ZSwgQWxsb3dVc2VySW5zdGFsbGVkRm9udHMgYWxsb3dVc2VySW5zdGFsbGVkRm9udHMpCiB7Ci0g
ICAgY29uc3QgYXV0byYgYWxsb3dsaXN0ID0gZm9udEFsbG93bGlzdCgpOwotICAgIGlmICghaXNT
eXN0ZW1Gb250KGZhbWlseS5zdHJpbmcoKSkgJiYgYWxsb3dsaXN0LnNpemUoKSAmJiAhYWxsb3ds
aXN0LmNvbnRhaW5zKGZhbWlseSkpCisgICAgaWYgKCFpc0FsbG93bGlzdGVkRmFtaWx5KGZhbWls
eSkpCiAgICAgICAgIHJldHVybiB7IG51bGxwdHIgfTsKIAogICAgIGlmIChpc0RvdFByZWZpeGVk
Rm9yYmlkZGVuRm9udChmYW1pbHkpKSB7Cg==
</data>
<flag name="review"
          id="471674"
          type_id="1"
          status="+"
          setter="mmaxfield"
    />
    <flag name="commit-queue"
          id="471875"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>461035</attachid>
            <date>2022-07-19 22:12:45 -0700</date>
            <delta_ts>2022-07-20 14:22:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-233984-20220720171244.patch</filename>
            <type>text/plain</type>
            <size>3365</size>
            <attacher name="Matt Woodrow">mattwoodrow</attacher>
            
              <data encoding="base64">RnJvbSA0OTdlMzRlNzhhOThkMGQ4MzJiYzE2Nzc2ZmVjZjMwYTUzYjQyYzVmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBDYW1lcm9uIE1jQ29ybWFjayA8aGV5Y2FtQGFwcGxlLmNvbT4K
RGF0ZTogV2VkLCAyNCBOb3YgMjAyMSAwOTozMDo0NyArMTEwMApTdWJqZWN0OiBbUEFUQ0hdIE1h
a2UgRm9udENhY2hlIGFsbG93bGlzdCB0aHJlYWQgc2FmZQogaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIzMzk4NAoKUmV2aWV3ZWQgYnkgTXlsZXMgQy4gTWF4ZmllbGQu
CgpUaGUgYWxsb3dsaXN0IGluIEZvbnRDYWNoZSBjYW4gYmUgcmVhZCBmcm9tIHdvcmtlciB0aHJl
YWRzIHVzaW5nCk9mZnNjcmVlbkNhbnZhcyBhbmQgd3JpdHRlbiBieSB0aGUgbWFpbiB0aHJlYWQg
KGZyb20gV2ViVmlldyBhbmQKV2ViUHJvY2VzcyBpbml0aWFsaXphdGlvbiksIHdpdGhvdXQgYW55
IGV4cGxpY2l0IHN5bmNocm9uaXphdGlvbi4KQWRkIGEgbG9jayBhcm91bmQgYWxsb3dsaXN0IGFj
Y2Vzcy4KCiogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQuY3BwOgoo
V2ViQ29yZTo6QWxsb3dsaXN0OjpXVEZfUkVRVUlSRVNfTE9DSyk6CihXZWJDb3JlOjpGb250Q2Fj
aGU6OnNldEZvbnRBbGxvd2xpc3QpOgooV2ViQ29yZTo6aXNBbGxvd2xpc3RlZEZhbWlseSk6CihX
ZWJDb3JlOjpwbGF0Zm9ybUZvbnRMb29rdXBXaXRoRmFtaWx5KToKKFdlYkNvcmU6OmZvbnRBbGxv
d2xpc3QpOiBEZWxldGVkLgotLS0KIC4uLi9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4
dC5jcHAgICAgICB8IDUxICsrKysrKysrKysrKysrLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAzOSBp
bnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5jcHAKaW5k
ZXggMmQ3MDdlNjY2NzQ3Li45MDgxMDEzMjg0ZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5jcHAK
QEAgLTkxOCwxOSArOTE4LDM4IEBAIFN5bnRoZXNpc1BhaXIgY29tcHV0ZU5lY2Vzc2FyeVN5bnRo
ZXNpcyhDVEZvbnRSZWYgZm9udCwgY29uc3QgRm9udERlc2NyaXB0aW9uJiBmCiAgICAgcmV0dXJu
IFN5bnRoZXNpc1BhaXIobmVlZHNTeW50aGV0aWNCb2xkLCBuZWVkc1N5bnRoZXRpY09ibGlxdWUp
OwogfQogCi10eXBlZGVmIEhhc2hTZXQ8U3RyaW5nLCBBU0NJSUNhc2VJbnNlbnNpdGl2ZUhhc2g+
IEFsbG93bGlzdDsKLXN0YXRpYyBBbGxvd2xpc3QmIGZvbnRBbGxvd2xpc3QoKQotewotICAgIHN0
YXRpYyBOZXZlckRlc3Ryb3llZDxBbGxvd2xpc3Q+IGFsbG93bGlzdDsKLSAgICByZXR1cm4gYWxs
b3dsaXN0OwotfQorY2xhc3MgQWxsb3dsaXN0IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgQWxsb3ds
aXN0JiBzaW5nbGV0b24oKSBXVEZfUkVRVUlSRVNfTE9DSyhsb2NrKQorICAgIHsKKyAgICAgICAg
c3RhdGljIE5ldmVyRGVzdHJveWVkPEFsbG93bGlzdD4gYWxsb3dsaXN0OworICAgICAgICByZXR1
cm4gYWxsb3dsaXN0OworICAgIH0KKworICAgIHZvaWQgc2V0KGNvbnN0IFZlY3RvcjxTdHJpbmc+
JiBpbnB1dEFsbG93bGlzdCkgV1RGX1JFUVVJUkVTX0xPQ0sobG9jaykKKyAgICB7CisgICAgICAg
IG1fZmFtaWxpZXMuY2xlYXIoKTsKKyAgICAgICAgZm9yIChhdXRvJiBpdGVtIDogaW5wdXRBbGxv
d2xpc3QpCisgICAgICAgICAgICBtX2ZhbWlsaWVzLmFkZChpdGVtKTsKKyAgICB9CisKKyAgICBi
b29sIGFsbG93cyhjb25zdCBBdG9tU3RyaW5nJiBmYW1pbHkpIGNvbnN0IFdURl9SRVFVSVJFU19M
T0NLKGxvY2spCisgICAgeworICAgICAgICByZXR1cm4gbV9mYW1pbGllcy5pc0VtcHR5KCkgfHwg
bV9mYW1pbGllcy5jb250YWlucyhmYW1pbHkpOworICAgIH0KKworICAgIHN0YXRpYyBMb2NrIGxv
Y2s7CisKK3ByaXZhdGU6CisgICAgSGFzaFNldDxTdHJpbmcsIEFTQ0lJQ2FzZUluc2Vuc2l0aXZl
SGFzaD4gbV9mYW1pbGllczsKK307CisKK0xvY2sgQWxsb3dsaXN0Ojpsb2NrOwogCiB2b2lkIEZv
bnRDYWNoZTo6c2V0Rm9udEFsbG93bGlzdChjb25zdCBWZWN0b3I8U3RyaW5nPiYgaW5wdXRBbGxv
d2xpc3QpCiB7Ci0gICAgQWxsb3dsaXN0JiBhbGxvd2xpc3QgPSBmb250QWxsb3dsaXN0KCk7Ci0g
ICAgYWxsb3dsaXN0LmNsZWFyKCk7Ci0gICAgZm9yIChhdXRvJiBpdGVtIDogaW5wdXRBbGxvd2xp
c3QpCi0gICAgICAgIGFsbG93bGlzdC5hZGQoaXRlbSk7CisgICAgTG9ja2VyIGxvY2tlciB7IEFs
bG93bGlzdDo6bG9jayB9OworICAgIEFsbG93bGlzdDo6c2luZ2xldG9uKCkuc2V0KGlucHV0QWxs
b3dsaXN0KTsKIH0KIAogY2xhc3MgRm9udERhdGFiYXNlIHsKQEAgLTEyNjcsMTAgKzEyODYsMTgg
QEAgc3RhdGljIGJvb2wgaXNEb3RQcmVmaXhlZEZvcmJpZGRlbkZvbnQoY29uc3QgQXRvbVN0cmlu
ZyYgZmFtaWx5KQogICAgICAgICB8fCBlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShmYW1p
bHksICIuYXBwbGVzeXN0ZW11aWZvbnRyb3VuZGVkIl9zKTsKIH0KIAorc3RhdGljIGJvb2wgaXNB
bGxvd2xpc3RlZEZhbWlseShjb25zdCBBdG9tU3RyaW5nJiBmYW1pbHkpCit7CisgICAgaWYgKGlz
U3lzdGVtRm9udChmYW1pbHkuc3RyaW5nKCkpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAg
IExvY2tlciBsb2NrZXIgeyBBbGxvd2xpc3Q6OmxvY2sgfTsKKyAgICByZXR1cm4gQWxsb3dsaXN0
OjpzaW5nbGV0b24oKS5hbGxvd3MoZmFtaWx5KTsKK30KKwogc3RhdGljIEZvbnRMb29rdXAgcGxh
dGZvcm1Gb250TG9va3VwV2l0aEZhbWlseShjb25zdCBBdG9tU3RyaW5nJiBmYW1pbHksIEZvbnRT
ZWxlY3Rpb25SZXF1ZXN0IHJlcXVlc3QsIGZsb2F0IHNpemUsIEFsbG93VXNlckluc3RhbGxlZEZv
bnRzIGFsbG93VXNlckluc3RhbGxlZEZvbnRzKQogewotICAgIGNvbnN0IGF1dG8mIGFsbG93bGlz
dCA9IGZvbnRBbGxvd2xpc3QoKTsKLSAgICBpZiAoIWlzU3lzdGVtRm9udChmYW1pbHkuc3RyaW5n
KCkpICYmIGFsbG93bGlzdC5zaXplKCkgJiYgIWFsbG93bGlzdC5jb250YWlucyhmYW1pbHkpKQor
ICAgIGlmICghaXNBbGxvd2xpc3RlZEZhbWlseShmYW1pbHkpKQogICAgICAgICByZXR1cm4geyBu
dWxscHRyIH07CiAKICAgICBpZiAoaXNEb3RQcmVmaXhlZEZvcmJpZGRlbkZvbnQoZmFtaWx5KSkg
ewo=
</data>

          </attachment>
      

    </bug>

</bugzilla>