From: Raymond Hettinger Date: Sun, 29 Jun 2003 05:06:56 +0000 (+0000) Subject: SF bug #430160: CGIHTTPServer.py POST bug using IE X-Git-Tag: v2.3c1~258 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e2f18377ff21c0e3217d561c8509e6816ecb362d;p=python SF bug #430160: CGIHTTPServer.py POST bug using IE Minor improvement to previous bugfix. Eating the remaining characters would lead to an endless loop without a termination test. --- diff --git a/Lib/CGIHTTPServer.py b/Lib/CGIHTTPServer.py index f14ebba7a3..437ee80fcc 100644 --- a/Lib/CGIHTTPServer.py +++ b/Lib/CGIHTTPServer.py @@ -202,7 +202,8 @@ class CGIHTTPRequestHandler(SimpleHTTPServer.SimpleHTTPRequestHandler): pid, sts = os.waitpid(pid, 0) # throw away additional data [see bug #427345] while select.select([self.rfile], [], [], 0)[0]: - waste = self.rfile.read(1) + if not self.rfile.read(1): + break if sts: self.log_error("CGI script exit status %#x", sts) return @@ -250,7 +251,8 @@ class CGIHTTPRequestHandler(SimpleHTTPServer.SimpleHTTPRequestHandler): fi.write(data) # throw away additional data [see bug #427345] while select.select([self.rfile._sock], [], [], 0)[0]: - waste = self.rfile._sock.recv(1) + if not self.rfile._sock.recv(1): + break fi.close() shutil.copyfileobj(fo, self.wfile) if self.have_popen3: