<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[280078] trunk</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/280078">280078</a></dd>
<dt>Author</dt> <dd>zsun@igalia.com</dd>
<dt>Date</dt> <dd>2021-07-20 04:26:28 -0700 (Tue, 20 Jul 2021)</dd>
</dl>

<h3>Log Message</h3>
<pre>Images as grid items should use the overridingLogicalWidth when defined to compute the logical Height
https://bugs.webkit.org/show_bug.cgi?id=228022

Reviewed by Javier Fernandez.

LayoutTests/imported/w3c:

Update test expectations as the sub-tests are now passing.

* web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-029-expected.txt:
* web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-030-expected.txt:
* web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-031-expected.txt:
* web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-035-expected.txt:
* web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-036-expected.txt:

Source/WebCore:

When computing the logical height using an intrinsic aspect ratio, RenderReplaced should use the
overridingLogicalWidth whenever defined just as how it does for flex items. This change is to
replace the use of intrinsic (non-stretched) logical width in current code with the overridingLogicalWidth.

The current code doesn't set overringLogicalWidth while the width changes while stretches along Row Axis.
This change adds the logic in.

* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::applyStretchAlignmentToChildIfNeeded):
* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::computeReplacedLogicalHeight const):

LayoutTests:

Update TestExpectations as 3 failed grid WPT tests are now passing.

* TestExpectations:</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsTestExpectations">trunk/LayoutTests/TestExpectations</a></li>
<li><a href="#trunkLayoutTestsimportedw3cChangeLog">trunk/LayoutTests/imported/w3c/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssgridalignmentgridalignmentimpliessizechange029expectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-029-expected.txt</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssgridalignmentgridalignmentimpliessizechange030expectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-030-expected.txt</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssgridalignmentgridalignmentimpliessizechange031expectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-031-expected.txt</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssgridalignmentgridalignmentimpliessizechange035expectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-035-expected.txt</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssgridalignmentgridalignmentimpliessizechange036expectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-036-expected.txt</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderGridcpp">trunk/Source/WebCore/rendering/RenderGrid.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderReplacedcpp">trunk/Source/WebCore/rendering/RenderReplaced.cpp</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (280077 => 280078)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog      2021-07-20 11:08:00 UTC (rev 280077)
+++ trunk/LayoutTests/ChangeLog 2021-07-20 11:26:28 UTC (rev 280078)
</span><span class="lines">@@ -1,3 +1,14 @@
</span><ins>+2021-07-20  Ziran Sun  <zsun@igalia.com>
+
+        Images as grid items should use the overridingLogicalWidth when defined to compute the logical Height
+        https://bugs.webkit.org/show_bug.cgi?id=228022
+
+        Reviewed by Javier Fernandez.
+
+        Update TestExpectations as 3 failed grid WPT tests are now passing.
+
+        * TestExpectations:
+
</ins><span class="cx"> 2021-07-20  Rob Buis  <rbuis@igalia.com>
</span><span class="cx"> 
</span><span class="cx">         Fix grid aspect-ratio tests
</span></span></pre></div>
<a id="trunkLayoutTestsTestExpectations"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/TestExpectations (280077 => 280078)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/TestExpectations       2021-07-20 11:08:00 UTC (rev 280077)
+++ trunk/LayoutTests/TestExpectations  2021-07-20 11:26:28 UTC (rev 280078)
</span><span class="lines">@@ -1443,9 +1443,6 @@
</span><span class="cx"> imported/w3c/web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-015.html [ Pass Failure ]
</span><span class="cx"> webkit.org/b/216146 imported/w3c/web-platform-tests/css/css-grid/alignment/grid-baseline-align-001.html [ ImageOnlyFailure ]
</span><span class="cx"> webkit.org/b/216146 imported/w3c/web-platform-tests/css/css-grid/alignment/grid-baseline-justify-001.html [ ImageOnlyFailure ]
</span><del>-imported/w3c/web-platform-tests/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-002.html [ ImageOnlyFailure ]
-imported/w3c/web-platform-tests/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-007.html [ ImageOnlyFailure ]
-imported/w3c/web-platform-tests/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-008.html [ ImageOnlyFailure ]
</del><span class="cx"> 
</span><span class="cx"> imported/w3c/web-platform-tests/css/css-grid/grid-definition/grid-auto-repeat-aspect-ratio-001.html [ ImageOnlyFailure ]
</span><span class="cx"> imported/w3c/web-platform-tests/css/css-grid/grid-definition/grid-auto-repeat-aspect-ratio-002.html [ ImageOnlyFailure ]
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/ChangeLog (280077 => 280078)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/ChangeLog 2021-07-20 11:08:00 UTC (rev 280077)
+++ trunk/LayoutTests/imported/w3c/ChangeLog    2021-07-20 11:26:28 UTC (rev 280078)
</span><span class="lines">@@ -1,3 +1,18 @@
</span><ins>+2021-07-20  Ziran Sun  <zsun@igalia.com>
+
+        Images as grid items should use the overridingLogicalWidth when defined to compute the logical Height
+        https://bugs.webkit.org/show_bug.cgi?id=228022
+
+        Reviewed by Javier Fernandez.
+
+        Update test expectations as the sub-tests are now passing.
+
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-029-expected.txt:
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-030-expected.txt:
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-031-expected.txt:
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-035-expected.txt:
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-036-expected.txt:
+
</ins><span class="cx"> 2021-07-20  Rob Buis  <rbuis@igalia.com>
</span><span class="cx"> 
</span><span class="cx">         Fix grid aspect-ratio tests
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssgridalignmentgridalignmentimpliessizechange029expectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-029-expected.txt (280077 => 280078)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-029-expected.txt     2021-07-20 11:08:00 UTC (rev 280077)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-029-expected.txt        2021-07-20 11:26:28 UTC (rev 280078)
</span><span class="lines">@@ -1,7 +1,5 @@
</span><span class="cx"> 
</span><span class="cx"> 
</span><del>-FAIL .before 1 assert_equals:
-<img id="item" src="support/100x100-green.png" class=" before" data-expected-width="200" data-expected-height="200">
-height expected 200 but got 100
</del><ins>+PASS .before 1
</ins><span class="cx"> PASS .after 2
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssgridalignmentgridalignmentimpliessizechange030expectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-030-expected.txt (280077 => 280078)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-030-expected.txt     2021-07-20 11:08:00 UTC (rev 280077)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-030-expected.txt        2021-07-20 11:26:28 UTC (rev 280078)
</span><span class="lines">@@ -1,7 +1,5 @@
</span><span class="cx"> 
</span><span class="cx"> 
</span><span class="cx"> PASS .before 1
</span><del>-FAIL .after 2 assert_equals:
-<img id="item" src="support/100x100-green.png" class=" before after" data-expected-width="200" data-expected-height="200">
-height expected 200 but got 100
</del><ins>+PASS .after 2
</ins><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssgridalignmentgridalignmentimpliessizechange031expectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-031-expected.txt (280077 => 280078)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-031-expected.txt     2021-07-20 11:08:00 UTC (rev 280077)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-031-expected.txt        2021-07-20 11:26:28 UTC (rev 280078)
</span><span class="lines">@@ -1,7 +1,5 @@
</span><span class="cx"> 
</span><span class="cx"> 
</span><del>-FAIL .before 1 assert_equals:
-<img id="item" src="support/100x100-green.png" class=" before" data-expected-width="200" data-expected-height="200">
-height expected 200 but got 100
</del><ins>+PASS .before 1
</ins><span class="cx"> PASS .after 2
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssgridalignmentgridalignmentimpliessizechange035expectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-035-expected.txt (280077 => 280078)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-035-expected.txt     2021-07-20 11:08:00 UTC (rev 280077)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-035-expected.txt        2021-07-20 11:26:28 UTC (rev 280078)
</span><span class="lines">@@ -1,7 +1,5 @@
</span><span class="cx"> 
</span><span class="cx"> 
</span><span class="cx"> PASS .before 1
</span><del>-FAIL .after 2 assert_equals:
-<img id="item" src="support/100x100-green.png" class=" before after" data-expected-width="80" data-expected-height="80">
-height expected 80 but got 100
</del><ins>+PASS .after 2
</ins><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssgridalignmentgridalignmentimpliessizechange036expectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-036-expected.txt (280077 => 280078)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-036-expected.txt     2021-07-20 11:08:00 UTC (rev 280077)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-036-expected.txt        2021-07-20 11:26:28 UTC (rev 280078)
</span><span class="lines">@@ -1,7 +1,5 @@
</span><span class="cx"> 
</span><span class="cx"> 
</span><del>-FAIL .before 1 assert_equals:
-<img id="item" src="support/100x100-green.png" class=" before" data-expected-width="80" data-expected-height="80">
-height expected 80 but got 100
</del><ins>+PASS .before 1
</ins><span class="cx"> PASS .after 2
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (280077 => 280078)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog   2021-07-20 11:08:00 UTC (rev 280077)
+++ trunk/Source/WebCore/ChangeLog      2021-07-20 11:26:28 UTC (rev 280078)
</span><span class="lines">@@ -1,3 +1,22 @@
</span><ins>+2021-07-20  Ziran Sun  <zsun@igalia.com>
+
+        Images as grid items should use the overridingLogicalWidth when defined to compute the logical Height
+        https://bugs.webkit.org/show_bug.cgi?id=228022
+
+        Reviewed by Javier Fernandez.
+
+        When computing the logical height using an intrinsic aspect ratio, RenderReplaced should use the
+        overridingLogicalWidth whenever defined just as how it does for flex items. This change is to
+        replace the use of intrinsic (non-stretched) logical width in current code with the overridingLogicalWidth.
+
+        The current code doesn't set overringLogicalWidth while the width changes while stretches along Row Axis.
+        This change adds the logic in.
+                
+        * rendering/RenderGrid.cpp:
+        (WebCore::RenderGrid::applyStretchAlignmentToChildIfNeeded):
+        * rendering/RenderReplaced.cpp:
+        (WebCore::RenderReplaced::computeReplacedLogicalHeight const):
+
</ins><span class="cx"> 2021-07-20  Rob Buis  <rbuis@igalia.com>
</span><span class="cx"> 
</span><span class="cx">         Fix grid aspect-ratio tests
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderGridcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderGrid.cpp (280077 => 280078)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderGrid.cpp    2021-07-20 11:08:00 UTC (rev 280077)
+++ trunk/Source/WebCore/rendering/RenderGrid.cpp       2021-07-20 11:26:28 UTC (rev 280078)
</span><span class="lines">@@ -1149,12 +1149,15 @@
</span><span class="cx"> void RenderGrid::applyStretchAlignmentToChildIfNeeded(RenderBox& child)
</span><span class="cx"> {
</span><span class="cx">     ASSERT(child.overridingContainingBlockContentLogicalHeight());
</span><ins>+    ASSERT(child.overridingContainingBlockContentLogicalWidth());
</ins><span class="cx"> 
</span><del>-    // We clear height override values because we will decide now whether it's allowed or
</del><ins>+    // We clear height and width override values because we will decide now whether it's allowed or
</ins><span class="cx">     // not, evaluating the conditions which might have changed since the old values were set.
</span><span class="cx">     child.clearOverridingLogicalHeight();
</span><ins>+    child.clearOverridingLogicalWidth();
</ins><span class="cx"> 
</span><span class="cx">     GridTrackSizingDirection childBlockDirection = GridLayoutFunctions::flowAwareDirectionForChild(*this, child, ForRows);
</span><ins>+    GridTrackSizingDirection childInlineDirection = GridLayoutFunctions::flowAwareDirectionForChild(*this, child, ForColumns);
</ins><span class="cx">     bool blockFlowIsColumnAxis = childBlockDirection == ForRows;
</span><span class="cx">     bool allowedToStretchChildBlockSize = blockFlowIsColumnAxis ? allowedToStretchChildAlongColumnAxis(child) : allowedToStretchChildAlongRowAxis(child);
</span><span class="cx">     if (allowedToStretchChildBlockSize && !aspectRatioPrefersInline(child, blockFlowIsColumnAxis)) {
</span><span class="lines">@@ -1170,7 +1173,15 @@
</span><span class="cx">             child.setLogicalHeight(0_lu);
</span><span class="cx">             child.setNeedsLayout(MarkOnlyThis);
</span><span class="cx">         }
</span><del>-    }
</del><ins>+    } else if (!allowedToStretchChildBlockSize && allowedToStretchChildAlongRowAxis(child)) {
+        LayoutUnit stretchedLogicalWidth = availableAlignmentSpaceForChildBeforeStretching(GridLayoutFunctions::overridingContainingBlockContentSizeForChild(child, childInlineDirection).value(), child);
+        LayoutUnit desiredLogicalWidth = constrainLogicalWidthInFragmentByMinMax(stretchedLogicalWidth, contentWidth(), *this, nullptr);
+        child.setOverridingLogicalWidth(desiredLogicalWidth);
+        if (desiredLogicalWidth != child.logicalWidth()) {
+            child.setLogicalWidth(0_lu);
+            child.setNeedsLayout(MarkOnlyThis);
+        }
+    } 
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> // FIXME: This logic is shared by RenderFlexibleBox, so it should be moved to RenderBox.
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderReplacedcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderReplaced.cpp (280077 => 280078)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderReplaced.cpp        2021-07-20 11:08:00 UTC (rev 280077)
+++ trunk/Source/WebCore/rendering/RenderReplaced.cpp   2021-07-20 11:26:28 UTC (rev 280078)
</span><span class="lines">@@ -623,7 +623,7 @@
</span><span class="cx">     bool hasIntrinsicWidth = constrainedSize.hasIntrinsicWidth || constrainedSize.width() > 0;
</span><span class="cx"> 
</span><span class="cx">     // See computeReplacedLogicalHeight() for a similar check for heights.
</span><del>-    if (intrinsicRatio && isFlexItem() && hasOverridingLogicalWidth() && hasIntrinsicHeight && hasIntrinsicWidth)
</del><ins>+    if (intrinsicRatio && (isFlexItem() || isGridItem()) && hasOverridingLogicalWidth() && hasIntrinsicHeight && hasIntrinsicWidth)
</ins><span class="cx">         return computeReplacedLogicalHeightRespectingMinMaxHeight(roundToInt(round(overridingContentLogicalWidth() / intrinsicRatio)));
</span><span class="cx"> 
</span><span class="cx">     // If 'height' and 'width' both have computed values of 'auto' and the element also has an intrinsic height, then that intrinsic height is the used value of 'height'.
</span></span></pre>
</div>
</div>

</body>
</html>