Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[cdt-patch] (no subject)

Thomas,

thanks for your patch, I've checked it in to the repository.
Please let me know if there are any problems (I lifted the patch
from the html mailing list archive...)

Sebastien

________________________________
All,

  This fix addressess a problem I was seeing under Windows 98
when I had no tools installed (no cygwin, no make etc), but 
still wanted to create a C project and edit files.   Upon 
project creation the dialog would freeze at the EnvironmentReader.
getEnvVars() call.  I tracked it down to a problem where the
getLine wasn't returning.  I've added an aditional check now
(only enabled for Windows 9x) and now projects are being made.

  Here is the patch.

Thomas
-------------------------------------------------------------
Thomas (toe-mah) Fletcher       QNX Software Systems
thomasf@xxxxxxx                 Core OS Technology Developer
(613)-591-0931                  http://www.qnx.com/


Index: EnvironmentReader.java
===================================================================
RCS file:
/home/tools/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/spawner/Environ
mentReader.java,v
retrieving revision 1.1
diff -u -r1.1 EnvironmentReader.java
--- EnvironmentReader.java	26 Jun 2002 20:38:33 -0000	1.1
+++ EnvironmentReader.java	8 Aug 2002 02:05:25 -0000
@@ -28,9 +28,12 @@
 		rawVars = new Vector(32);
 		String command = "env";
 		InputStream	in = null;
+		boolean 	check_ready = false;
 		try {
 			if (OS.indexOf("windows 9") > -1) {
 				command = "command.com /c set";
+				//The buffered stream doesn't always like
windows 98
+				check_ready = true;
 			} else if ((OS.indexOf("nt") > -1) ||
(OS.indexOf("windows 2000") > -1)) {
 				command = "cmd.exe /c set";
 			}
@@ -47,6 +50,9 @@
 					envVars.setProperty(key, value);
 				} else {
 					envVars.setProperty(line, "");
+				}
+				if(check_ready && br.ready() == false) {
+					break;
 				}
 			}
 		} catch (IOException e) {



Back to the top