aboutsummaryrefslogtreecommitdiffstats
path: root/sources/shiboken2/libshiboken
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2018-09-21 11:34:44 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2018-09-21 11:37:39 +0200
commitb0754eac872e4859db20df5dd2a5ece8b809a92c (patch)
tree9d962161ae5ca6119af9b7252ecbe79cdf1575a6 /sources/shiboken2/libshiboken
parent94cdf84333d7c93dc6f07ca3cc3120b59b3324c9 (diff)
parentb8201a3ad2e778ed58cb285369055dc4d0d450bd (diff)
Merge remote-tracking branch 'origin/5.11' into dev
Diffstat (limited to 'sources/shiboken2/libshiboken')
-rw-r--r--sources/shiboken2/libshiboken/shibokenbuffer.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/sources/shiboken2/libshiboken/shibokenbuffer.cpp b/sources/shiboken2/libshiboken/shibokenbuffer.cpp
index 70341c6d8..a691a31ee 100644
--- a/sources/shiboken2/libshiboken/shibokenbuffer.cpp
+++ b/sources/shiboken2/libshiboken/shibokenbuffer.cpp
@@ -48,25 +48,26 @@ bool Shiboken::Buffer::checkType(PyObject* pyObj)
void* Shiboken::Buffer::getPointer(PyObject* pyObj, Py_ssize_t* size)
{
-
+ const void* buffer = 0;
#ifdef IS_PY3K
Py_buffer view;
if (PyObject_GetBuffer(pyObj, &view, PyBUF_ND) == 0) {
if (size)
*size = view.len;
+ buffer = view.buf;
+ PyBuffer_Release(&view);
return view.buf;
}
return nullptr;
#else
- const void* buffer = 0;
Py_ssize_t bufferSize = 0;
PyObject_AsReadBuffer(pyObj, &buffer, &bufferSize);
if (size)
*size = bufferSize;
- return const_cast<void*>(buffer);
#endif
+ return const_cast<void*>(buffer);
}
PyObject* Shiboken::Buffer::newObject(void* memory, Py_ssize_t size, Type type)