Navigation Menu

Skip to content

Commit

Permalink
Merge branch 'jb53097_simple_fix' into 'master'
Browse files Browse the repository at this point in the history
[launcherlib] Correct single instance code for QML apps. Contributes to JB#53159

See merge request mer-core/mapplauncherd!27
  • Loading branch information
Tomin1 committed Feb 22, 2021
2 parents 46a89c4 + d2ee6f8 commit 3c56c25
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 9 deletions.
13 changes: 5 additions & 8 deletions src/launcherlib/booster.cpp
Expand Up @@ -108,7 +108,7 @@ void Booster::initialize(int initialArgc, char ** initialArgv, int newBoosterLau
SingleInstancePluginEntry * pluginEntry = singleInstance->pluginEntry();
if (pluginEntry)
{
std::string lockedAppName = getFinalFileName();
std::string lockedAppName = getFinalName(m_appData->appName());
if (!pluginEntry->lockFunc(lockedAppName.c_str()))
{
// Try to activate the window of the existing instance
Expand Down Expand Up @@ -437,7 +437,7 @@ void Booster::setEnvironmentBeforeLaunch()
if (!errno && cur_prio < m_appData->priority())
setpriority(PRIO_PROCESS, 0, m_appData->priority());

std::string fileName = getFinalFileName();
std::string fileName = getFinalName(m_appData->fileName());
setCgroup(fileName);

if (!m_appData->isPrivileged()) {
Expand Down Expand Up @@ -620,9 +620,8 @@ void Booster::resetOomAdj()
}
}

std::string Booster::getFinalFileName()
std::string Booster::getFinalName(const std::string &name)
{
std::string name = m_appData->fileName();
if (name == "/usr/bin/sailjail") {
// This doesn't implement sailjail's parsing logic but instead
// has some assumptions about the arguments:
Expand All @@ -642,12 +641,10 @@ std::string Booster::getFinalFileName()
for (int i = 1; i < m_appData->argc(); i++, ptr++) {
if (strcmp(*ptr, "--") == 0) {
if (i+1 < m_appData->argc()) {
name = *(++ptr);
break;
return std::string(*(++ptr));
}
} else if (strncmp(*ptr, "/usr/bin/", 9) == 0) {
name = *ptr;
break;
return std::string(*ptr);
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/launcherlib/booster.h
Expand Up @@ -195,7 +195,7 @@ class DECL_EXPORT Booster
void* loadMain();

//! Helper method: returns application name for to use for locking etc.
std::string getFinalFileName();
std::string getFinalName(const std::string &name);

//! Socket connection to invoker
Connection* m_connection;
Expand Down

0 comments on commit 3c56c25

Please sign in to comment.