aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--winsup/cygwin/ChangeLog6
-rw-r--r--winsup/cygwin/sigproc.cc2
-rw-r--r--winsup/cygwin/sigproc.h6
-rw-r--r--winsup/cygwin/sync.h2
4 files changed, 11 insertions, 5 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 69f6495..e69cafc 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,5 +1,11 @@
2001-10-30 Christopher Faylor <cgf@redhat.com>
+ * sigproc.cc (sigproc_terminate): Don't signal main thread when exiting.
+ * sigproc.h (sigframe): Decorate some methods with `inline'.
+ (new_muto): Coerce pointer to new to void *.
+
+2001-10-30 Christopher Faylor <cgf@redhat.com>
+
* fhandler.cc (fhandler_base::fork_fixup): Pass old handle to
setclexec_pid.
diff --git a/winsup/cygwin/sigproc.cc b/winsup/cygwin/sigproc.cc
index 7b55487..11b04ec 100644
--- a/winsup/cygwin/sigproc.cc
+++ b/winsup/cygwin/sigproc.cc
@@ -612,7 +612,7 @@ sigproc_terminate (void)
// finished with anything it is doing
// sig_dispatch_pending (TRUE); // wake up and die
/* In case of a sigsuspend */
- SetEvent (signal_arrived);
+ // SetEvent (signal_arrived);
/* If !hwait_sig, then the process probably hasn't even finished
* its initialization phase.
diff --git a/winsup/cygwin/sigproc.h b/winsup/cygwin/sigproc.h
index 0afb027..493078b 100644
--- a/winsup/cygwin/sigproc.h
+++ b/winsup/cygwin/sigproc.h
@@ -50,7 +50,7 @@ class sigframe
{
private:
sigthread *st;
- bool unregister ()
+ inline bool unregister ()
{
if (!st)
return 0;
@@ -64,7 +64,7 @@ private:
}
public:
- void set (sigthread &t, DWORD ebp, bool is_exception = 0)
+ inline void set (sigthread &t, DWORD ebp, bool is_exception = 0)
{
DWORD oframe = t.frame;
st = &t;
@@ -76,7 +76,7 @@ public:
sigframe (): st (NULL) {}
sigframe (sigthread &t, DWORD ebp = (DWORD) __builtin_frame_address (0)) {init (t, ebp);}
- void init (sigthread &t, DWORD ebp = (DWORD) __builtin_frame_address (0))
+ inline void init (sigthread &t, DWORD ebp = (DWORD) __builtin_frame_address (0))
{
if (!t.frame && t.id == GetCurrentThreadId ())
set (t, ebp);
diff --git a/winsup/cygwin/sync.h b/winsup/cygwin/sync.h
index 9552801..995d98e 100644
--- a/winsup/cygwin/sync.h
+++ b/winsup/cygwin/sync.h
@@ -47,7 +47,7 @@ extern muto muto_start;
#define new_muto(__inh, __name) \
({ \
static __attribute__((section(".data_cygwin_nocopy"))) muto __mbuf; \
- (void) new ((char *) &__mbuf) muto (__inh, __name); \
+ (void) new ((void *) &__mbuf) muto (__inh, __name); \
__mbuf.next = muto_start.next; \
muto_start.next = &__mbuf; \
&__mbuf; \