diff --git a/src/Avalonia.Base/Utilities/KeywordParser.cs b/src/Avalonia.Base/Utilities/KeywordParser.cs index 34e1ea6f8e..16ef95f5f4 100644 --- a/src/Avalonia.Base/Utilities/KeywordParser.cs +++ b/src/Avalonia.Base/Utilities/KeywordParser.cs @@ -17,6 +17,8 @@ namespace Avalonia.Utilities var ws = r.PeekWhitespace(); var chars = r.TryPeek(ws.Length + keyword.Length); + if (chars.IsEmpty) + return -1; if (SpanEquals(chars.Slice(ws.Length), keyword.AsSpan())) return chars.Length; return -1; diff --git a/src/Markup/Avalonia.Markup.Xaml/XamlIl/CompilerExtensions/Transformers/AvaloniaXamlIlPropertyPathTransformer.cs b/src/Markup/Avalonia.Markup.Xaml/XamlIl/CompilerExtensions/Transformers/AvaloniaXamlIlPropertyPathTransformer.cs index 99ba264214..1d2a4ea50b 100644 --- a/src/Markup/Avalonia.Markup.Xaml/XamlIl/CompilerExtensions/Transformers/AvaloniaXamlIlPropertyPathTransformer.cs +++ b/src/Markup/Avalonia.Markup.Xaml/XamlIl/CompilerExtensions/Transformers/AvaloniaXamlIlPropertyPathTransformer.cs @@ -17,7 +17,8 @@ namespace Avalonia.Markup.Xaml.XamlIl.CompilerExtensions.Transformers if (node is XamlIlAstXamlPropertyValueNode pv && pv.Values.Count == 1 && pv.Values[0] is XamlIlAstTextNode text - && pv.Property.GetClrProperty().Getter.ReturnType.Equals(context.GetAvaloniaTypes().PropertyPath) + && pv.Property.GetClrProperty().Getter?.ReturnType + .Equals(context.GetAvaloniaTypes().PropertyPath) == true ) { var parentScope = context.ParentNodes().OfType()