on 24/07/2012 21:01 George V. Neville-Neil said the following:
Author: gnn
Date: Tue Jul 24 18:01:28 2012
New Revision: 238743
URL: http://svn.freebsd.org/changeset/base/238743
Log:
Fix a bug in interrupt handling so that we're only considered
impatient if we sent more than 2 INT signals. This fixes a bug where
we wouldn't see aggregations print on the command line if we Ctrl-C'd
a dtrace script or command line invocation.
I'd rather fix the shell that sends 2 or 2+ SIGINTs on one Ctrl-C. [half-joking]
I think that _a bug_ is there, not here. I do not experience any such problems
with zsh.
MFC after: 2 weeks
Modified:
head/cddl/contrib/opensolaris/cmd/dtrace/dtrace.c
Modified: head/cddl/contrib/opensolaris/cmd/dtrace/dtrace.c
==
--- head/cddl/contrib/opensolaris/cmd/dtrace/dtrace.c Tue Jul 24 16:29:33
2012(r238742)
+++ head/cddl/contrib/opensolaris/cmd/dtrace/dtrace.c Tue Jul 24 18:01:28
2012(r238743)
@@ -70,6 +70,8 @@ typedef struct dtrace_cmd {
#define E_ERROR 1
#define E_USAGE 2
+#define IMPATIENT_LIMIT 2
+
static const char DTRACE_OPTSTR[] =
3:6:aAb:Bc:CD:ef:FGhHi:I:lL:m:n:o:p:P:qs:SU:vVwx:X:Z;
@@ -1202,7 +1204,7 @@ intr(int signo)
if (!g_intr)
g_newline = 1;
- if (g_intr++)
+ if (g_intr++ IMPATIENT_LIMIT)
g_impatient = 1;
Because of the postfix ++ g_impatient will be set to one at the _forth_ run
through this code (assuming that the initial value of g_intr is zero) contrary
to what you say in the commit message.
}
BTW, posting even trivial patches for a review as a part of the routine seems to
be a good habit in general.
--
Andriy Gapon
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to svn-src-head-unsubscr...@freebsd.org