python: Call SWIG_NewPointerObj rather than SWIG_Python_NewPointerObj.

* lang/python/gpgme.i (pygpgme_wrap_gpgme_data_t): Provide a "self"
variable for SWIG_NewPointerObj and call SWIG_NewPointerObj rather than
SWIG_Python_NewPointerObj.
--

SWIG_Python_NewPointerObj seems to be an implementation detail, because
SWIG's documentation does not mention that function at all.  In fact,
SWIG_NewPointerObj is a call to SWIG_Python_NewPointerObj with the first
parameter being either NULL or the "self" variable, depending on whether
SWIG is called with the -builtin flag.  So far, the first parameter was
hard-coded to NULL.  This change also hard-codes it to NULL but makes
it more explicit.  The benefit is that the documented function is being
used and that compilation works regardless of the -builtin flag.

Partially reverts: 856bcfe293

Signed-off-by: Tobias Mueller <muelli@cryptobitch.de>
This commit is contained in:
Tobias Mueller 2016-12-20 18:01:27 +01:00 committed by Justus Winter
parent d184dbbba8
commit d356519170
No known key found for this signature in database
GPG Key ID: DD1A52F9DA8C9020

View File

@ -620,7 +620,17 @@ FILE *fdopen(int fildes, const char *mode);
PyObject *
_gpg_wrap_gpgme_data_t(gpgme_data_t data)
{
return SWIG_Python_NewPointerObj(NULL, data, SWIGTYPE_p_gpgme_data, 0);
/*
* If SWIG is invoked without -builtin, the macro SWIG_NewPointerObj
* expects a variable named "self".
*
* XXX: It is not quite clear why passing NULL as self is okay, but
* it works with -builtin, and it seems to work just fine without
* it too.
*/
PyObject* self = NULL;
(void) self;
return SWIG_NewPointerObj(data, SWIGTYPE_p_gpgme_data, 0);
}
gpgme_ctx_t