[BACK]Return to ox_launch.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / io

Diff for /OpenXM_contrib2/asir2000/io/ox_launch.c between version 1.6 and 1.9.2.1

version 1.6, 2000/09/25 04:33:37 version 1.9.2.1, 2000/11/08 08:31:55
Line 44 
Line 44 
  * OF THE SOFTWARE HAS BEEN DEVELOPED BY A THIRD PARTY, THE THIRD PARTY   * OF THE SOFTWARE HAS BEEN DEVELOPED BY A THIRD PARTY, THE THIRD PARTY
  * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,   * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,
  * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.   * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.
  * $OpenXM: OpenXM_contrib2/asir2000/io/ox_launch.c,v 1.5 2000/09/23 00:57:43 noro Exp $   * $OpenXM: OpenXM_contrib2/asir2000/io/ox_launch.c,v 1.9 2000/11/07 09:31:36 noro Exp $
 */  */
 #include <setjmp.h>  #include <setjmp.h>
 #include <signal.h>  #include <signal.h>
Line 53 
Line 53 
 #include "com.h"  #include "com.h"
 #include "ox.h"  #include "ox.h"
 #if defined(VISUAL)  #if defined(VISUAL)
   #include <stdlib.h>
 #include <windows.h>  #include <windows.h>
 #include <io.h>  #include <io.h>
 #include <fcntl.h>  #include <fcntl.h>
Line 185  char **argv;
Line 186  char **argv;
         if ( accept_client ) {          if ( accept_client ) {
                 cs = try_bind_listen(use_unix,control_port_str);                  cs = try_bind_listen(use_unix,control_port_str);
                 ss = try_bind_listen(use_unix,server_port_str);                  ss = try_bind_listen(use_unix,server_port_str);
                 cs = try_accept(use_unix,cs);                  cs = try_accept(cs);
                 ss = try_accept(use_unix,ss);                  ss = try_accept(ss);
         } else {          } else {
                 cs = try_connect(use_unix,rhost,control_port_str);                  cs = try_connect(use_unix,rhost,control_port_str);
                 ss = try_connect(use_unix,rhost,server_port_str);                  ss = try_connect(use_unix,rhost,server_port_str);
Line 227  int cmd;
Line 228  int cmd;
         switch ( cmd ) {          switch ( cmd ) {
                 case SM_shutdown:                  case SM_shutdown:
                         SetEvent(hKill);                          SetEvent(hKill);
                         exit(0); break;                          ExitProcess(0);
                           break;
                 case SM_control_intr:                  case SM_control_intr:
                         SetEvent(hIntr);                          SetEvent(hIntr);
                         break;                          break;
Line 287  char *dname;
Line 289  char *dname;
         HANDLE hProc;          HANDLE hProc;
         STRING rootdir;          STRING rootdir;
         int mypid;          int mypid;
           int newbs;
   
           DuplicateHandle(GetCurrentProcess(),(HANDLE)bs,
                                           GetCurrentProcess(),(HANDLE *)&newbs,
                                           0,TRUE,DUPLICATE_SAME_ACCESS);
           close(bs);
           bs = newbs;
   
         mypid = GetCurrentProcessId();          mypid = GetCurrentProcessId();
         sprintf(ox_intr,"ox_intr_%d",mypid);          sprintf(ox_intr,"ox_intr_%d",mypid);
         sprintf(ox_reset,"ox_reset_%d",mypid);          sprintf(ox_reset,"ox_reset_%d",mypid);
Line 298  char *dname;
Line 307  char *dname;
         sprintf(sock_id,"%d",bs);          sprintf(sock_id,"%d",bs);
         av[0] = prog;          av[0] = prog;
         av[1] = sock_id;          av[1] = sock_id;
         av[2] = ox_intr;          av[2] = dname; /* if dname == "1" then a message window is opened */
         av[3] = ox_reset;          av[3] = ox_intr;
         av[4] = ox_kill;          av[4] = ox_reset;
         av[5] = NULL;          av[5] = ox_kill;
           av[6] = NULL;
         Pget_rootdir(&rootdir);          Pget_rootdir(&rootdir);
         sprintf(AsirExe,"%s\\bin\\engine.exe",BDY(rootdir));          sprintf(AsirExe,"%s\\bin\\engine.exe",BDY(rootdir));
           _fileinfo = 1;
         hProc = _spawnv(_P_NOWAIT,AsirExe,av);          hProc = _spawnv(_P_NOWAIT,AsirExe,av);
         return (int)hProc;          return (int)hProc;
 #else /* VISUAL */  #else /* VISUAL */

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.9.2.1

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>