--- lib-python/2.7/SimpleXMLRPCServer.py.orig	2012-02-19 02:22:59.736459292 +0800
+++ lib-python/2.7/SimpleXMLRPCServer.py	2012-02-19 02:24:04.434444259 +0800
@@ -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)
 
