summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorFrank Lichtenheld <djpig@debian.org>2006-01-18 08:30:03 +0000
committerFrank Lichtenheld <djpig@debian.org>2006-01-18 08:30:03 +0000
commit53696310976b88bb01197796044ae92c571c89c3 (patch)
treeb853b364ffb8136a480c8e374d954b1daefed32d /lib
parentbaa3c192761f69c5413d230c26fd2f56d79f7193 (diff)
downloaddpkg-53696310976b88bb01197796044ae92c571c89c3.tar.gz
Import latest release as a temporary trunk which should be
later merged into a branch with the full history from CVS and arch
Diffstat (limited to 'lib')
-rw-r--r--lib/dbmodify.c1
-rw-r--r--lib/ehandle.c4
2 files changed, 3 insertions, 2 deletions
diff --git a/lib/dbmodify.c b/lib/dbmodify.c
index 7f3cd3926..720c96e93 100644
--- a/lib/dbmodify.c
+++ b/lib/dbmodify.c
@@ -304,6 +304,7 @@ void log_message(const char *fmt, ...) {
return;
}
setlinebuf(logfd);
+ setcloexec(fileno(logfd), log_file);
}
if (!log) {
diff --git a/lib/ehandle.c b/lib/ehandle.c
index 7b6c09bca..f49458265 100644
--- a/lib/ehandle.c
+++ b/lib/ehandle.c
@@ -132,6 +132,8 @@ static void run_cleanups(struct errorcontext *econ, int flagsetin) {
econtext= oldecontext;
}
}
+ flagset &= cep->cpmask;
+ flagset |= cep->cpvalue;
ncep= cep->next;
if (cep != &emergency.ce) free(cep);
cep= ncep;
@@ -207,8 +209,6 @@ void pop_cleanup(int flagset) {
for (i=0; i<NCALLS; i++) {
if (cep->calls[i].call && cep->calls[i].mask & flagset)
cep->calls[i].call(cep->argc,cep->argv);
- flagset &= cep->cpmask;
- flagset |= cep->cpvalue;
}
if (cep != &emergency.ce) free(cep);
}