summaryrefslogtreecommitdiff
path: root/databases/py-bsddb3/patches/patch-ab
blob: d86796816cfc8bf8ae839d83feba9a74fd9a5e3c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
$NetBSD: patch-ab,v 1.1.1.1 2003/01/17 19:26:04 gson Exp $

--- src/_db.c.orig	Sun Dec 22 00:44:32 2002
+++ src/_db.c
@@ -745,7 +745,8 @@
     int err;
     if (self->dbc != NULL) {
         MYDB_BEGIN_ALLOW_THREADS;
-        err = self->dbc->c_close(self->dbc);
+	if (self->mydb->db != NULL)
+            err = self->dbc->c_close(self->dbc);
         self->dbc = NULL;
         MYDB_END_ALLOW_THREADS;
     }
@@ -1071,7 +1072,9 @@
      * threads have already been initialized.
      *  (see pybsddb-users mailing list post on 2002-08-07)
      */
+#ifdef WITH_THREAD
     PyEval_InitThreads();
+#endif
     MYDB_BEGIN_ALLOW_THREADS;
 #if (DBVER >= 41)
     err = self->db->associate(self->db,
@@ -1620,6 +1623,7 @@
 #endif
     MYDB_END_ALLOW_THREADS;
     if (makeDBError(err)) {
+	self->db->close(self->db, 0);
         self->db = NULL;
         return NULL;
     }