[ros-diffs] [turner] 17469: Fix a CD bug spotted by ravelo_. This
is simlair to bug 690. cd foo\"bar",
cd "foo"\"bar"" and other of the sorts are all valid.
turner at svn.reactos.com
turner at svn.reactos.com
Sun Aug 21 22:44:51 CEST 2005
Fix a CD bug spotted by ravelo_. This is simlair to bug 690. cd
foo\"bar", cd "foo"\"bar"" and other of the sorts are all valid.
Modified: trunk/reactos/subsys/system/cmd/internal.c
_____
Modified: trunk/reactos/subsys/system/cmd/internal.c
--- trunk/reactos/subsys/system/cmd/internal.c 2005-08-21 19:35:19 UTC
(rev 17468)
+++ trunk/reactos/subsys/system/cmd/internal.c 2005-08-21 20:44:47 UTC
(rev 17469)
@@ -315,19 +315,16 @@
/* Get Current Directory */
GetRootPath(_T("."),szCurrent,MAX_PATH);
- /* Remove " */
- if(szPath[0] == _T('\"'))
+ /* Remove " */
+ i = 0;
+ while(i < _tcslen(szPath))
{
- tmpPath = _tcsstr(szPath,_T("\""));
- tmpPath++;
- _tcscpy(szPath,tmpPath);
+ if(szPath[i] == _T('\"'))
+ memmove(&szPath[i],&szPath[i + 1],
_tcslen(&szPath[i]) * sizeof(TCHAR));
+ else
+ i++;
}
- if(szPath[_tcslen(szPath) - 1] == _T('\"'))
- {
- szPath[_tcslen(szPath) - 1] = _T('\0');
- }
-
tmpPath = szPath;
while (_istspace (*tmpPath))
tmpPath++;
@@ -339,7 +336,7 @@
return 0;
}
-
+
/* change to full path if relative path was given */
GetFullPathName(szPath,MAX_PATH,szFinalPath,NULL);
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.reactos.org/pipermail/ros-diffs/attachments/20050821/bc082c1c/attachment.html
More information about the Ros-diffs
mailing list