From 29395db8b344f74cd47d1a0ea777c054f8cd9050 Mon Sep 17 00:00:00 2001 From: cgf Date: Thu, 1 Apr 2010 03:06:01 +0000 Subject: [PATCH] * sigproc.cc (wait_sig): Make sure that strace is activated on __SIGSTRACE by calling new strace::activate function. * strace.cc (strace::activate): Rename from strace::strace. * strace.h (strace::activate): Define new function. (strace::strace): Call activate. --- winsup/cygwin/ChangeLog | 8 ++++++++ winsup/cygwin/include/sys/strace.h | 3 ++- winsup/cygwin/sigproc.cc | 1 + winsup/cygwin/strace.cc | 3 ++- 4 files changed, 13 insertions(+), 2 deletions(-) diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 5e8253ccd1..734001f8e1 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,5 +1,13 @@ 2010-03-31 Christopher Faylor + * sigproc.cc (wait_sig): Make sure that strace is activated on + __SIGSTRACE by calling new strace::activate function. + * strace.cc (strace::activate): Rename from strace::strace. + * strace.h (strace::activate): Define new function. + (strace::strace): Call activate. + +2010-03-31 Christopher Faylor + * fhandler.h (fhandler_base_overlapped): Temporarily (?) make select_pipe_info a friend until the fhandler_tty intertangling can be worked out. diff --git a/winsup/cygwin/include/sys/strace.h b/winsup/cygwin/include/sys/strace.h index 683cde0a6a..376cf7ac66 100644 --- a/winsup/cygwin/include/sys/strace.h +++ b/winsup/cygwin/include/sys/strace.h @@ -39,7 +39,8 @@ class strace void write (unsigned category, const char *buf, int count); unsigned char _active; public: - strace (); + void activate (); + strace () {activate ();} int microseconds (); int version; int lmicrosec; diff --git a/winsup/cygwin/sigproc.cc b/winsup/cygwin/sigproc.cc index cb70568fa9..74e96ce30b 100644 --- a/winsup/cygwin/sigproc.cc +++ b/winsup/cygwin/sigproc.cc @@ -1224,6 +1224,7 @@ wait_sig (VOID *) talktome (&pack.si); break; case __SIGSTRACE: + strace.activate (); strace.hello (); break; case __SIGPENDING: diff --git a/winsup/cygwin/strace.cc b/winsup/cygwin/strace.cc index fb62e29dc0..beba5b335f 100644 --- a/winsup/cygwin/strace.cc +++ b/winsup/cygwin/strace.cc @@ -31,7 +31,8 @@ class strace NO_COPY strace; #ifndef NOSTRACE -strace::strace () +void +strace::activate () { if (!dynamically_loaded && !_active && being_debugged ()) { -- 2.11.0