Browse Source

Fix infinity checks.

Misread `std::isfinite` in C++ code as `std::infinite`, ha.
pull/2603/head
Steven Kirk 7 years ago
parent
commit
20a49c713d
  1. 2
      src/Avalonia.Controls/Repeaters/FlowLayoutAlgorithm.cs
  2. 2
      src/Avalonia.Controls/Repeaters/StackLayout.cs

2
src/Avalonia.Controls/Repeaters/FlowLayoutAlgorithm.cs

@ -337,7 +337,7 @@ namespace Avalonia.Controls.Repeaters
// Does not fit, wrap to the previous row
var availableSizeMinor = _orientation.Minor(availableSize);
_orientation.SetMinorStart(ref currentBounds, double.IsInfinity(availableSizeMinor) ? availableSizeMinor - _orientation.Minor(desiredSize) : 0);
_orientation.SetMinorStart(ref currentBounds, !double.IsInfinity(availableSizeMinor) ? availableSizeMinor - _orientation.Minor(desiredSize) : 0);
_orientation.SetMajorStart(ref currentBounds, lineOffset - _orientation.Major(desiredSize) - lineSpacing);
if (lineNeedsReposition)

2
src/Avalonia.Controls/Repeaters/StackLayout.cs

@ -97,7 +97,7 @@ namespace Avalonia.Controls.Repeaters
{
var measureSizeMinor = _orientation.Minor(measureSize);
return _orientation.MinorMajorSize(
double.IsInfinity(measureSizeMinor) ?
!double.IsInfinity(measureSizeMinor) ?
Math.Max(measureSizeMinor, _orientation.Minor(desiredSize)) :
_orientation.Minor(desiredSize),
_orientation.Major(desiredSize));

Loading…
Cancel
Save