Ref T739, avoid issues with binding during shutdown

This commit is contained in:
Klaus Basan
2019-10-05 00:22:28 +02:00
committed by Mat Sutcliffe
parent cfead08b13
commit 027dc50b69
2 changed files with 5 additions and 0 deletions

View File

@@ -18,6 +18,8 @@ namespace BlackCore
QString CActionBind::registerAction(const QString &action, const QPixmap &icon)
{
if (!sApp || sApp->isShuttingDown()) return {};
const QString a = CActionBind::normalizeAction(action);
Q_ASSERT_X(sApp && sApp->getInputManager(), Q_FUNC_INFO, "Missing input manager");
sApp->getInputManager()->registerAction(a, icon);

View File

@@ -37,6 +37,9 @@ namespace BlackCore
QObject *parent = nullptr) :
QObject(parent), m_deleteCallback(deleteCallback)
{
// workaround if a binding is taking place in an empty context
if (!sApp || sApp->isShuttingDown()) { return; }
const QString a = CActionBind::registerAction(action, icon);
Q_ASSERT_X(sApp && sApp->getInputManager(), Q_FUNC_INFO, "Missing input manager");
m_index = sApp->getInputManager()->bind(a, receiver, slot);