revers brandon change to prompt.c they are incorrect. Add a check if prompt env are set or not. if it is not set cmd set the prompt value. in cmd.c brandon forget that.
Modified: trunk/reactos/subsys/system/cmd/cmd.c
Modified: trunk/reactos/subsys/system/cmd/prompt.c

Modified: trunk/reactos/subsys/system/cmd/cmd.c
--- trunk/reactos/subsys/system/cmd/cmd.c	2005-09-03 01:34:40 UTC (rev 17613)
+++ trunk/reactos/subsys/system/cmd/cmd.c	2005-09-03 09:46:46 UTC (rev 17614)
@@ -1311,6 +1311,7 @@
 	TCHAR commandline[CMDLINE_LENGTH];
 	TCHAR ModuleName[_MAX_PATH + 1];
 	INT i;
+	TCHAR lpBuffer[2];
 
 	//INT len;
 	//TCHAR *ptr, *cmdLine;
@@ -1358,7 +1359,12 @@
 	hOut = GetStdHandle (STD_OUTPUT_HANDLE);
 	hIn  = GetStdHandle (STD_INPUT_HANDLE);
 
-	SetEnvironmentVariable (_T("PROMPT"), _T("$P$G"));
+	/* Set EnvironmentVariable PROMPT if it does not exists any env value. 
+	   for you can change the EnvirommentVariable for prompt before cmd start 
+	   this patch are not 100% right, if it does not exists a PROMPT value cmd should use
+	   $P$G as defualt not set EnvirommentVariable PROMPT to $P$G if it does not exists */
+	if (GetEnvironmentVariable(_T("PROMPT"),lpBuffer, 2 * sizeof(TCHAR)) == 0) 
+	    SetEnvironmentVariable (_T("PROMPT"), _T("$P$G"));
 
 
 	if (argc >= 2 && !_tcsncmp (argv[1], _T("/?"), 2))

Modified: trunk/reactos/subsys/system/cmd/prompt.c
--- trunk/reactos/subsys/system/cmd/prompt.c	2005-09-03 01:34:40 UTC (rev 17613)
+++ trunk/reactos/subsys/system/cmd/prompt.c	2005-09-03 09:46:46 UTC (rev 17614)
@@ -192,8 +192,7 @@
 #ifdef INCLUDE_CMD_PROMPT
 
 INT cmd_prompt (LPTSTR cmd, LPTSTR param)
-{
-	TCHAR szParam[512];
+{	
 	if (!_tcsncmp (param, _T("/?"), 2))
 	{
 		ConOutResPaging(TRUE,STRING_PROMPT_HELP1);
@@ -204,15 +203,14 @@
 		ConOutResPaging(FALSE,STRING_PROMPT_HELP3);
 		return 0;
 	}
-	if (param[0] != _T('\0'))
-		_tcscpy(szParam,param);
-	else
-		_tcscpy(szParam,_T("$P$G"));
 
 	/* set PROMPT environment variable */
-	if (!SetEnvironmentVariable (_T("PROMPT"), szParam))
-		return 1;
-
+	if (param[0] != _T('\0'))
+	{
+		if (!SetEnvironmentVariable (_T("PROMPT"), param))
+		    return 1;		
+	}
+			
 	return 0;
 }
 #endif