diff --git a/src/bin/psql/command.c b/src/bin/psql/command.c
index ef70d3b62ca7eec5ae31bab4e77ab3ea68ed66da..e1a76001ed19b38e2c1b2715f8becf98678c5cd7 100644
--- a/src/bin/psql/command.c
+++ b/src/bin/psql/command.c
@@ -3,7 +3,7 @@
  *
  * Copyright (c) 2000-2004, PostgreSQL Global Development Group
  *
- * $PostgreSQL: pgsql/src/bin/psql/command.c,v 1.130 2004/11/04 22:25:14 momjian Exp $
+ * $PostgreSQL: pgsql/src/bin/psql/command.c,v 1.131 2004/11/06 04:29:40 momjian Exp $
  */
 #include "postgres_fe.h"
 #include "command.h"
@@ -1525,7 +1525,11 @@ do_pset(const char *param, const char *value, printQueryOpt *popt, bool quiet)
 
 
 
+#ifndef WIN32
 #define DEFAULT_SHELL "/bin/sh"
+#else
+#define DEFAULT_SHELL "c:/windows/system32/cmd.exe"
+#endif
 
 static bool
 do_shell(const char *command)
@@ -1537,11 +1541,11 @@ do_shell(const char *command)
 		char	   *sys;
 		const char *shellName = NULL;
 
+		shellName = getenv("SHELL");
 #ifdef WIN32
-		shellName = getenv("COMSPEC");
-#endif
 		if (shellName == NULL)
-			shellName = getenv("SHELL");
+			shellName = getenv("COMSPEC");
+#endif
 		if (shellName == NULL)
 			shellName = DEFAULT_SHELL;