diff --git a/src/Avalonia.Visuals/Media/TextFormatting/TextFormatterImpl.cs b/src/Avalonia.Visuals/Media/TextFormatting/TextFormatterImpl.cs
index e65f96bf61..3e85f0f6f0 100644
--- a/src/Avalonia.Visuals/Media/TextFormatting/TextFormatterImpl.cs
+++ b/src/Avalonia.Visuals/Media/TextFormatting/TextFormatterImpl.cs
@@ -47,9 +47,8 @@ namespace Avalonia.Media.TextFormatting
///
/// The text run.
/// The available width.
- /// Index of the textCharacters parent TextRun
///
- internal static int MeasureCharacters(ShapedTextCharacters textCharacters, double availableWidth, int textRunIndex)
+ internal static int MeasureCharacters(ShapedTextCharacters textCharacters, double availableWidth)
{
var glyphRun = textCharacters.GlyphRun;
@@ -74,13 +73,6 @@ namespace Avalonia.Media.TextFormatting
if (currentWidth + advance > availableWidth)
{
- if(glyphCount == 0 && textRunIndex == 0)
- {
- //we need to return at least one characted on the first run
- //or we risk to get a infinity loop when width is less than one character width
- //issue #4806
- glyphCount = 1;
- }
break;
}
@@ -358,7 +350,7 @@ namespace Avalonia.Media.TextFormatting
if (currentWidth + currentRun.Size.Width > availableWidth)
{
- var measuredLength = MeasureCharacters(currentRun, paragraphWidth - currentWidth, runIndex);
+ var measuredLength = MeasureCharacters(currentRun, paragraphWidth - currentWidth);
var breakFound = false;
diff --git a/src/Avalonia.Visuals/Media/TextFormatting/TextLineImpl.cs b/src/Avalonia.Visuals/Media/TextFormatting/TextLineImpl.cs
index aa7759fc16..f5e87d097b 100644
--- a/src/Avalonia.Visuals/Media/TextFormatting/TextLineImpl.cs
+++ b/src/Avalonia.Visuals/Media/TextFormatting/TextLineImpl.cs
@@ -75,7 +75,7 @@ namespace Avalonia.Media.TextFormatting
if (currentWidth > availableWidth)
{
- var measuredLength = TextFormatterImpl.MeasureCharacters(currentRun, availableWidth, runIndex);
+ var measuredLength = TextFormatterImpl.MeasureCharacters(currentRun, availableWidth);
var currentBreakPosition = 0;