X-Git-Url: https://develop.uap-core.de/gitweb/uwplayer.git/blobdiff_plain/848befbcc166fff6fdde6a635cf7a31f9f9185e0..01d5015ba093f8c5fdb18b669943c7da6450e72f:/application/main.c diff --git a/application/main.c b/application/main.c index d8a3b31..422b6ee 100644 --- a/application/main.c +++ b/application/main.c @@ -114,6 +114,26 @@ int main(int argc, char** argv) { open_file_arg = argv[1]; } + // load settings + if(load_config()) { + return 1; + } + + // try single instance open + if(open_file_arg) { + char *instance_path = InstanceFilePath(display); + int instance_fd = ConnectToInstance(instance_path); + free(instance_path); + + if(instance_fd >= 0) { + write(instance_fd, "open ", 5); + write(instance_fd, open_file_arg, strlen(open_file_arg)); + write(instance_fd, "\n", 1); + close(instance_fd); + return 0; + } + } + XtAppAddInput( app, event_pipe[0], @@ -121,11 +141,6 @@ int main(int argc, char** argv) { input_proc, NULL); - // load settings - if(load_config()) { - return 1; - } - MainWindow *window = WindowCreate(display); toplevel_window = window->window;