diff --git a/src/bin/login/main.c b/src/bin/login/main.c index 2859677..4204364 100644 --- a/src/bin/login/main.c +++ b/src/bin/login/main.c @@ -104,7 +104,8 @@ printf("%s\n",data2); } fclose(fd); - chdir(data[i].path); + //chdir(data[i].path); + chdir(":"); exec(data[i].shell,0x0,0x0); printf("Error: Problem Starting Shell\n"); exit(-1); diff --git a/src/bin/ls/main.c b/src/bin/ls/main.c index d743265..4f9a596 100644 --- a/src/bin/ls/main.c +++ b/src/bin/ls/main.c @@ -23,6 +23,8 @@ #include #include +#include + #define permRead 0x8 #define permWrite 0x4 @@ -59,7 +61,8 @@ permsData = (char *)malloc(13); if (argv[1] == 0x0) { - if ((fd = fopen(":","rb")) == 0x0) { + getcwd(pwd,256); + if ((fd = fopen(pwd,"rb")) == 0x0) { printf("Error: Reading Directory\n"); exit(1); } diff --git a/src/bin/shell/main.c b/src/bin/shell/main.c index 76fa278..f95db5e 100644 --- a/src/bin/shell/main.c +++ b/src/bin/shell/main.c @@ -46,7 +46,7 @@ sprintf(cwc,"sys"); while (1) { - printf("%s:%s@%s> ",machine,cwd,cwc); + printf("%s-%s@%s> ",machine,cwd,cwc); gets((char *)buffer); data = (uInt8 *)buffer; parseInput(inBuf,data); diff --git a/src/lib/libc_old/generic/getcwd.c b/src/lib/libc_old/generic/getcwd.c index 5c03359..0987835 100644 --- a/src/lib/libc_old/generic/getcwd.c +++ b/src/lib/libc_old/generic/getcwd.c @@ -26,7 +26,7 @@ char *getcwd(char *cwd,uInt32 len) { asm( "int %0\n" - : : "i" (0x80),"a" (26),"b" (cwd) + : : "i" (0x80),"a" (26),"b" (cwd),"c" (len) ); return(cwd); } diff --git a/src/sys/kernel/endtask.c b/src/sys/kernel/endtask.c index 6122013..d062adc 100644 --- a/src/sys/kernel/endtask.c +++ b/src/sys/kernel/endtask.c @@ -34,9 +34,9 @@ #include void endTask(pidType pid) { - kprintf("Ending Task: [%i:%i:%i]\n",pid,_current->id,systemVitals->freePages); + //kprintf("Ending Task: [%i:%i:%i]\n",pid,_current->id,systemVitals->freePages); vmmFreeProcessPages(pid); - kprintf("Ending Task: [%i:%i:%i]\n",pid,_current->id,systemVitals->freePages); + //kprintf("Ending Task: [%i:%i:%i]\n",pid,_current->id,systemVitals->freePages); _current->state = DEAD; schedYield(); /* I'm pretty sure we need this if the thread is ending itself */ return; @@ -44,6 +44,9 @@ /*** $Log$ + Revision 1.4 2004/06/25 17:25:52 reddawg + I am cleaning too + Revision 1.3 2004/06/15 12:24:07 reddawg Cleaned Up diff --git a/src/sys/kernel/file.c b/src/sys/kernel/file.c index 46901a2..28d8f64 100644 --- a/src/sys/kernel/file.c +++ b/src/sys/kernel/file.c @@ -235,6 +235,7 @@ Notes: ************************************************************************/ +/* void chDir(const char *path) { if (_current->oInfo.fileInfo.cwd != 0x0) { kfree(_current->oInfo.fileInfo.cwd); @@ -242,6 +243,7 @@ _current->oInfo.fileInfo.cwd = verifyDir(path); return; } +*/ /************************************************************************ @@ -256,6 +258,9 @@ /*** $Log$ + Revision 1.4 2004/06/16 19:56:35 reddawg + Moved fclose + Revision 1.3 2004/06/16 16:31:58 reddawg ld.so: the dynamic linker works and has been tested diff --git a/src/sys/kernel/fork.c b/src/sys/kernel/fork.c index ebe5bee..dc1ba4a 100644 --- a/src/sys/kernel/fork.c +++ b/src/sys/kernel/fork.c @@ -96,6 +96,7 @@ newProcess->tss.cr3 = (uInt32)vmmCopyVirtualSpace(newProcess->id); newProcess->oInfo.curDir = _current->oInfo.curDir; newProcess->oInfo.container = _current->oInfo.container; + newProcess->oInfo.cwd = _current->oInfo.cwd; newProcess->state = READY; /* Return Id of Proccess */ return(newProcess->id); @@ -103,6 +104,9 @@ /*** $Log$ + Revision 1.5 2004/06/15 12:24:07 reddawg + Cleaned Up + Revision 1.4 2004/06/10 13:08:00 reddawg Minor Bug Fixes diff --git a/src/sys/kernel/syscall.c b/src/sys/kernel/syscall.c index b1fb985..4130729 100644 --- a/src/sys/kernel/syscall.c +++ b/src/sys/kernel/syscall.c @@ -145,7 +145,7 @@ } -void sysGetCwd(char *data) { +void sysGetCwd(char *data,int len) { sprintf(data,_current->oInfo.cwd); return; } @@ -193,6 +193,9 @@ /*** $Log$ + Revision 1.14 2004/06/17 03:20:47 reddawg + Cleaned Up + Revision 1.13 2004/05/26 15:39:22 reddawg mpi: brought mpiDestroyMbox(char *name) in to the userland