When give a nonzero flags to getTime, c_retval will get -1 and goto cleanup. But py_retval still is NULL,so pass c_retval value to py_retval. This will make the output message more correct. error before use this patch: SystemError: error return without exception set after use the patch: libvirtError: unsupported flags (0x1) in function qemuDomainGetTime v1: https://www.redhat.com/archives/libvir-list/2014-October/msg00482.html Signed-off-by: Luyao Huang <lhuang@xxxxxxxxxx> --- libvirt-override.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/libvirt-override.c b/libvirt-override.c index 9ba87eb..c779aa3 100644 --- a/libvirt-override.c +++ b/libvirt-override.c @@ -7757,9 +7757,11 @@ libvirt_virDomainGetTime(PyObject *self ATTRIBUTE_UNUSED, PyObject *args) { c_retval = virDomainGetTime(domain, &seconds, &nseconds, flags); LIBVIRT_END_ALLOW_THREADS; - if (c_retval < 0) + if (c_retval < 0){ + py_retval = libvirt_intWrap(c_retval); goto cleanup; - + } + if (!(pyobj_seconds = libvirt_longlongWrap(seconds)) || PyDict_SetItemString(dict, "seconds", pyobj_seconds) < 0) goto cleanup; -- 1.8.3.1 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list