Browse Source

various fixes

pull/8569/head
Steven He 4 years ago
parent
commit
e5241a59e7
  1. 10
      src/Avalonia.Base/Visual.cs
  2. 7
      src/Avalonia.OpenGL/Controls/OpenGlControlBase.cs

10
src/Avalonia.Base/Visual.cs

@ -667,8 +667,14 @@ namespace Avalonia
if (_visualParent is IRenderRoot || _visualParent?.IsAttachedToVisualTree == true)
{
var root = this.FindAncestorOfType<IRenderRoot>() ??
throw new AvaloniaInternalException("Visual is atached to visual tree but root could not be found.");
var root = this.FindAncestorOfType<IRenderRoot>();
if (root is null)
{
Logger.TryGet(LogEventLevel.Error, "Visual")?.Log("Visual",
"Visual is atached to visual tree but root could not be found.");
return;
}
var e = new VisualTreeAttachmentEventArgs(_visualParent, root);
OnAttachedToVisualTreeCore(e);
}

7
src/Avalonia.OpenGL/Controls/OpenGlControlBase.cs

@ -148,6 +148,13 @@ namespace Avalonia.OpenGL.Controls
return false;
}
if (_context == null)
{
Logger.TryGet(LogEventLevel.Error, "OpenGL")?.Log("OpenGlControlBase",
"Unable to initialize OpenGL: unable to create additional OpenGL context.");
return false;
}
GlVersion = _context.Version;
try
{

Loading…
Cancel
Save