diff --git a/lang/python/helpers.c b/lang/python/helpers.c index e3055741..0ee24a3f 100644 --- a/lang/python/helpers.c +++ b/lang/python/helpers.c @@ -235,7 +235,7 @@ static void pyProgressCb(void *hook, const char *what, int type, int current, self = PyTuple_GetItem(pyhook, 0); func = PyTuple_GetItem(pyhook, 1); if (PyTuple_Size(pyhook) == 3) { - dataarg = PyTuple_GetItem(pyhook, 1); + dataarg = PyTuple_GetItem(pyhook, 2); args = PyTuple_New(5); } else { args = PyTuple_New(4); diff --git a/lang/python/tests/t-callbacks.py b/lang/python/tests/t-callbacks.py index 13ce4864..70f641d7 100755 --- a/lang/python/tests/t-callbacks.py +++ b/lang/python/tests/t-callbacks.py @@ -91,12 +91,13 @@ Expire-Date: 2020-12-31 messages = [] def progress_cb(what, typ, current, total, hook=None): + assert hook == messages messages.append( "PROGRESS UPDATE: what = {}, type = {}, current = {}, total = {}" .format(what, typ, current, total)) c = core.Context() -c.set_progress_cb(progress_cb, None) +c.set_progress_cb(progress_cb, messages) c.op_genkey(parms, None, None) assert len(messages) > 0