From fd29d68c162261b35bbfa25f4185e24ef5f4f5cb Mon Sep 17 00:00:00 2001 From: FBLite Revert Bot Date: Tue, 17 Jun 2025 14:33:32 -0700 Subject: [PATCH] Revert D76793705: Fix possible invalid measurements when width or height is zero pixels Differential Revision: D76793705 Original commit changeset: ea4c00e68891 Original Phabricator Diff: D76793705 fbshipit-source-id: 95d6b66ab08e073da9fb07fd4094a7e30e2f453b --- .../yoga/yoga/algorithm/CalculateLayout.cpp | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/packages/react-native/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp b/packages/react-native/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp index bdc75fa8655..36184745e2c 100644 --- a/packages/react-native/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +++ b/packages/react-native/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp @@ -415,12 +415,6 @@ static void measureNodeWithoutChildren( Dimension::Height); } -inline bool isFixedSize(float dim, SizingMode sizingMode) { - return yoga::isDefined(dim) && - (sizingMode == SizingMode::StretchFit || - (sizingMode == SizingMode::FitContent && dim <= 0.0)); -} - static bool measureNodeWithFixedSize( yoga::Node* const node, const Direction direction, @@ -430,8 +424,12 @@ static bool measureNodeWithFixedSize( const SizingMode heightSizingMode, const float ownerWidth, const float ownerHeight) { - if (isFixedSize(availableWidth, widthSizingMode) && - isFixedSize(availableHeight, heightSizingMode)) { + if ((yoga::isDefined(availableWidth) && + widthSizingMode == SizingMode::FitContent && availableWidth <= 0.0f) || + (yoga::isDefined(availableHeight) && + heightSizingMode == SizingMode::FitContent && availableHeight <= 0.0f) || + (widthSizingMode == SizingMode::StretchFit && + heightSizingMode == SizingMode::StretchFit)) { node->setLayoutMeasuredDimension( boundAxis( node,