summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorschmidt <douglascraigschmidt@users.noreply.github.com>1997-02-12 06:56:38 +0000
committerschmidt <douglascraigschmidt@users.noreply.github.com>1997-02-12 06:56:38 +0000
commit8bc120eb469fb03b4aed8b3ab2056ddb065faca8 (patch)
tree3219e4485debc9013e983b56c6ac485aa06cf315
parentba4c754283c3b43616dd759c804bf84b7392a165 (diff)
downloadATCD-8bc120eb469fb03b4aed8b3ab2056ddb065faca8.tar.gz
foo
-rw-r--r--ace/OS.i3
-rw-r--r--ace/Synch.cpp9
-rw-r--r--ace/XtReactor.cpp4
-rw-r--r--ace/XtReactor.h8
-rw-r--r--ace/config-irix6.2-sgic++-nothreads.h141
5 files changed, 157 insertions, 8 deletions
diff --git a/ace/OS.i b/ace/OS.i
index cdec7627eaf..2e111d60ad7 100644
--- a/ace/OS.i
+++ b/ace/OS.i
@@ -3452,9 +3452,8 @@ ACE_OS::thr_getprio (ACE_hthread_t thr_id, int &prio)
return prio == THREAD_PRIORITY_ERROR_RETURN ? -1 : 0;
#elif defined (VXWORKS)
ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::taskPriorityGet (thr_id, &prio), ace_result_), int, -1);
-#else
- ACE_NOTSUP_RETURN (-1);
#endif /* ACE_HAS_STHREADS */
+ ACE_NOTSUP_RETURN (-1);
#endif /* ACE_HAS_THREADS */
}
diff --git a/ace/Synch.cpp b/ace/Synch.cpp
index 916dc2a28cb..c2d980601af 100644
--- a/ace/Synch.cpp
+++ b/ace/Synch.cpp
@@ -190,7 +190,8 @@ ACE_Semaphore::ACE_Semaphore (u_int count,
ACE_Semaphore::~ACE_Semaphore (void)
{
// ACE_TRACE ("ACE_Semaphore::~ACE_Semaphore");
- this->remove ();
+ if (this->remove () == -1)
+ ACE_ERROR ((LM_ERROR, "%p\n", "ACE_Semaphore_Mutex::~ACE_Semaphore_Mutex"));
}
void
@@ -255,6 +256,8 @@ ACE_Process_Semaphore::ACE_Process_Semaphore (u_int count,
ACE_Process_Semaphore::~ACE_Process_Semaphore (void)
{
// ACE_TRACE ("ACE_Process_Semaphore::~ACE_Process_Semaphore");
+ // if (this->remove () == -1)
+ // ACE_ERROR ((LM_ERROR, "%p\n", "ACE_Process_Mutex::~ACE_Process_Mutex"));
}
// Explicitly destroy the semaphore.
@@ -502,6 +505,8 @@ ACE_Recursive_Thread_Mutex::ACE_Recursive_Thread_Mutex (LPCTSTR name,
ACE_Recursive_Thread_Mutex::~ACE_Recursive_Thread_Mutex (void)
{
// ACE_TRACE ("ACE_Recursive_Thread_Mutex::~ACE_Recursive_Thread_Mutex");
+ if (this->remove () == -1)
+ ACE_ERROR ((LM_ERROR, "%p\n", "ACE_Process_Mutex::~ACE_Process_Mutex"));
}
int
@@ -856,6 +861,8 @@ ACE_Thread_Mutex::dump (void) const
ACE_Thread_Mutex::~ACE_Thread_Mutex (void)
{
// ACE_TRACE ("ACE_Thread_Mutex::~ACE_Thread_Mutex");
+ if (this->remove () == -1)
+ ACE_ERROR ((LM_ERROR, "%p\n", "ACE_Thread_Mutex::~ACE_Thread_Mutex"));
}
ACE_Thread_Mutex::ACE_Thread_Mutex (LPCTSTR name, void *arg)
diff --git a/ace/XtReactor.cpp b/ace/XtReactor.cpp
index 33d9273ab8e..0ff8636e048 100644
--- a/ace/XtReactor.cpp
+++ b/ace/XtReactor.cpp
@@ -39,8 +39,10 @@ ACE_XtReactor::ACE_XtReactor (XtAppContext context,
// we simply close and re-opened the notification handler in the
// constructor of the XtReactor.
+#if defined (ACE_MT_SAFE)
this->notify_handler_.close ();
this->notify_handler_.open (this);
+#endif /* ACE_MT_SAFE */
}
ACE_XtReactor::~ACE_XtReactor (void)
@@ -158,7 +160,7 @@ int ACE_XtReactor::XtWaitForMultipleEvents (int width,
temp_set.rd_mask_,
temp_set.wr_mask_,
temp_set.ex_mask_,
- (ACE_Time_Value *) &ACE_TimeValue::zero) == -1)
+ (ACE_Time_Value *) &ACE_Time_Value::zero) == -1)
return -1; // Bad file arguments...
// Instead of waiting using select, just use the Xt mechanism to wait
diff --git a/ace/XtReactor.h b/ace/XtReactor.h
index 8feb29cbb5f..25ff4159244 100644
--- a/ace/XtReactor.h
+++ b/ace/XtReactor.h
@@ -50,11 +50,11 @@ public:
XtAppContext context (void);
// Register timers/handles with Xt.
- virtual int attach (ACE_HANDLE handle,
- ACE_Event_Handler *handler,
- ACE_Reactor_Mask mask);
+ virtual int register_handler_i (ACE_HANDLE handle,
+ ACE_Event_Handler *handler,
+ ACE_Reactor_Mask mask);
- virtual int detach (ACE_HANDLE handle, ACE_Reactor_Mask mask);
+ virtual int remove_handler_i (ACE_HANDLE handle, ACE_Reactor_Mask mask);
virtual int schedule_timer (ACE_Event_Handler *handler,
const void *arg,
diff --git a/ace/config-irix6.2-sgic++-nothreads.h b/ace/config-irix6.2-sgic++-nothreads.h
new file mode 100644
index 00000000000..54fb9df342b
--- /dev/null
+++ b/ace/config-irix6.2-sgic++-nothreads.h
@@ -0,0 +1,141 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for the SGI
+// Indigo2EX running IRIX 6.2 platform using the SGI C++ Compiler
+// *without* using SGI Pthreads (e.g., if you are still using sprocs).
+
+#if !defined (ACE_CONFIG_H)
+#define ACE_CONFIG_H
+
+// Include XtReactor into the library.
+#define ACE_HAS_XT
+
+// Platform supports getpagesize() call.
+#define ACE_HAS_GETPAGESIZE
+
+// Platform supports reentrant functions (i.e., all the POSIX *_r
+// functions).
+#define ACE_HAS_REENTRANT_FUNCTIONS
+
+// Platform does not support reentrant netdb functions (getprotobyname_r,
+// getprotobynumber_r, gethostbyaddr_r, gethostbyname_r,
+// getservbyname_r).
+#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
+
+//Sockets may be called in multi-threaded programs
+#define ACE_HAS_MT_SAFE_SOCKETS
+
+// Platform supports the tid_t type (e.g., AIX and Irix 6.2)
+#define ACE_HAS_TID_T
+
+// uses ctime_r & asctime_r with only two parameters vs. three
+#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
+
+// Platform has no implementation of pthread_condattr_setpshared(),
+// even though it supports pthreads! (like Irix 6.2)
+#define ACE_LACKS_CONDATTR_PSHARED
+
+#define ACE_LACKS_RWLOCK_T
+
+// Platform/compiler has the sigwait(2) prototype
+#define ACE_HAS_SIGWAIT
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Platform requires void * for mmap().
+#define ACE_HAS_VOIDPTR_MMAP
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+// Compiler/platform supports alloca()
+#define ACE_HAS_ALLOCA
+
+// Compiler/platform has <alloca.h>
+#define ACE_HAS_ALLOCA_H
+
+// Irix needs to define bzero() in this odd file <bstring.h>
+#define ACE_HAS_BSTRING
+
+// Compiler/platform has the getrusage() system call.
+#define ACE_HAS_GETRUSAGE
+
+// Denotes that Irix has second argument to gettimeofday() which is
+// variable (...)
+#define ACE_HAS_IRIX_GETTIMEOFDAY
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+// Platform supports POSIX timers via timestruc_t.
+#define ACE_HAS_POSIX_TIME
+#define ACE_HAS_SVR4_TIME
+#define ACE_NEEDS_SYSTIME_H
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Platform contains <poll.h>.
+#define ACE_HAS_POLL
+
+// No multi-threading so use poll() call
+// - for easier debugging, if nothing else
+// #define ACE_USE_POLL
+
+// Platform supports the /proc file system.
+#define ACE_HAS_PROC_FS
+
+// Explicit dynamic linking permits "lazy" symbol resolution.
+#define ACE_HAS_RTLD_LAZY_V
+
+// Compiler/platform defines the sig_atomic_t typedef.
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Platform supports SVR4 extended signals.
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_UCONTEXT_T
+
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+
+// Platform supports STREAMS.
+#define ACE_HAS_STREAMS
+
+// Platform supports STREAM pipes (note that this is disabled by
+// default, see the manual page on pipe(2) to find out how to enable
+// it).
+// #define ACE_HAS_STREAM_PIPES
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// Compiler/platform supports struct strbuf.
+#define ACE_HAS_STRBUF_T
+
+// Compiler/platform supports SVR4 dynamic linking semantics.
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Prototypes for both signal() and struct sigaction are consistent.
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+// Platform provides <sys/filio.h> header.
+#define ACE_HAS_SYS_FILIO_H
+
+// Compiler/platform defines a union semun for SysV shared memory.
+#define ACE_HAS_SEMUN
+
+// Platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+
+#endif /* ACE_CONFIG_H */