Browse Source

Merge pull request #2703 from dogmaphobic/detectInstance

Detect running instance and prevent loading second instance.
QGC4.4
Don Gagne 9 years ago
parent
commit
5819709fb9
  1. 12
      src/main.cc

12
src/main.cc

@ -35,6 +35,8 @@ This file is part of the QGROUNDCONTROL project
#include "QGCApplication.h" #include "QGCApplication.h"
#define SINGLE_INSTANCE_PORT 14499
#ifndef __mobile__ #ifndef __mobile__
#include "QGCSerialPortInfo.h" #include "QGCSerialPortInfo.h"
#endif #endif
@ -119,6 +121,16 @@ jint JNI_OnLoad(JavaVM* vm, void* reserved)
int main(int argc, char *argv[]) int main(int argc, char *argv[])
{ {
#ifndef __mobile__
//-- Test for another instance already running. If that's the case, we simply exit.
QHostAddress host("127.0.0.1");
QUdpSocket socket;
if(!socket.bind(host, SINGLE_INSTANCE_PORT, QAbstractSocket::DontShareAddress)) {
qWarning() << "Another instance already running. Exiting.";
exit(-1);
}
#endif
#ifdef Q_OS_MAC #ifdef Q_OS_MAC
#ifndef __ios__ #ifndef __ios__
// Prevent Apple's app nap from screwing us over // Prevent Apple's app nap from screwing us over

Loading…
Cancel
Save