From ac741c57d4ec9542622e620298260036760b2575 Mon Sep 17 00:00:00 2001 From: "Gregory P. Smith" Date: Mon, 6 Jun 2005 17:31:32 +0000 Subject: [PATCH] change set_bt_compare() callback comparison function to only take two arguments (left, right) like any sane comparison function. no need to pass in the db object as an argument. --- Modules/_bsddb.c | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/Modules/_bsddb.c b/Modules/_bsddb.c index 9d1222b149..775457b69a 100644 --- a/Modules/_bsddb.c +++ b/Modules/_bsddb.c @@ -97,7 +97,7 @@ #error "eek! DBVER can't handle minor versions > 9" #endif -#define PY_BSDDB_VERSION "4.3.2" +#define PY_BSDDB_VERSION "4.3.3" static char *rcs_id = "$Id$"; @@ -2019,11 +2019,10 @@ _db_compareCallback (DB* db, leftObject = PyString_FromStringAndSize (leftKey->data, leftKey->size); rightObject = PyString_FromStringAndSize (rightKey->data, rightKey->size); - args = PyTuple_New (3); + args = PyTuple_New (2); Py_INCREF (self); - PyTuple_SET_ITEM (args, 0, (PyObject *) self); - PyTuple_SET_ITEM (args, 1, leftObject); /* steals reference */ - PyTuple_SET_ITEM (args, 2, rightObject); /* steals reference */ + PyTuple_SET_ITEM (args, 0, leftObject); /* steals reference */ + PyTuple_SET_ITEM (args, 1, rightObject); /* steals reference */ result = PyEval_CallObject (self->btCompareCallback, args); if (result == 0) { @@ -2072,14 +2071,12 @@ DB_set_bt_compare (DBObject* self, PyObject* args) * string objects here. verify that it returns an int (0). * err if not. */ - tuple = PyTuple_New (3); - Py_INCREF (self); - PyTuple_SET_ITEM (tuple, 0, (PyObject *) self); + tuple = PyTuple_New (2); emptyStr = PyString_FromStringAndSize (NULL, 0); Py_INCREF(emptyStr); - PyTuple_SET_ITEM (tuple, 1, emptyStr); - PyTuple_SET_ITEM (tuple, 2, emptyStr); /* steals reference */ + PyTuple_SET_ITEM (tuple, 0, emptyStr); + PyTuple_SET_ITEM (tuple, 1, emptyStr); /* steals reference */ result = PyEval_CallObject (comparator, tuple); Py_DECREF (tuple); if (result == 0 || !PyInt_Check(result)) { -- 2.50.1