Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int cmd_main(int argc, char *argv[]) {
- @autoreleasepool {
- NSMutableDictionary* userInfo = [NSMutableDictionary dictionaryWithCapacity:1];
- NSMutableDictionary* argsInfo = [NSMutableDictionary dictionaryWithCapacity:1];
- for (int i=0; i<argc; i++) {
- char buf[NAME_MAX];
- realpath(argv[i], buf);
- [argsInfo setObject:[NSString stringWithUTF8String:buf]
- forKey:[NSString stringWithFormat:@"%d", i]];
- }
- [userInfo setObject:[NSString stringWithFormat:@"%d", argc] forKey:@"argc"];
- [userInfo setObject:argsInfo forKey:@"args"];
- NSDistributedNotificationCenter *notc = [NSDistributedNotificationCenter defaultCenter];
- [notc postNotificationName:@"xqiv-cmd"
- object:nil
- userInfo:userInfo
- deliverImmediately:YES];
- }
- return 0;
- }
- int main(int argc, char *argv[])
- {
- @autoreleasepool {
- NSWorkspace *ws = [NSWorkspace sharedWorkspace];
- NSArray *apps = [ws runningApplications];
- int i = 0;
- NSRunningApplication *xqiv = [NSRunningApplication currentApplication];
- NSString *project_id = @"cz.smrt28.xqiv";
- for (NSRunningApplication *app in apps) {
- NSString *appId = [app bundleIdentifier];
- if ([project_id isEqualToString:appId]) {
- return cmd_main(argc, argv);
- }
- }
- }
- if (fork() == 0) {
- return NSApplicationMain(argc, (const char **)argv);
- } else {
- return cmd_main(argc, argv);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement