File: | src/session.c |
Function: | session_scp_recv |
Error: | ob_refcnt of '*_exc' is 1 too high |
690 static PyObject *
691 session_scp_recv(SSH2_SessionObj *self, PyObject *args)
692 {
693 char *path;
694 LIBSSH2_CHANNEL *channel;
695
696 if (!PyArg_ParseTuple(args, "s:scp_recv", &path))
when _PyArg_ParseTuple_SizeT() succeeds
taking False path
697 return NULL;
698
699 Py_BEGIN_ALLOW_THREADS
releasing the GIL by calling PyEval_SaveThread()
700 channel = libssh2_scp_recv(self->session, path, NULL); // &sb
701 Py_END_ALLOW_THREADS
reacquiring the GIL by calling PyEval_RestoreThread()
702
703 CHECK_RETURN_POINTER(channel, self)
when treating unknown struct LIBSSH2_CHANNEL * from src/session.c:700 as NULL
taking True path
when _PyObject_CallFunction_SizeT() succeeds
when _Py_BuildValue_SizeT() succeeds
when PyObject_SetAttrString() succeeds
calling PyErr_SetObject()
new ref from call to _PyObject_CallFunction_SizeT allocated at: CHECK_RETURN_POINTER(channel, self)
ob_refcnt is now refs: 1 + N where N >= 0
ob_refcnt is now refs: 1 + N where N >= 1
704
705 return (PyObject *)SSH2_Channel_New(channel, self);
706 }
ob_refcnt of '*_exc' is 1 too high
was expecting final ob_refcnt to be N + 0 (for some unknown N)
but final ob_refcnt is N + 1
found 3 similar trace(s) to this
File: | src/session.c |
Function: | session_scp_recv |
Error: | ob_refcnt of new ref from call to _Py_BuildValue_SizeT is 1 too high |
690 static PyObject *
691 session_scp_recv(SSH2_SessionObj *self, PyObject *args)
692 {
693 char *path;
694 LIBSSH2_CHANNEL *channel;
695
696 if (!PyArg_ParseTuple(args, "s:scp_recv", &path))
when _PyArg_ParseTuple_SizeT() succeeds
taking False path
697 return NULL;
698
699 Py_BEGIN_ALLOW_THREADS
releasing the GIL by calling PyEval_SaveThread()
700 channel = libssh2_scp_recv(self->session, path, NULL); // &sb
701 Py_END_ALLOW_THREADS
reacquiring the GIL by calling PyEval_RestoreThread()
702
703 CHECK_RETURN_POINTER(channel, self)
when treating unknown struct LIBSSH2_CHANNEL * from src/session.c:700 as NULL
taking True path
when _PyObject_CallFunction_SizeT() succeeds
when _Py_BuildValue_SizeT() succeeds
when PyObject_SetAttrString() succeeds
calling PyErr_SetObject()
new ref from call to _Py_BuildValue_SizeT allocated at: CHECK_RETURN_POINTER(channel, self)
ob_refcnt is now refs: 1 + N where N >= 0
704
705 return (PyObject *)SSH2_Channel_New(channel, self);
706 }
ob_refcnt of new ref from call to _Py_BuildValue_SizeT is 1 too high
was expecting final ob_refcnt to be N + 0 (for some unknown N)
but final ob_refcnt is N + 1
found 1 similar trace(s) to this
File: | src/session.c |
Function: | session_scp_recv |
Error: | calling PyObject_SetAttrString with NULL as argument 1 (_exc) at src/session.c:703 |
690 static PyObject *
691 session_scp_recv(SSH2_SessionObj *self, PyObject *args)
692 {
693 char *path;
694 LIBSSH2_CHANNEL *channel;
695
696 if (!PyArg_ParseTuple(args, "s:scp_recv", &path))
when _PyArg_ParseTuple_SizeT() succeeds
taking False path
697 return NULL;
698
699 Py_BEGIN_ALLOW_THREADS
releasing the GIL by calling PyEval_SaveThread()
700 channel = libssh2_scp_recv(self->session, path, NULL); // &sb
701 Py_END_ALLOW_THREADS
reacquiring the GIL by calling PyEval_RestoreThread()
702
703 CHECK_RETURN_POINTER(channel, self)
when treating unknown struct LIBSSH2_CHANNEL * from src/session.c:700 as NULL
taking True path
when _PyObject_CallFunction_SizeT() fails
when _Py_BuildValue_SizeT() succeeds
calling PyObject_SetAttrString with NULL as argument 1 (_exc) at src/session.c:703
PyObject_SetAttrString() invokes Py_TYPE() on the pointer, thus accessing (NULL)->ob_type
found 1 similar trace(s) to this
704
705 return (PyObject *)SSH2_Channel_New(channel, self);
706 }