summaryrefslogtreecommitdiff
path: root/Modules
diff options
context:
space:
mode:
authorGregory P. Smith <greg@mad-scientist.com>2005-06-06 17:31:32 +0000
committerGregory P. Smith <greg@mad-scientist.com>2005-06-06 17:31:32 +0000
commit053a612e5f0e54c9a7954c316ef7dba098dc2fa9 (patch)
treef488d76b639b5fb92c3280c0a2a3e701ce8f0437 /Modules
parent24b054a768dedb8851c73e9eb293479f4286cdf0 (diff)
downloadcpython-053a612e5f0e54c9a7954c316ef7dba098dc2fa9.tar.gz
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.
Diffstat (limited to 'Modules')
-rw-r--r--Modules/_bsddb.c17
1 files 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)) {