Cd does rember the cd c:\gcc and you can do c: and it jump to c:\gcc not tested in reactos yet. but cd have other bugs that need to be fix. Modified: trunk/reactos/subsys/system/cmd/internal.c _____
Modified: trunk/reactos/subsys/system/cmd/internal.c --- trunk/reactos/subsys/system/cmd/internal.c 2005-07-19 01:36:54 UTC (rev 16638) +++ trunk/reactos/subsys/system/cmd/internal.c 2005-07-19 01:55:16 UTC (rev 16639) @@ -271,7 +271,7 @@
if (!dir || !dir[0]) { TCHAR szPath[MAX_PATH]; - + GetCurrentDirectory (MAX_PATH, szPath); ConOutPuts (szPath); return 0; @@ -290,7 +290,7 @@ TCHAR szPath[MAX_PATH];
szRoot[0] = _totupper (dir[0]); - GetFullPathName (szRoot, MAX_PATH, szPath, NULL); + GetRootPath (szRoot, szPath,MAX_PATH);
/* PathRemoveBackslash */ if (_tcslen (szPath) > 3) @@ -314,6 +314,7 @@ lpOldPath = (LPTSTR)malloc (MAX_PATH * sizeof(TCHAR)); GetCurrentDirectory (MAX_PATH, lpOldPath);
+ chdir(dir); if (!SetCurrentDirectory (dir)) {
@@ -338,6 +339,7 @@ { FindClose(hSearch); // change folder + chdir(dir); if (!SetCurrentDirectory (FileData.cFileName)) { ConOutFormatMessage(GetLastError()); @@ -377,6 +379,7 @@ GetCurrentDirectory(MAX_PATH, dir); if (dir[0]!=lpOldPath[0]) { + chdir(lpOldPath); SetCurrentDirectory(lpOldPath); free(lpOldPath); }