diff options
| author | SulfurNitride <SulfurNitride@users.noreply.github.com> | 2026-05-23 14:32:50 -0500 |
|---|---|---|
| committer | SulfurNitride <SulfurNitride@users.noreply.github.com> | 2026-05-23 14:32:50 -0500 |
| commit | 5891a5feabdd768a3e649ff6087fac9c42b129cc (patch) | |
| tree | 1958219d71fba7944b0fe4455c82ad389d7ce549 /src | |
| parent | 523aa754ee3d6700f9b828f4f55a4fce9018f06f (diff) | |
startup: clarify invalid instance recovery
Diffstat (limited to 'src')
| -rw-r--r-- | src/src/instancemanager.cpp | 5 | ||||
| -rw-r--r-- | src/src/moapplication.cpp | 27 |
2 files changed, 3 insertions, 29 deletions
diff --git a/src/src/instancemanager.cpp b/src/src/instancemanager.cpp index 35a15df..066c0bd 100644 --- a/src/src/instancemanager.cpp +++ b/src/src/instancemanager.cpp @@ -936,8 +936,9 @@ SetupInstanceResults setupInstance(Instance& instance, PluginContainer& pc) reportError( QObject::tr( "Cannot open instance '%1', the game directory '%2' doesn't exist or " - "the game plugin '%3' doesn't recognize it. Select the game managed " - "by this instance.") + "the game plugin '%3' doesn't recognize it. If the game was moved, " + "browse to the current install folder. If it is no longer installed, " + "select another instance.") .arg(instance.displayName()) .arg(instance.gameDirectory()) .arg(instance.gameName())); diff --git a/src/src/moapplication.cpp b/src/src/moapplication.cpp index 7216e7c..f130881 100644 --- a/src/src/moapplication.cpp +++ b/src/src/moapplication.cpp @@ -56,7 +56,6 @@ along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>. #include <report.h> #include <scopeguard.h> #include <utility.h> -#include <cstdio> using namespace MOBase; using namespace MOShared; @@ -268,8 +267,6 @@ void MOApplication::firstTimeSetup(MOMultiProcess& multiProcess) int MOApplication::setup(MOMultiProcess& multiProcess, bool forceSelect) { TimeThis tt("MOApplication setup()"); - std::fprintf(stderr, "[setup-diag] setup() entered\n"); - std::fflush(stderr); // makes plugin data path available to plugins, see // IOrganizer::getPluginDataPath() @@ -278,14 +275,8 @@ int MOApplication::setup(MOMultiProcess& multiProcess, bool forceSelect) // figuring out the current instance m_instance = getCurrentInstance(forceSelect); if (!m_instance) { - std::fprintf(stderr, "[setup-diag] getCurrentInstance() returned null\n"); - std::fflush(stderr); return 1; } - std::fprintf(stderr, "[setup-diag] instance dir='%s' ini='%s'\n", - qUtf8Printable(m_instance->directory()), - qUtf8Printable(m_instance->iniPath())); - std::fflush(stderr); // first time the data path is available, set the global property and log // directory, then log a bunch of debug stuff @@ -293,15 +284,10 @@ int MOApplication::setup(MOMultiProcess& multiProcess, bool forceSelect) setProperty("dataPath", dataPath); if (!setLogDirectory(dataPath)) { - std::fprintf(stderr, "[setup-diag] setLogDirectory() failed for '%s'\n", - qUtf8Printable(dataPath)); - std::fflush(stderr); reportError(tr("Failed to create log folder.")); InstanceManager::singleton().clearCurrentInstance(); return 1; } - std::fprintf(stderr, "[setup-diag] setLogDirectory() ok\n"); - std::fflush(stderr); log::debug("command line: '{}'", QCoreApplication::arguments().join(' ')); @@ -327,9 +313,6 @@ int MOApplication::setup(MOMultiProcess& multiProcess, bool forceSelect) // loading settings m_settings.reset(new Settings(m_instance->iniPath(), true)); - std::fprintf(stderr, "[setup-diag] settings loaded from '%s'\n", - qUtf8Printable(m_instance->iniPath())); - std::fflush(stderr); log::getDefault().setLevel(m_settings->diagnostics().logLevel()); log::debug("using ini at '{}'", m_settings->filename()); @@ -366,28 +349,18 @@ int MOApplication::setup(MOMultiProcess& multiProcess, bool forceSelect) log::debug("initializing core"); m_core.reset(new OrganizerCore(*m_settings)); - std::fprintf(stderr, "[setup-diag] organizer core constructed\n"); - std::fflush(stderr); if (!m_core->bootstrap()) { - std::fprintf(stderr, "[setup-diag] organizer core bootstrap failed\n"); - std::fflush(stderr); reportError(tr("Failed to set up data paths.")); InstanceManager::singleton().clearCurrentInstance(); return 1; } - std::fprintf(stderr, "[setup-diag] organizer core bootstrap ok\n"); - std::fflush(stderr); // plugins tt.start("MOApplication::doOneRun() plugins"); log::debug("initializing plugins"); m_plugins = std::make_unique<PluginContainer>(m_core.get()); - std::fprintf(stderr, "[setup-diag] plugin container constructed, loading plugins...\n"); - std::fflush(stderr); m_plugins->loadPlugins(); - std::fprintf(stderr, "[setup-diag] plugin loading finished\n"); - std::fflush(stderr); log::debug("all plugins loaded"); // instance |
