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

Fix some GLXBadDrawable crashes on linux (#1900)

Fixes the crashes on linux when you stop emulation, and when you try to
exit the emulator while a game is running.
Also tested on windows without problems on my side.
Sera 5 лет назад
Родитель
Сommit
2fe3b8e58c
1 измененных файлов с 3 добавлено и 2 удалено
  1. 3 2
      Ryujinx/Ui/MainWindow.cs

+ 3 - 2
Ryujinx/Ui/MainWindow.cs

@@ -593,7 +593,6 @@ namespace Ryujinx.Ui
                     ToggleExtraWidgets(true);
                 }
 
-                _viewBox.Remove(GlRendererWidget);
                 GlRendererWidget.Exit();
 
                 if(GlRendererWidget.Window != Window && GlRendererWidget.Window != null)
@@ -606,6 +605,7 @@ namespace Ryujinx.Ui
                 _windowsMultimediaTimerResolution?.Dispose();
                 _windowsMultimediaTimerResolution = null;
 
+                _viewBox.Remove(GlRendererWidget);
                 _viewBox.Add(_gameTableWindow);
 
                 _gameTableWindow.Expand = true;
@@ -713,6 +713,7 @@ namespace Ryujinx.Ui
 
                     // Wait for the other thread to dispose the HLE context before exiting.
                     _deviceExitStatus.WaitOne();
+                    GlRendererWidget.Dispose();
                 }
             }
 
@@ -1202,4 +1203,4 @@ namespace Ryujinx.Ui
             UpdateGameTable();
         }
     }
-}
+}