--- a/cgic.c
+++ b/cgic.c
@@ -467,6 +467,7 @@
 		fcontentType[0] = 0;
 		out = 0;
 		outf = 0;
+//		usleep(100); //HACK-WARNING trying to reduce CPU Load while waiting
 		/* Check for EOF */
 		got = mpRead(mpp, d, 2);
 		if (got < 2) {
@@ -1325,10 +1326,25 @@
 	cgiFilePtr cfp, char *buffer, 
 	int bufferSize, int *gotP)
 {
+//	fd_set rfds;
+//        int retval;
+
+
 	int got = 0;
 	if (!cfp) {
 		return cgiFormOpenFailed;
 	}
+
+        /* Watch stdin (fd 0) to see when it has input. */
+//        FD_ZERO(&rfds);
+//        FD_SET(fileno(cfp->in), &rfds);
+
+
+//        retval = select(1, &rfds, NULL, NULL, NULL);
+        /* Don't rely on the value of tv now! */
+ 
+//        if(retval == -1) return cgiFormOpenFailed;
+
 	got = fread(buffer, 1, bufferSize, cfp->in);
 	if (got <= 0) {
 		return cgiFormEOF;