Mercurial > dwindows
changeset 738:52d5ed00f892
Use NSWorkplace to launch GUI applications instead of fork() and exec().
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Tue, 15 Mar 2011 22:32:45 +0000 |
parents | 680c7f365d0d |
children | a0aec9a56914 |
files | mac/dw.m |
diffstat | 1 files changed, 16 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/mac/dw.m Tue Mar 15 20:06:00 2011 +0000 +++ b/mac/dw.m Tue Mar 15 22:32:45 2011 +0000 @@ -7639,6 +7639,20 @@ { int ret = -1; + if(type == DW_EXEC_GUI) + { + if(params && params[0] && params[1]) + { + [[NSWorkspace sharedWorkspace] openFile:[NSString stringWithUTF8String:params[1]] + withApplication:[NSString stringWithUTF8String:program]]; + } + else + { + [[NSWorkspace sharedWorkspace] launchApplication:[NSString stringWithUTF8String:program]]; + } + return 0; + } + if((ret = fork()) == 0) { int i; @@ -7646,11 +7660,8 @@ for (i = 3; i < 256; i++) close(i); setsid(); - if(type == DW_EXEC_GUI) - { - execvp(program, params); - } - else if(type == DW_EXEC_CON) + + if(type == DW_EXEC_CON) { char **tmpargs;