Fix logging initial working directory when TelegramForcePortable exists

This commit is contained in:
Ilya Fedin 2023-08-14 09:26:39 +04:00 committed by John Preston
parent c5424d0a9a
commit cc19928977
3 changed files with 10 additions and 4 deletions

View file

@ -291,7 +291,8 @@ Launcher::Launcher(int argc, char *argv[])
: _argc(argc) : _argc(argc)
, _argv(argv) , _argv(argv)
, _arguments(readArguments(_argc, _argv)) , _arguments(readArguments(_argc, _argv))
, _baseIntegration(_argc, _argv) { , _baseIntegration(_argc, _argv)
, _initialWorkingDir(QDir::currentPath() + '/') {
crl::toggle_fp_exceptions(true); crl::toggle_fp_exceptions(true);
base::Integration::Set(&_baseIntegration); base::Integration::Set(&_baseIntegration);
@ -446,6 +447,10 @@ const QStringList &Launcher::arguments() const {
return _arguments; return _arguments;
} }
QString Launcher::initialWorkingDir() const {
return _initialWorkingDir;
}
bool Launcher::customWorkingDir() const { bool Launcher::customWorkingDir() const {
return !_customWorkingDir.isEmpty(); return !_customWorkingDir.isEmpty();
} }

View file

@ -29,6 +29,7 @@ public:
virtual int exec(); virtual int exec();
const QStringList &arguments() const; const QStringList &arguments() const;
QString initialWorkingDir() const;
bool customWorkingDir() const; bool customWorkingDir() const;
uint64 installationTag() const; uint64 installationTag() const;
@ -84,6 +85,7 @@ private:
QStringList _arguments; QStringList _arguments;
BaseIntegration _baseIntegration; BaseIntegration _baseIntegration;
QString _initialWorkingDir;
QString _customWorkingDir; QString _customWorkingDir;
}; };

View file

@ -351,7 +351,6 @@ void start() {
return; return;
} }
auto initialWorkingDir = QDir(cWorkingDir()).absolutePath() + '/';
auto moveOldDataFrom = QString(); auto moveOldDataFrom = QString();
auto workingDirChosen = false; auto workingDirChosen = false;
@ -373,7 +372,7 @@ void start() {
} }
#if !defined Q_OS_MAC && !defined _DEBUG // fix first version #if !defined Q_OS_MAC && !defined _DEBUG // fix first version
moveOldDataFrom = initialWorkingDir; moveOldDataFrom = launcher.initialWorkingDir();
#endif // !Q_OS_MAC && !_DEBUG #endif // !Q_OS_MAC && !_DEBUG
#elif defined Q_OS_WINRT // Q_OS_UNIX #elif defined Q_OS_WINRT // Q_OS_UNIX
@ -432,7 +431,7 @@ void start() {
).arg(cAlphaVersion() ).arg(cAlphaVersion()
).arg(Logs::b(DebugEnabled()))); ).arg(Logs::b(DebugEnabled())));
LOG(("Executable dir: %1, name: %2").arg(cExeDir(), cExeName())); LOG(("Executable dir: %1, name: %2").arg(cExeDir(), cExeName()));
LOG(("Initial working dir: %1").arg(initialWorkingDir)); LOG(("Initial working dir: %1").arg(launcher.initialWorkingDir()));
LOG(("Working dir: %1").arg(cWorkingDir())); LOG(("Working dir: %1").arg(cWorkingDir()));
LOG(("Command line: %1").arg(launcher.arguments().join(' '))); LOG(("Command line: %1").arg(launcher.arguments().join(' ')));