On Mon, 19 Nov 2012 19:46:48 -0700 (MST), Jon Trulson wrote:
> On Mon, 19 Nov 2012, Pascal Stumpf wrote:
> 
> > See patch.
> >
> 
> This one I'm not so sure about... pclose might be doing other cleanups
> under the hood, so should be used...  Can you determine why the shell
> sometimes hangs?
> 
> If not, then can we make this conditional on OpenBSD only?

Disregard that patch; it was a problem with signal handling.  There's
already code there for OSF that makes it work on OpenBSD too.
>From d95b222678bd607b2fe4c66f9ef3cebc4945768d Mon Sep 17 00:00:00 2001
From: Pascal Stumpf <pascal.stu...@cubes.de>
Date: Tue, 20 Nov 2012 10:09:16 +0100
Subject: [PATCH] Use same SIGCHLD handling for OpenBSD as for OSF.

---
 cde/programs/dtfile/Main.c |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/cde/programs/dtfile/Main.c b/cde/programs/dtfile/Main.c
index 0f077c4..be996ba 100644
--- a/cde/programs/dtfile/Main.c
+++ b/cde/programs/dtfile/Main.c
@@ -116,7 +116,7 @@
 #include <sys/stat.h>
 #include <signal.h>
 
-#ifdef __osf__
+#if defined(__osf__) || defined(__OpenBSD__)
 #include <sys/wait.h>
 #endif /* __osf__ */
 
@@ -975,7 +975,7 @@ XtActionsRec actionTable[] = {
 
 extern XtInputId ProcessToolTalkInputId;
 
-#ifdef __osf__
+#if defined(__osf__) || defined(__OpenBSD__)
 extern void sigchld_handler(int);
 #endif /* __osf__ */
 
@@ -1019,7 +1019,7 @@ main(
    Tt_pattern requests2Handle;
    Tt_message msg;
    Tt_status status;
-#ifdef __osf__
+#if defined(__osf__) || defined(__OpenBSD__)
    struct sigaction sa, osa;
 #endif /* __osf__ */
    int session_flag = 0;
@@ -1031,7 +1031,7 @@ main(
    (void) signal (SIGINT, (void (*)())Stop);
 
    /* We don't want any zombie children, do we? */
-#ifdef __osf__
+#if defined(__osf__) || defined(__OpenBSD__)
     sa.sa_handler = sigchld_handler;
     sigemptyset(&sa.sa_mask);
     sa.sa_flags   =  0;
@@ -6292,7 +6292,7 @@ FinalizeToolTalkSession();
 exit (1);
 }
 
-#ifdef __osf__
+#if defined(__osf__) || defined(__OpenBSD__)
 extern void
 sigchld_handler(int signo)      /* Do not use the arg signo at the moment */
 {
-- 
1.7.6

------------------------------------------------------------------------------
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
_______________________________________________
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel

Reply via email to