[issue32881] pycapsule:PyObject * is NULL pointer

2018-02-20 Thread zhaoya

zhaoya <zhaoya881...@163.com> added the comment:

FUNCTION_CALL_MODE is __stdcall i think no problem.because, if 
GetContext(PyObject  *capsule) -->GetContext() is ok. PyObject  *capsule from 
python to c unknown error occurred.

--

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue32881>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue32881] pycapsule:PyObject * is NULL pointer

2018-02-19 Thread zhaoya

New submission from zhaoya <zhaoya881...@163.com>:

i have question:call,c-->python-->c. 
1.the c pointer void* abc="123" by pycapsule in the c code.
..
void* lpContext = "abc";
PyObject * lpPyContext = PyCapsule_New(lpContext, "Context",NULL);
..
PyTuple_SetItem(pArgs, 1, lpPyContext);
PyObject* pyResult = PyObject_CallObject(pFunc, pArgs);

2.c call python:

in the python code:
import ctypes
pycapsule = ctypes.windll.LoadLibrary("C:\Users\zhaoya16975\Documents\Visual 
Studio 2017\Projects\cpython\Release\pycapsule.dll")
def test( lpContext,lpRequest,lpAnswer):
print lpContext
pycapsule.hello()
pycapsule.GetContext(lpContext)
.
the lpContest is ""
but,i can't lpContext in the pycapsule.GetContest:
the capsule is null poniter,the GetContext no execute!!

void* FUNCTION_CALL_MODE GetContext(PyObject  *capsule) {
printf(" GetContext..\n");
//if (!PyCapsule_IsValid((PyObject *)capsule, "Context")) {
//  printf(" the Capsule Context is no Valid\n");
//  return NULL;
//}
//return PyCapsule_GetPointer((PyObject *)capsule, "Context");
return NULL;

}


i hope c call python  pass void* ,and python call c pass void* ,but the capsule 
call no success.

--
components: Windows
messages: 312399
nosy: paul.moore, steve.dower, tim.golden, zach.ware, zhaoya
priority: normal
severity: normal
status: open
title: pycapsule:PyObject * is NULL pointer
type: crash
versions: Python 2.7

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue32881>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com