Fix negative value rounding issue for nodes across an axis #688

Open
jmaurice-unity wants to merge 3 commits from jmaurice-unity/rounding-nodes-shrink into main

View File

@@ -3701,16 +3701,12 @@ YOGA_EXPORT float YGRoundValueToPixelGrid(
scaledValue = scaledValue - fractial + 1.0; scaledValue = scaledValue - fractial + 1.0;
} else if (forceCeil) { } else if (forceCeil) {
// Next we check if we need to use forced rounding // Next we check if we need to use forced rounding
scaledValue = scaledValue - fractial + 1.0; scaledValue = ceil(scaledValue);
} else if (forceFloor) { } else if (forceFloor) {
scaledValue = scaledValue - fractial; scaledValue = floor(scaledValue);
} else { } else {
// Finally we just round the value // Finally we just round the value
scaledValue = scaledValue - fractial + scaledValue = round(scaledValue);
(!YGDoubleIsUndefined(fractial) &&
(fractial > 0.5 || YGDoubleEqual(fractial, 0.5))
? 1.0
: 0.0);
} }
return (YGDoubleIsUndefined(scaledValue) || return (YGDoubleIsUndefined(scaledValue) ||
YGDoubleIsUndefined(pointScaleFactor)) YGDoubleIsUndefined(pointScaleFactor))