Author: Brian Kearns <[email protected]>
Branch: refactor-buffer-api
Changeset: r70922:1b134cf7acc4
Date: 2014-04-24 01:55 -0400
http://bitbucket.org/pypy/pypy/changeset/1b134cf7acc4/
Log: fix _socket recv_into
diff --git a/pypy/module/_socket/interp_socket.py
b/pypy/module/_socket/interp_socket.py
--- a/pypy/module/_socket/interp_socket.py
+++ b/pypy/module/_socket/interp_socket.py
@@ -419,7 +419,7 @@
@unwrap_spec(nbytes=int, flags=int)
def recv_into_w(self, space, w_buffer, nbytes=0, flags=0):
- rwbuffer = space.writebuf_w(w_buffer)
+ rwbuffer = space.getarg_w('w*', w_buffer)
lgt = rwbuffer.getlength()
if nbytes == 0 or nbytes > lgt:
nbytes = lgt
@@ -430,7 +430,7 @@
@unwrap_spec(nbytes=int, flags=int)
def recvfrom_into_w(self, space, w_buffer, nbytes=0, flags=0):
- rwbuffer = space.writebuf_w(w_buffer)
+ rwbuffer = space.getarg_w('w*', w_buffer)
lgt = rwbuffer.getlength()
if nbytes == 0 or nbytes > lgt:
nbytes = lgt
diff --git a/pypy/module/_socket/test/test_sock_app.py
b/pypy/module/_socket/test/test_sock_app.py
--- a/pypy/module/_socket/test/test_sock_app.py
+++ b/pypy/module/_socket/test/test_sock_app.py
@@ -682,6 +682,13 @@
msg = buf.tostring()[:len(MSG)]
assert msg == MSG
+ conn.send(MSG)
+ buf = bytearray(1024)
+ nbytes = cli.recv_into(memoryview(buf))
+ assert nbytes == len(MSG)
+ msg = buf[:len(MSG)]
+ assert msg == MSG
+
def test_recvfrom_into(self):
import socket
import array
@@ -697,6 +704,13 @@
msg = buf.tostring()[:len(MSG)]
assert msg == MSG
+ conn.send(MSG)
+ buf = bytearray(1024)
+ nbytes, addr = cli.recvfrom_into(memoryview(buf))
+ assert nbytes == len(MSG)
+ msg = buf[:len(MSG)]
+ assert msg == MSG
+
def test_family(self):
import socket
cli = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit