Author: Ronan Lamy <ronan.l...@gmail.com>
Branch: py3.5
Changeset: r90059:9e067f394eee
Date: 2017-02-11 19:55 +0000
http://bitbucket.org/pypy/pypy/changeset/9e067f394eee/

Log:    Fix .tobytes() on 0d memoryview

diff --git a/pypy/objspace/std/memoryobject.py 
b/pypy/objspace/std/memoryobject.py
--- a/pypy/objspace/std/memoryobject.py
+++ b/pypy/objspace/std/memoryobject.py
@@ -117,6 +117,9 @@
         return ''.join(self.copy_buffer())
 
     def copy_buffer(self):
+        if self.getndim() == 0:
+            itemsize = self.getitemsize()
+            return [self.buf.getslice(0, itemsize, 1, itemsize)]
         data = []
         self._copy_rec(0, data, 0)
         return data
@@ -126,12 +129,12 @@
         shape = shapes[idim]
         strides = self.getstrides()
 
-        if self.getndim()-1 == idim:
-            self._copy_base(data,off)
+        if self.getndim() - 1 == idim:
+            self._copy_base(data, off)
             return
 
         for i in range(shape):
-            self._copy_rec(idim+1,data,off)
+            self._copy_rec(idim + 1, data, off)
             off += strides[idim]
 
     def _copy_base(self, data, off):
diff --git a/pypy/objspace/std/test/test_memoryobject.py 
b/pypy/objspace/std/test/test_memoryobject.py
--- a/pypy/objspace/std/test/test_memoryobject.py
+++ b/pypy/objspace/std/test/test_memoryobject.py
@@ -32,7 +32,7 @@
         assert len(v) == 1
         assert v.shape == ()
         assert v.strides == ()
-        #assert v.tobytes() == b'x'
+        assert v.tobytes() == b'x'
         #assert v[()] == b'x'[0]
 
     def test_rw(self):
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to