Author: Antonio Cuni <anto.c...@gmail.com>
Branch: 
Changeset: r46013:a1d33f438355
Date: 2011-07-27 13:23 +0200
http://bitbucket.org/pypy/pypy/changeset/a1d33f438355/

Log:    make sure that we always pass the numeric address when converting to
        c_void_p

diff --git a/lib_pypy/_ctypes/function.py b/lib_pypy/_ctypes/function.py
--- a/lib_pypy/_ctypes/function.py
+++ b/lib_pypy/_ctypes/function.py
@@ -470,7 +470,9 @@
         newargs = []
         for argtype, arg in zip(argtypes, args):
             param = argtype.from_param(arg)
-            if self._is_primitive(argtype):
+            if argtype._type_ == 'P': # special-case for c_void_p
+                param = param._get_buffer_value()
+            elif self._is_primitive(argtype):
                 param = param.value
             newargs.append(param)
         return newargs
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to