]> git.pld-linux.org Git - packages/db4.4.git/blame - patch.4.4.20.3
- added default_db bcond (now off by default)
[packages/db4.4.git] / patch.4.4.20.3
CommitLineData
6a2508d3
JB
1*** db/db_cam.c.orig 2006-01-11 03:19:21.000000000 +1100
2--- db/db_cam.c 2006-03-01 13:59:01.000000000 +1100
3***************
4*** 579,589 ****
5 flags == DB_NEXT || flags == DB_NEXT_DUP || flags == DB_PREV)) {
6 if (tmp_rmw && (ret = dbc_arg->c_am_writelock(dbc_arg)) != 0)
7 return (ret);
8! if ((ret = __db_c_idup(cp->opd, &opd, DB_POSITION)) != 0)
9 return (ret);
10
11! switch (ret =
12! opd->c_am_get(opd, key, data, flags, NULL)) {
13 case 0:
14 goto done;
15 case DB_NOTFOUND:
16--- 579,590 ----
17 flags == DB_NEXT || flags == DB_NEXT_DUP || flags == DB_PREV)) {
18 if (tmp_rmw && (ret = dbc_arg->c_am_writelock(dbc_arg)) != 0)
19 return (ret);
20! if (F_ISSET(dbc_arg, DBC_TRANSIENT))
21! opd = cp->opd;
22! else if ((ret = __db_c_idup(cp->opd, &opd, DB_POSITION)) != 0)
23 return (ret);
24
25! switch (ret = opd->c_am_get(opd, key, data, flags, NULL)) {
26 case 0:
27 goto done;
28 case DB_NOTFOUND:
29***************
30*** 596,607 ****
31--- 597,614 ----
32 if ((ret = __db_c_close(opd)) != 0)
33 goto err;
34 opd = NULL;
35+ if (F_ISSET(dbc_arg, DBC_TRANSIENT))
36+ cp->opd = NULL;
37 break;
38 }
39 goto err;
40 default:
41 goto err;
42 }
43+ } else if (cp->opd != NULL && F_ISSET(dbc_arg, DBC_TRANSIENT)) {
44+ if ((ret = __db_c_close(cp->opd)) != 0)
45+ goto err;
46+ cp->opd = NULL;
47 }
48
49 /*
This page took 0.062031 seconds and 4 git commands to generate.