From 8447a661bdfbf398db43e342f7a9a8260d99f429 Mon Sep 17 00:00:00 2001 From: Memphiz Date: Sat, 9 Jul 2016 23:37:48 +0200 Subject: [XBMCHelper] - ensure only one instance is started --- tools/EventClients/Clients/OSXRemote/xbmchelper_main.mm | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'tools/EventClients') diff --git a/tools/EventClients/Clients/OSXRemote/xbmchelper_main.mm b/tools/EventClients/Clients/OSXRemote/xbmchelper_main.mm index 5afb5ec6ab..2a4d8067ad 100644 --- a/tools/EventClients/Clients/OSXRemote/xbmchelper_main.mm +++ b/tools/EventClients/Clients/OSXRemote/xbmchelper_main.mm @@ -6,6 +6,7 @@ #include #include #include +#include using namespace std; @@ -214,6 +215,13 @@ void Reconfigure(int nSignal) int main (int argc, char * argv[]) { NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init]; + int instanceLockFile = open("/tmp/xbmchelper.lock", O_CREAT | O_APPEND, S_IRUSR | S_IWUSR); + if (flock(instanceLockFile, LOCK_EX | LOCK_NB) != 0) + { + NSLog(@"Already running - exiting ..."); + return 0; + } + ParseOptions(argc,argv); NSLog(@"%s %s starting up...", PROGNAME, PROGVERS); -- cgit v1.2.3