Author: Alex Gaynor <[email protected]>
Branch:
Changeset: r44871:21ee5ea65e33
Date: 2011-06-10 10:50 +0200
http://bitbucket.org/pypy/pypy/changeset/21ee5ea65e33/
Log: avoid a copy in array.tostring
diff --git a/pypy/module/array/interp_array.py
b/pypy/module/array/interp_array.py
--- a/pypy/module/array/interp_array.py
+++ b/pypy/module/array/interp_array.py
@@ -526,15 +526,7 @@
def array_tostring__Array(space, self):
cbuf = self.charbuf()
- s = ''.join([cbuf[i] for i in xrange(self.len * mytype.bytes)])
- return self.space.wrap(s)
-##
-## s = ''
-## i = 0
-## while i < self.len * mytype.bytes:
-## s += cbuf[i]
-## i += 1
-## return self.space.wrap(s)
+ return self.space.wrap(rffi.charpsize2str(cbuf, self.len *
mytype.bytes))
def array_fromfile__Array_ANY_ANY(space, self, w_f, w_n):
if not isinstance(w_f, W_File):
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit