fix: Invalid appid

desktop's file `baseName` is not equal to `appid`, we use
getId for appid.
This commit is contained in:
YeShanShan 2023-03-24 17:59:19 +08:00 committed by yeshanshan
parent af8d6d18f9
commit 0e6489a502

View File

@ -383,9 +383,7 @@ bool StartManager::launch(DesktopInfo *info, QString cmdLine, uint32_t timestamp
QProcess process; QProcess process;
QStringList cmdPrefixesEnvs; QStringList cmdPrefixesEnvs;
QStringList envs; QStringList envs;
QString desktopFile(info->getFileName().c_str()); QString appId(QString::fromStdString(info->getId()));
QFileInfo fileInfo(desktopFile);
QString appId = fileInfo.baseName();
bool useProxy = shouldUseProxy(appId); bool useProxy = shouldUseProxy(appId);
for (QString var : QProcess::systemEnvironment()) { for (QString var : QProcess::systemEnvironment()) {
@ -446,7 +444,7 @@ bool StartManager::launch(DesktopInfo *info, QString cmdLine, uint32_t timestamp
exeArgs.removeAt(0); exeArgs.removeAt(0);
} }
qDebug() << "Launching app, desktop: " << desktopFile << " exec: " << exec qDebug() << "Launching app, desktop: " << QString::fromStdString(info->getFileName()) << " exec: " << exec
<< " args: " << exeArgs << " useProxy:" << useProxy << "appid:" << appId; << " args: " << exeArgs << " useProxy:" << useProxy << "appid:" << appId;
process.setProgram(exec); process.setProgram(exec);