fix the second bug for 1>text.txt pipe
Modified: trunk/reactos/subsys/system/cmd/redir.c

Modified: trunk/reactos/subsys/system/cmd/redir.c
--- trunk/reactos/subsys/system/cmd/redir.c	2005-07-14 20:26:37 UTC (rev 16566)
+++ trunk/reactos/subsys/system/cmd/redir.c	2005-07-14 20:51:39 UTC (rev 16567)
@@ -128,13 +128,57 @@
 					*ofn++ = *sp++;
 				*ofn = _T('\0');
 			}
-			else if ((*sp == _T('1')) || (*sp == _T('2')))
+
+      else if (*sp == _T('1'))
 			{
 				/* error redirection */
 				sp++;
 
 				if (*sp == _T('>'))
 				{
+					/* output redirection */
+				*lpnFlags |= OUTPUT_REDIRECTION;
+				sp++;
+
+				/* append request ? */
+				if (*sp == _T('>'))
+				{
+					*lpnFlags |= OUTPUT_APPEND;
+					sp++;
+				}
+
+				while (_istspace (*sp))
+					sp++;
+
+				/* copy file name */
+				while (*sp && !IsRedirection (*sp) && !_istspace (*sp))
+					*ofn++ = *sp++;
+				*ofn = _T('\0');
+				}
+				else
+				{
+					/* no redirection!! copy the '1' character! */
+					sp--;
+					*dp++ = *sp++;
+					continue;
+				}
+
+				while (_istspace (*sp))
+					sp++;
+
+				/* copy file name */
+				while (*sp && !IsRedirection (*sp) && !_istspace (*sp))
+					*efn++ = *sp++;
+				*efn = _T('\0');
+			}
+
+			else if (*sp == _T('2'))
+			{
+				/* error redirection */
+				sp++;
+
+				if (*sp == _T('>'))
+				{
 					*lpnFlags |= ERROR_REDIRECTION;
 					sp++;
 
@@ -147,7 +191,7 @@
 				}
 				else
 				{
-					/* no redirection!! copy the '1' or '2'  character! */
+					/* no redirection!! copy the '2'  character! */
 					sp--;
 					*dp++ = *sp++;
 					continue;