--- Lib/SimpleXMLRPCServer.py.orig	2011-06-11 19:46:23.000000000 +0400
+++ Lib/SimpleXMLRPCServer.py	2012-02-15 12:50:23.000000000 +0400
@@ -486,7 +486,10 @@
             L = []
             while size_remaining:
                 chunk_size = min(size_remaining, max_chunk_size)
-                L.append(self.rfile.read(chunk_size))
+                chunk = self.rfile.read(chunk_size)
+                if not chunk:
+                    break
+                L.append(chunk)
                 size_remaining -= len(L[-1])
             data = ''.join(L)
 
