Skip to content
This repository was archived by the owner on May 1, 2024. It is now read-only.

Commit a31ddcf

Browse files
jfversluisrmarinho
andauthored
Fix crash iOS Label measure for RTL languages (#15605)
* Update UIViewExtensions.cs * Add token for provisionator # Conflicts: # build/steps/build-windows.yml * Update Platform.cs (#15601) Co-authored-by: Rui Marinho <[email protected]>
1 parent e1b760f commit a31ddcf

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

Xamarin.Forms.Platform.iOS/Extensions/UIViewExtensions.cs

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,8 +88,18 @@ public static SizeRequest GetSizeRequest(this UIView self, double widthConstrain
8888
else
8989
s = self.FittingSize;
9090
#endif
91-
var request = new Size(s.Width == float.PositiveInfinity ? double.PositiveInfinity : s.Width,
92-
s.Height == float.PositiveInfinity ? double.PositiveInfinity : s.Height);
91+
92+
var width = s.Width;
93+
var height = s.Height;
94+
95+
if (nfloat.IsNaN(width))
96+
width = float.PositiveInfinity;
97+
98+
if (nfloat.IsNaN(height))
99+
height = float.PositiveInfinity;
100+
101+
var request = new Size(width == float.PositiveInfinity ? double.PositiveInfinity : width,
102+
height == float.PositiveInfinity ? double.PositiveInfinity : height);
93103
var minimum = new Size(minimumWidth < 0 ? request.Width : minimumWidth,
94104
minimumHeight < 0 ? request.Height : minimumHeight);
95105
return new SizeRequest(request, minimum);

0 commit comments

Comments
 (0)