static void initPaths() { char plp[MAXPATHLEN]; char *symbols = NULL; /* The executable */ if ( !(symbols = findExecutable(GD->cmdline.argv[0], plp)) || !(symbols = DeRefLink(symbols, plp)) ) symbols = GD->cmdline.argv[0]; #ifdef OS2 symbols = GD->cmdline.argv[0]; #endif DEBUG(2, Sdprintf("rc-module: %s\n", symbols)); systemDefaults.home = findHome(symbols); #ifdef __WIN32__ /* we want no module but the .EXE */ symbols = findExecutable(NULL, plp); DEBUG(2, Sdprintf("Executable: %s\n", symbols)); #endif GD->paths.executable = store_string(symbols); systemDefaults.startup = store_string(PrologPath(DEFSTARTUP, plp)); GD->options.systemInitFile = defaultSystemInitFile(GD->cmdline.argv[0]); #ifdef O_XOS if ( systemDefaults.home ) { char buf[MAXPATHLEN]; _xos_limited_os_filename(systemDefaults.home, buf); systemDefaults.home = store_string(buf); } #endif }
static void initPaths(int argc, const char **argv) { char plp[MAXPATHLEN]; if ( argc > 0 ) { char plp1[MAXPATHLEN]; const char *symbols = NULL; /* The executable */ if ( !(symbols = findExecutable(argv[0], plp1)) || !(symbols = DeRefLink(symbols, plp)) ) symbols = argv[0]; DEBUG(2, Sdprintf("rc-module: %s\n", symbols)); systemDefaults.home = findHome(symbols, argc, argv); #ifdef __WINDOWS__ /* we want no module but the .EXE */ GD->paths.module = store_string(symbols); symbols = findExecutable(NULL, plp); DEBUG(2, Sdprintf("Executable: %s\n", symbols)); #endif GD->paths.executable = store_string(symbols); GD->options.systemInitFile = defaultSystemInitFile(argv[0]); } else { systemDefaults.home = findHome(NULL, argc, argv); GD->options.systemInitFile = store_string("none"); #ifdef __WINDOWS__ /* we want no module but the .EXE */ GD->paths.module = store_string("libswipl.dll"); #endif } systemDefaults.startup = store_string(PrologPath(DEFSTARTUP, plp, sizeof(plp))); #ifdef O_XOS if ( systemDefaults.home ) { char buf[MAXPATHLEN]; _xos_limited_os_filename(systemDefaults.home, buf); systemDefaults.home = store_string(buf); } #endif }