Просмотр исходного кода

Fix GTK window crash by using 24 bit surface on unix, 32 bit on windows. (#976)

* Use 24 bit surface on unix, 32 bit on windows.

* Address jd's comment

Co-authored-by: Thomas Guillemard <me@thog.eu>
riperiperi 6 лет назад
Родитель
Сommit
8ce3993afa
1 измененных файлов с 11 добавлено и 1 удалено
  1. 11 1
      Ryujinx/Ui/GLRenderer.cs

+ 11 - 1
Ryujinx/Ui/GLRenderer.cs

@@ -51,7 +51,7 @@ namespace Ryujinx.Ui
         private Input.NpadController _primaryController;
 
         public GLRenderer(Switch device)
-            : base (new GraphicsMode(new ColorFormat()),
+            : base (GetGraphicsMode(),
             3, 3,
             GraphicsContextFlags.ForwardCompatible)
         {
@@ -80,6 +80,16 @@ namespace Ryujinx.Ui
             this.Shown += Renderer_Shown;
         }
 
+        private static GraphicsMode GetGraphicsMode()
+        {
+            if (Environment.OSVersion.Platform == PlatformID.Unix)
+            {
+                return new GraphicsMode(new ColorFormat(24));
+            }
+
+            return new GraphicsMode(new ColorFormat());
+        }
+
         private void GLRenderer_ShuttingDown(object sender, EventArgs args)
         {
             _device.DisposeGpu();