mirror of
https://thingvellir.net/git/overte
synced 2025-03-27 23:52:03 +01:00
Merge pull request #705 from daleglass-overte/fix-plugin-crash
Fix crash when starting with --display, --disable-displays or --disable-inputs
This commit is contained in:
commit
d1cbfa8838
1 changed files with 16 additions and 13 deletions
|
@ -763,19 +763,7 @@ bool setupEssentials(int& argc, char** argv, const QCommandLineParser& parser, b
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Tell the plugin manager about our statically linked plugins
|
|
||||||
DependencyManager::set<ScriptInitializers>();
|
|
||||||
DependencyManager::set<PluginManager>();
|
|
||||||
auto pluginManager = PluginManager::getInstance();
|
|
||||||
pluginManager->setInputPluginProvider([] { return getInputPlugins(); });
|
|
||||||
pluginManager->setDisplayPluginProvider([] { return getDisplayPlugins(); });
|
|
||||||
pluginManager->setInputPluginSettingsPersister([](const InputPluginList& plugins) { saveInputPluginSettings(plugins); });
|
|
||||||
if (auto steamClient = pluginManager->getSteamClientPlugin()) {
|
|
||||||
steamClient->init();
|
|
||||||
}
|
|
||||||
if (auto oculusPlatform = pluginManager->getOculusPlatformPlugin()) {
|
|
||||||
oculusPlatform->init();
|
|
||||||
}
|
|
||||||
|
|
||||||
PROFILE_SET_THREAD_NAME("Main Thread");
|
PROFILE_SET_THREAD_NAME("Main Thread");
|
||||||
|
|
||||||
|
@ -8763,6 +8751,21 @@ void Application::sendLambdaEvent(const std::function<void()>& f) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void Application::initPlugins(const QCommandLineParser& parser) {
|
void Application::initPlugins(const QCommandLineParser& parser) {
|
||||||
|
// Tell the plugin manager about our statically linked plugins
|
||||||
|
DependencyManager::set<ScriptInitializers>();
|
||||||
|
DependencyManager::set<PluginManager>();
|
||||||
|
auto pluginManager = PluginManager::getInstance();
|
||||||
|
pluginManager->setInputPluginProvider([] { return getInputPlugins(); });
|
||||||
|
pluginManager->setDisplayPluginProvider([] { return getDisplayPlugins(); });
|
||||||
|
pluginManager->setInputPluginSettingsPersister([](const InputPluginList& plugins) { saveInputPluginSettings(plugins); });
|
||||||
|
if (auto steamClient = pluginManager->getSteamClientPlugin()) {
|
||||||
|
steamClient->init();
|
||||||
|
}
|
||||||
|
if (auto oculusPlatform = pluginManager->getOculusPlatformPlugin()) {
|
||||||
|
oculusPlatform->init();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
if (parser.isSet("display")) {
|
if (parser.isSet("display")) {
|
||||||
auto preferredDisplays = parser.value("display").split(',', Qt::SkipEmptyParts);
|
auto preferredDisplays = parser.value("display").split(',', Qt::SkipEmptyParts);
|
||||||
qInfo() << "Setting prefered display plugins:" << preferredDisplays;
|
qInfo() << "Setting prefered display plugins:" << preferredDisplays;
|
||||||
|
|
Loading…
Reference in a new issue