[pypy-svn] r76170 - in pypy/branch/interplevel-array/pypy/module/array: . test

hakanardo at codespeak.net hakanardo at codespeak.net
Tue Jul 13 08:01:35 CEST 2010


Author: hakanardo
Date: Tue Jul 13 08:01:33 2010
New Revision: 76170

Modified:
   pypy/branch/interplevel-array/pypy/module/array/interp_array.py
   pypy/branch/interplevel-array/pypy/module/array/test/sumtst.py
Log:
compiling

Modified: pypy/branch/interplevel-array/pypy/module/array/interp_array.py
==============================================================================
--- pypy/branch/interplevel-array/pypy/module/array/interp_array.py	(original)
+++ pypy/branch/interplevel-array/pypy/module/array/interp_array.py	Tue Jul 13 08:01:33 2010
@@ -212,19 +212,26 @@
             new = space.int_w(w_new)
             oldlen = self.len
             self.setlen(self.len + new)
-            
+
+            i = 0
             try:
-                if (isinstance(w_seq, W_ListObject) or
-                    isinstance(w_seq, W_TupleObject)):
-                    for i in range(new):
+                if isinstance(w_seq, W_ListObject):
+                    while i < new:
+                        item = self.item_w(w_seq.wrappeditems[i])
+                        self.buffer[oldlen + i ] = item
+                        i += 1
+                elif isinstance(w_seq, W_TupleObject):
+                    while i < new:
                         item = self.item_w(w_seq.wrappeditems[i])
                         self.buffer[oldlen + i ] = item
+                        i += 1
                 else:
                     getitem = space.getattr(w_seq, space.wrap('__getitem__'))
-                    for i in range(new):
+                    while i < new:
                         w_item = space.call_function(getitem, space.wrap(i))
                         item=self.item_w(w_item)
                         self.buffer[oldlen + i ] = item
+                        i += 1
             except OperationError:
                 self.setlen(oldlen + i)
                 raise

Modified: pypy/branch/interplevel-array/pypy/module/array/test/sumtst.py
==============================================================================
--- pypy/branch/interplevel-array/pypy/module/array/test/sumtst.py	(original)
+++ pypy/branch/interplevel-array/pypy/module/array/test/sumtst.py	Tue Jul 13 08:01:33 2010
@@ -11,7 +11,9 @@
     return l
 
 if True:
-    img=array('d', '\x00'*640*480*8)
+    img=array('d', '\x00'*640*480)
+    #img=array('d', [0]*640*480)
+    #img=array('d', (0,))*(640*480)
 else:
     img=simple_array(640*480)
     



More information about the Pypy-commit mailing list