pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/devel/cvs/patches From otto@OpenBSD:



details:   https://anonhg.NetBSD.org/pkgsrc/rev/87e6a3ebf87c
branches:  trunk
changeset: 480440:87e6a3ebf87c
user:      wiz <wiz%pkgsrc.org@localhost>
date:      Thu Sep 09 22:25:16 2004 +0000

description:
>From otto@OpenBSD:
Do not evaluate this->next after calling the handler; the handler may
have clobbered it. Resolves core dumps of cvs server on user ^C.

diffstat:

 devel/cvs/patches/patch-ad |  16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)

diffs (20 lines):

diff -r ed87ac426256 -r 87e6a3ebf87c devel/cvs/patches/patch-ad
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/cvs/patches/patch-ad        Thu Sep 09 22:25:16 2004 +0000
@@ -0,0 +1,16 @@
+$NetBSD: patch-ad,v 1.7 2004/09/09 22:25:16 wiz Exp $
+
+--- lib/sighandle.c.orig       2004-02-03 15:37:50.000000000 +0100
++++ lib/sighandle.c
+@@ -155,8 +155,10 @@ int                       sig;
+       this = SIG_handlers[sig];
+       while (this != (struct SIG_hlist *) NULL)
+       {
+-              (*this->handler)(sig);
++              /* handler may free this (and thus clobber this->next) */
++              struct SIG_hlist *current = this;
+               this = this->next;
++              (*current->handler)(sig);
+       }
+ 
+       return;



Home | Main Index | Thread Index | Old Index