15567 Build failed - IndexError: list index out of range
authorKaren Tung <karen.tung@oracle.com>
Mon, 19 Apr 2010 12:10:22 -0700
changeset 812 3b46b38c25e1
parent 811 6b2217f81b65
child 813 5d94238d153f
15567 Build failed - IndexError: list index out of range
usr/src/lib/install_utils/ManifestRead.py
usr/src/lib/install_utils/ManifestServ.py
--- a/usr/src/lib/install_utils/ManifestRead.py	Mon Apr 19 08:52:38 2010 -0700
+++ b/usr/src/lib/install_utils/ManifestRead.py	Mon Apr 19 12:10:22 2010 -0700
@@ -18,8 +18,8 @@
 #
 # CDDL HEADER END
 #
-# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
-# Use is subject to license terms.
+# Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
+#
 
 # =============================================================================
 # =============================================================================
@@ -204,8 +204,12 @@
         if (count == 0):
             return results_list
 
+        results = ""
+        size_to_recv = size
         try:
-            results = self.client_sock.recv(size)
+            while (size_to_recv > 0): 
+                results += self.client_sock.recv(size_to_recv)
+                size_to_recv = size - len(results)
         except socket.error:
             print >> sys.stderr, ("Error receiving results from server")
             raise
--- a/usr/src/lib/install_utils/ManifestServ.py	Mon Apr 19 08:52:38 2010 -0700
+++ b/usr/src/lib/install_utils/ManifestServ.py	Mon Apr 19 12:10:22 2010 -0700
@@ -18,8 +18,8 @@
 #
 # CDDL HEADER END
 #
-# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
-# Use is subject to license terms.
+# Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
+#
 
 # =============================================================================
 # =============================================================================
@@ -509,7 +509,7 @@
 
             # Send the results.
             if values:
-                srvsock.send(results)
+                srvsock.sendall(results)
 
             # Receive a new request.
             pre_request = srvsock.recv(SocketServProtocol.PRE_REQ_SIZE)