<?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>230248</bug_id>
          
          <creation_ts>2021-09-14 01:24:09 -0700</creation_ts>
          <short_desc>[Cocoa] Migrate to CTFontHasTable() from CTFontCopyAvailableTables()</short_desc>
          <delta_ts>2021-09-14 11:43:38 -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>New Bugs</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>
          <dependson>215688</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Myles C. Maxfield">mmaxfield</reporter>
          <assigned_to name="Myles C. Maxfield">mmaxfield</assigned_to>
          <cc>andersca</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1793225</commentid>
    <comment_count>0</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-09-14 01:24:09 -0700</bug_when>
    <thetext>[Cocoa] Migrate to CTFontHasTable() from CTFontCopyAvailableTables()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793226</commentid>
    <comment_count>1</comment_count>
      <attachid>438112</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-09-14 01:25:09 -0700</bug_when>
    <thetext>Created attachment 438112
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793300</commentid>
    <comment_count>2</comment_count>
      <attachid>438112</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2021-09-14 07:39:33 -0700</bug_when>
    <thetext>Comment on attachment 438112
Patch

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

&gt; Source/WTF/wtf/PlatformUse.h:322
&gt; +#define USE_CTFONTHASTABLE 1

I&apos;d write this out as USE_CT_FONT_HAS_TABLE - but maybe that&apos;s just me!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793358</commentid>
    <comment_count>3</comment_count>
      <attachid>438112</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-09-14 11:33:58 -0700</bug_when>
    <thetext>Comment on attachment 438112
Patch

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

&gt;&gt; Source/WTF/wtf/PlatformUse.h:322
&gt;&gt; +#define USE_CTFONTHASTABLE 1
&gt; 
&gt; I&apos;d write this out as USE_CT_FONT_HAS_TABLE - but maybe that&apos;s just me!

Yeah I originally did this the first time this kind of thing came up, but someone (I forget who) told me not to. Since then, we have USE_CTFONTSHAPEGLYPHS and USE_CTFONTSHAPEGLYPHS_WORKAROUND, so it seems maybe better to follow the established pattern.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793362</commentid>
    <comment_count>4</comment_count>
      <attachid>438112</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-09-14 11:39:49 -0700</bug_when>
    <thetext>Comment on attachment 438112
Patch

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

&gt;&gt;&gt; Source/WTF/wtf/PlatformUse.h:322
&gt;&gt;&gt; +#define USE_CTFONTHASTABLE 1
&gt;&gt; 
&gt;&gt; I&apos;d write this out as USE_CT_FONT_HAS_TABLE - but maybe that&apos;s just me!
&gt; 
&gt; Yeah I originally did this the first time this kind of thing came up, but someone (I forget who) told me not to. Since then, we have USE_CTFONTSHAPEGLYPHS and USE_CTFONTSHAPEGLYPHS_WORKAROUND, so it seems maybe better to follow the established pattern.

HAVE_CTFONTCREATEFORCHARACTERSWITHLANGUAGEANDOPTION, HAVE_CTFONTISSYSTEMUIFONT, HAVE_CTFONTGETPHYSICALSYMBOLICTRAITS, and USE_CTFONTGETADVANCES_WORKAROUND too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793365</commentid>
    <comment_count>5</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-09-14 11:42:24 -0700</bug_when>
    <thetext>Committed r282398 (241659@main): &lt;https://commits.webkit.org/241659@main&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793366</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-09-14 11:43:24 -0700</bug_when>
    <thetext>&lt;rdar://problem/83110084&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438112</attachid>
            <date>2021-09-14 01:25:09 -0700</date>
            <delta_ts>2021-09-14 11:41:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230248-20210914012508.patch</filename>
            <type>text/plain</type>
            <size>5413</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyMzgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGNiMmU1NjhkOTUzZTNjNWU2YmVhMDcy
MWNkNWQ1Y2VmYzYwMjkxYjMuLjQxZGUxYmU3NmQxOTY2NTdhZjE2ZWViMTcwMDk4MGNlYTk5Nzli
YmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMjEtMDktMTQgIE15bGVzIEMuIE1heGZpZWxkICA8
bW1heGZpZWxkQGFwcGxlLmNvbT4KKworICAgICAgICBbQ29jb2FdIE1pZ3JhdGUgdG8gQ1RGb250
SGFzVGFibGUoKSBmcm9tIENURm9udENvcHlBdmFpbGFibGVUYWJsZXMoKQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMwMjQ4CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3dGYvUGxhdGZvcm1Vc2UuaDoK
KwogMjAyMS0wOS0xMyAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3Jn
PgogCiAgICAgICAgIEFkZCB1bml0IHRlc3QgdGhhdCB1c2VzIFBDTSBkYWVtb24KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpp
bmRleCAxM2Q3YWNkMTk0NjViNWNhNmFiM2EwNTRhNDRhMTExMmJmMmI0M2M5Li45OWE0YWY1Y2M5
ODNjMmVmYWVjNWI3MjIxMjM4YjAzZjFmODA1NzYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkg
QEAKKzIwMjEtMDktMTQgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4K
KworICAgICAgICBbQ29jb2FdIE1pZ3JhdGUgdG8gQ1RGb250SGFzVGFibGUoKSBmcm9tIENURm9u
dENvcHlBdmFpbGFibGVUYWJsZXMoKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjMwMjQ4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgQ1RGb250SGFzVGFibGUoKSBoYXMgYmVlbiBhcm91bmQgZm9yIGEgd2hp
bGUsIGJ1dCBpdCdzIG9ubHkgYWN0dWFsbHkKKyAgICAgICAgZmFzdGVyIHRoYW4gQ1RGb250Q29w
eUF2YWlsYWJsZVRhYmxlcygpIG9uIGNlcnRhaW4gb3BlcmF0aW5nIHN5c3RlbXMuCisKKyAgICAg
ICAgTm8gbmV3IHRlc3RzIGJlY2F1c2UgdGhlcmUgaXMgbm8gYmVoYXZpb3IgY2hhbmdlLgorCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OmZvbnRIYXNUYWJsZSk6CisgICAgICAgIChXZWJDb3JlOjpmb250SGFz
RWl0aGVyVGFibGUpOgorCiAyMDIxLTA5LTE0ICBYYWJpZXIgUm9kcmlndWV6IENhbHZhciAgPGNh
bHZhcmlzQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dTdHJlYW1lcl0gRW5hYmxlIEgyNjUgY29k
ZWMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
Q29yZS9QQUwvQ2hhbmdlTG9nCmluZGV4IDBkOGM4NTY0YzJjZWZjYjJkN2RjYzBjNWI2MDU5Nzk5
ZWYyYzk1NzcuLmVhY2Q5OTIyODA3ODM2NWI5NmE5NWMzY2FkMDcwNjQ4OWU4NGYxOGUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUv
UEFML0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDIxLTA5LTE0ICBNeWxlcyBDLiBNYXhm
aWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBNaWdyYXRlIHRv
IENURm9udEhhc1RhYmxlKCkgZnJvbSBDVEZvbnRDb3B5QXZhaWxhYmxlVGFibGVzKCkKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDI0OAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGFsL3NwaS9jZi9D
b3JlVGV4dFNQSS5oOgorCiAyMDIxLTA5LTExICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBs
ZS5jb20+CiAKICAgICAgICAgQ0ZOb3RpZmljYXRpb25DZW50ZXJBZGRPYnNlcnZlcigpIHNob3Vs
ZCB1c2Ugd2VhayBvYnNlcnZlcnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3Jt
VXNlLmggYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybVVzZS5oCmluZGV4IDMxYjNkMDgwMzBlYjgz
ZGM1OGNmNDk4Y2RmMDFmZTY2ZDNkOTQ0N2QuLjRkNjBkNmI1ODVjYjYyZTZiYThmM2RlZmRiZDgz
ZDVkZWM0NWIzZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtVXNlLmgKKysr
IGIvU291cmNlL1dURi93dGYvUGxhdGZvcm1Vc2UuaApAQCAtMzE1LDYgKzMxNSwxMyBAQAogI2Rl
ZmluZSBVU0VfTk9OX1ZBUklBQkxFX1NZU1RFTV9GT05UIDEKICNlbmRpZgogCisjaWYgKFBMQVRG
T1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMzAwMDApIFwK
KyAgICB8fCAoUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgX19JUEhPTkVfT1NfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTYwMDAwKSBcCisgICAgfHwgKFBMQVRGT1JNKFdBVENIT1MpICYmICFQTEFU
Rk9STShJT1NfRkFNSUxZX1NJTVVMQVRPUikgJiYgX19XQVRDSF9PU19WRVJTSU9OX01JTl9SRVFV
SVJFRCA+PSA5MDAwMCkgXAorICAgIHx8IChQTEFURk9STShBUFBMRVRWKSAmJiAhUExBVEZPUk0o
SU9TX0ZBTUlMWV9TSU1VTEFUT1IpICYmIF9fVFZfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0g
MTYwMDAwKQorI2RlZmluZSBVU0VfQ1RGT05USEFTVEFCTEUgMQorI2VuZGlmCisKICNpZiBQTEFU
Rk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPCAxMDE1MDAKICNk
ZWZpbmUgVVNFX0xFR0FDWV9DRk5FVFdPUktfRE9XTkxPQURTIDEKICNlbmRpZgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29yZVRleHRTUEkuaCBiL1NvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvc3BpL2NmL0NvcmVUZXh0U1BJLmgKaW5kZXggMmQyYmFmYzk2NjdlYWI5
ZDFjNDc1YjY1MmEyOTM4Y2JkYmFiNjkzYS4uNTAzODc4MzFkNjIwYWUxMzE0MzJhNzZiODA3M2Vm
MGI1MzEyMTY0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ29y
ZVRleHRTUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jZi9Db3JlVGV4dFNQ
SS5oCkBAIC0xMjQsNiArMTI0LDggQEAgdm9pZCBDVEZvbnRHZXRVbnN1bW1lZEFkdmFuY2VzRm9y
R2x5cGhzQW5kU3R5bGUoQ1RGb250UmVmLCBDVEZvbnRPcmllbnRhdGlvbiwgQ0cKIENURm9udERl
c2NyaXB0b3JSZWYgQ1RGb250RGVzY3JpcHRvckNyZWF0ZUZvckNTU0ZhbWlseShDRlN0cmluZ1Jl
ZiBjc3NGYW1pbHksIENGU3RyaW5nUmVmIGxhbmd1YWdlKTsKIGJvb2wgQ1RGb250R2V0R2x5cGhz
Rm9yQ2hhcmFjdGVyUmFuZ2UoQ1RGb250UmVmLCBDR0dseXBoIGdseXBoc1tdLCBDRlJhbmdlKTsK
IAorYm9vbCBDVEZvbnRIYXNUYWJsZShDVEZvbnRSZWYsIENURm9udFRhYmxlVGFnKTsKKwogQ1RG
b250RGVzY3JpcHRvclJlZiBDVEZvbnREZXNjcmlwdG9yQ3JlYXRlRm9yVUlUeXBlKENURm9udFVJ
Rm9udFR5cGUsIENHRmxvYXQgc2l6ZSwgQ0ZTdHJpbmdSZWYgbGFuZ3VhZ2UpOwogQ1RGb250RGVz
Y3JpcHRvclJlZiBDVEZvbnREZXNjcmlwdG9yQ3JlYXRlV2l0aFRleHRTdHlsZShDRlN0cmluZ1Jl
ZiBzdHlsZSwgQ0ZTdHJpbmdSZWYgc2l6ZSwgQ0ZTdHJpbmdSZWYgbGFuZ3VhZ2UpOwogQ1RGb250
RGVzY3JpcHRvclJlZiBDVEZvbnREZXNjcmlwdG9yQ3JlYXRlQ29weVdpdGhTeW1ib2xpY1RyYWl0
cyhDVEZvbnREZXNjcmlwdG9yUmVmIG9yaWdpbmFsLCBDVEZvbnRTeW1ib2xpY1RyYWl0cyBzeW1U
cmFpdFZhbHVlLCBDVEZvbnRTeW1ib2xpY1RyYWl0cyBzeW1UcmFpdE1hc2spOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmV0ZXh0L0ZvbnRDb3Jl
VGV4dC5jcHAKaW5kZXggM2M4OWI5MGE4MzBlY2Q0M2ZlODI2NTVkOGMzYjY2M2VlOGVkNWJjMy4u
ZTYwNjRlYzEwODAwOTY4Mzk4OWI4Y2VkMzI0Y2Q1YjkwMGE5NmY0NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZXRleHQvRm9udENvcmVUZXh0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JldGV4dC9Gb250Q29yZVRl
eHQuY3BwCkBAIC0xMDgsNiArMTA4LDkgQEAgc3RhdGljIGJvb2wgaXNBaGVtRm9udChDRlN0cmlu
Z1JlZiBmYW1pbHlOYW1lKQogCiBib29sIGZvbnRIYXNUYWJsZShDVEZvbnRSZWYgY3RGb250LCB1
bnNpZ25lZCB0YWJsZVRhZykKIHsKKyNpZiBVU0UoQ1RGT05USEFTVEFCTEUpCisgICAgcmV0dXJu
IENURm9udEhhc1RhYmxlKGN0Rm9udCwgdGFibGVUYWcpOworI2Vsc2UKICAgICBhdXRvIHRhYmxl
VGFncyA9IGFkb3B0Q0YoQ1RGb250Q29weUF2YWlsYWJsZVRhYmxlcyhjdEZvbnQsIGtDVEZvbnRU
YWJsZU9wdGlvbk5vT3B0aW9ucykpOwogICAgIGlmICghdGFibGVUYWdzKQogICAgICAgICByZXR1
cm4gZmFsc2U7CkBAIC0xMTgsMTAgKzEyMSwxNCBAQCBib29sIGZvbnRIYXNUYWJsZShDVEZvbnRS
ZWYgY3RGb250LCB1bnNpZ25lZCB0YWJsZVRhZykKICAgICAgICAgICAgIHJldHVybiB0cnVlOwog
ICAgIH0KICAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYKIH0KIAogYm9vbCBmb250SGFzRWl0aGVy
VGFibGUoQ1RGb250UmVmIGN0Rm9udCwgdW5zaWduZWQgdGFibGVUYWcxLCB1bnNpZ25lZCB0YWJs
ZVRhZzIpCiB7CisjaWYgVVNFKENURk9OVEhBU1RBQkxFKQorICAgIHJldHVybiBmb250SGFzVGFi
bGUoY3RGb250LCB0YWJsZVRhZzEpIHx8IGZvbnRIYXNUYWJsZShjdEZvbnQsIHRhYmxlVGFnMik7
CisjZWxzZQogICAgIGF1dG8gdGFibGVUYWdzID0gYWRvcHRDRihDVEZvbnRDb3B5QXZhaWxhYmxl
VGFibGVzKGN0Rm9udCwga0NURm9udFRhYmxlT3B0aW9uTm9PcHRpb25zKSk7CiAgICAgaWYgKCF0
YWJsZVRhZ3MpCiAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTEzMiw2ICsxMzksNyBAQCBib29s
IGZvbnRIYXNFaXRoZXJUYWJsZShDVEZvbnRSZWYgY3RGb250LCB1bnNpZ25lZCB0YWJsZVRhZzEs
IHVuc2lnbmVkIHRhYmxlVGFnMgogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogICAg
IHJldHVybiBmYWxzZTsKKyNlbmRpZgogfQogCiB2b2lkIEZvbnQ6OnBsYXRmb3JtSW5pdCgpCg==
</data>
<flag name="review"
          id="461413"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>