Skip to content

Commit

Permalink
Merge pull request #139 from mklein-de/appimage-executable-path
Browse files Browse the repository at this point in the history
Added support for _AppImage_ dynamic executable paths. - _Michael Klein_
  • Loading branch information
itay-grudev authored Sep 20, 2021
2 parents d5b3852 + 9856ade commit 5fec2df
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 1 deletion.
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,11 @@ Changelog
If by accident I have forgotten to credit someone in the CHANGELOG, email me and I will fix it.


__3.3.1__
---------

* Added support for _AppImage_ dynamic executable paths. - _Michael Klein_

__3.3.0__
---------

Expand Down
11 changes: 10 additions & 1 deletion singleapplication_p.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -144,8 +144,17 @@ void SingleApplicationPrivate::genBlockServerName()
}

if( ! (options & SingleApplication::Mode::ExcludeAppPath) ){
#ifdef Q_OS_WIN
#if defined(Q_OS_WIN)
appData.addData( SingleApplication::app_t::applicationFilePath().toLower().toUtf8() );
#elif defined(Q_OS_LINUX)
// If the application is running as an AppImage then the APPIMAGE env var should be used
// instead of applicationPath() as each instance is launched with its own executable path
const QByteArray appImagePath = qgetenv( "APPIMAGE" );
if( appImagePath.isEmpty() ){ // Not running as AppImage: use path to executable file
appData.addData( SingleApplication::app_t::applicationFilePath().toUtf8() );
} else { // Running as AppImage: Use absolute path to AppImage file
appData.addData( appImagePath );
};
#else
appData.addData( SingleApplication::app_t::applicationFilePath().toUtf8() );
#endif
Expand Down

0 comments on commit 5fec2df

Please sign in to comment.