diff options
Diffstat (limited to 'Lib')
| -rw-r--r-- | Lib/test/test_xmlrpc.py | 6 | ||||
| -rw-r--r-- | Lib/xmlrpc/server.py | 2 |
2 files changed, 6 insertions, 2 deletions
diff --git a/Lib/test/test_xmlrpc.py b/Lib/test/test_xmlrpc.py index d1ed40fa29..1f5f5aa4f3 100644 --- a/Lib/test/test_xmlrpc.py +++ b/Lib/test/test_xmlrpc.py @@ -598,7 +598,11 @@ class CGIHandlerTestCase(unittest.TestCase): sys.stdin = open("xmldata.txt", "r") sys.stdout = open(support.TESTFN, "w") - self.cgi.handle_request() + os.environ['CONTENT_LENGTH'] = str(len(data)) + try: + self.cgi.handle_request() + finally: + del os.environ['CONTENT_LENGTH'] sys.stdin.close() sys.stdout.close() diff --git a/Lib/xmlrpc/server.py b/Lib/xmlrpc/server.py index eb807c484b..ea828a52e9 100644 --- a/Lib/xmlrpc/server.py +++ b/Lib/xmlrpc/server.py @@ -590,7 +590,7 @@ class CGIXMLRPCRequestHandler(SimpleXMLRPCDispatcher): # POST data is normally available through stdin try: length = int(os.environ.get('CONTENT_LENGTH', None)) - except ValueError: + except (ValueError, TypeError): length = -1 if request_text is None: request_text = sys.stdin.read(length) |
