Usermode/AxWin3 - Cleaning up and separating code
[tpg/acess2.git] / Usermode / Applications / CLIShell_src / main.c
index be621c4..ca06a05 100644 (file)
@@ -75,6 +75,7 @@ int main(int argc, char *argv[], char **envp)
                if(saArgs[0])   free(saArgs[0]);\r
                \r
                printf("%s$ ", gsCurrentDirectory);\r
+               fflush(stdout);\r
                \r
                // Read Command line\r
                sCommandStr = Readline( readline_state );\r
@@ -206,19 +207,14 @@ void CallCommand(char **Args)
        }\r
        \r
        // Create new process\r
-       pid = clone(CLONE_VM, 0);\r
-       // Start Task\r
-       if(pid == 0) {\r
-               execve(sTmpBuffer, Args, gasEnvironment);\r
-               printf("Execve returned, ... oops\n");\r
-               exit(-1);\r
-       }\r
+       int fds[] = {0, 1, 2};\r
+       pid = _SysSpawn(sTmpBuffer, (const char **)Args, (const char **)gasEnvironment, 3, fds, NULL);\r
        if(pid <= 0) {\r
                printf("Unable to create process: `%s'\n", sTmpBuffer); // Error Message\r
        }\r
        else {\r
                 int    status;\r
-               waittid(pid, &status);\r
+               _SysWaitTID(pid, &status);\r
        }\r
 }\r
 \r

UCC git Repository :: git.ucc.asn.au