<?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>312351</bug_id>
          
          <creation_ts>2026-04-14 23:29:20 -0700</creation_ts>
          <short_desc>Fix crash in FontSelectionAlgorithm when all font faces are penalized</short_desc>
          <delta_ts>2026-04-16 13:26:36 -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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="zak ridouh">zakr</reporter>
          <assigned_to name="Brent Fulgham">bfulgham</assigned_to>
          <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2200519</commentid>
    <comment_count>0</comment_count>
    <who name="zak ridouh">zakr</who>
    <bug_when>2026-04-14 23:29:20 -0700</bug_when>
    <thetext>styleDistance&apos;s axis-mismatch penalty paths returned the requested slope value,
but filterCapability eliminates faces whose slope range doesn&apos;t include that
value. When all faces are penalized (e.g. only italic faces available for an
oblique request), every face gets eliminated, and the next pass crashes on an
empty set.

Fix by returning slope.minimum instead, which is always within the face&apos;s own
range, so at least one face survives filtering.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2200520</commentid>
    <comment_count>1</comment_count>
    <who name="zak ridouh">zakr</who>
    <bug_when>2026-04-14 23:29:51 -0700</bug_when>
    <thetext>&lt;rdar://174644983&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2200529</commentid>
    <comment_count>2</comment_count>
    <who name="zak ridouh">zakr</who>
    <bug_when>2026-04-15 00:06:41 -0700</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/62800</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2200913</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2026-04-15 20:06:52 -0700</bug_when>
    <thetext>Committed 311341@main (47b07ba22fd8): &lt;https://commits.webkit.org/311341@main&gt;

Reviewed commits have been landed. Closing PR #62800 and removing active labels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2201202</commentid>
    <comment_count>4</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2026-04-16 13:26:36 -0700</bug_when>
    <thetext>PR created for the test change: https://github.com/web-platform-tests/wpt/pull/59291</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>