mirror of
https://github.com/obsproject/obs-studio.git
synced 2026-09-19 09:41:32 +08:00
Fix crash when closing windows via the X title bar button
On OSX clicking the X title bar button immediately destroys "all" native windows (after sending a close event) which causes [NSSurface _disposeSurface] to crash if invoked while GL is using the surface
This commit is contained in:
@@ -21,6 +21,7 @@
|
||||
#include "qt-wrappers.hpp"
|
||||
#include "display-helpers.hpp"
|
||||
|
||||
#include <QCloseEvent>
|
||||
#include <QScreen>
|
||||
#include <QWindow>
|
||||
|
||||
@@ -109,6 +110,18 @@ void OBSBasicProperties::timerEvent(QTimerEvent *event)
|
||||
}
|
||||
}
|
||||
|
||||
void OBSBasicProperties::closeEvent(QCloseEvent *event)
|
||||
{
|
||||
QDialog::closeEvent(event);
|
||||
if (!event->isAccepted())
|
||||
return;
|
||||
|
||||
// remove draw callback in case our drawable surfaces go away before
|
||||
// the destructor gets called
|
||||
obs_display_remove_draw_callback(display,
|
||||
OBSBasicProperties::DrawPreview, this);
|
||||
}
|
||||
|
||||
void OBSBasicProperties::Init()
|
||||
{
|
||||
gs_init_data init_data = {};
|
||||
|
||||
Reference in New Issue
Block a user