summaryrefslogtreecommitdiff
path: root/ChangeLog-97b
diff options
context:
space:
mode:
Diffstat (limited to 'ChangeLog-97b')
-rw-r--r--ChangeLog-97b4628
1 files changed, 0 insertions, 4628 deletions
diff --git a/ChangeLog-97b b/ChangeLog-97b
deleted file mode 100644
index bafaa8b6d43..00000000000
--- a/ChangeLog-97b
+++ /dev/null
@@ -1,4628 +0,0 @@
-Tue Sep 30 17:15:14 1997 James C Hu <jxh@lambada.cs.wustl.edu>
-
- * tests/Hash_Map_Manager_Test.cpp: Added some code to test the
- Hash_Map_Manager_Iterator. This is to show Bob Laferriere that
- it works.
-
-Tue Sep 30 13:41:14 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * examples/Service_Configurator/IPC-tests/server/Handle_R_Stream.i
- (handle_input):
- * examples/Reactor/ReactorEx/test_network_events.cpp (handle_input):
- * examples/Logger/simple-server/Logging_Acceptor.cpp
- (handle_input): Changed to use reset_new_handle () for querying
- whether we need to reset handles or not.
-
-Tue Sep 30 08:35:15 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/Atomic_Op.i: added CVS header.
-
- * tests/test_config.h: Added 1 second sleep to ACE_END_TEST to
- allow all threads to terminate gracefully.
- VxWorks only: removed the hack removal of the log file, because
- it no longer appears to be necessary.
-
- * tests/TSS_Test_Errno.h,TSS_Test.cpp: dynamically allocate
- Errno::lock_ to try to avoid problem with cleanup of statics
- on VxWorks. It doesn't solve the problem, all of the time.
- There are still statics in the ACE library, which could be
- causing it.
-
-Tue Sep 30 01:35:28 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/Naming_Context.cpp (close, close_down): Separated these two
- functions calls. Close now only release the name_space_
- resource and close_down release all resources. Close should be
- use when changing the name_space.
-
-Mon Sep 29 22:29:46 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/Strategies_T.cpp (accept_svc_handler ):
- * ace/Service_Manager.cpp (handle_input):
- * ace/Acceptor.cpp (handle_input, accept_svc_handler): Changed to
- use reset_new_handle () for querying whether we need to reset
- handles or not.
-
- * ace/Reactor.{h,i} (reset_new_handle):
- * ace/Reactor_Impl.h (reset_new_handle):
- * ace/Select_Reactor.{h,i} (reset_new_handle):
- * ace/WFMO_Reactor.{h,i} (reset_new_handle): Added this new method
- so we can determine whether the implementation of the reactor
- requires us to decouple the event a handle inherit from accept.
- This scheme doesn't depend on the RTTI support of compilers.
- Thanks to Irfan for the tips.
-
-Mon Sep 29 21:28:02 1997 <irfan@TWOSTEP>
-
- * ace/Synch (ACE_Recursive_Thread_Mutex): Methods were added to
- ACE_Recursive_Thread_Mutex so that it has a consistent interface
- with other locking mechanisms. Thanks to Phil Logan
- <phill@in.ot.com.au> for submitting these changes.
-
-Mon Sep 29 13:28:05 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/OS.i (thr_setconcurrency): added support on Irix 6.x, using
- its ::pthread_setconcurrency (). Thanks to Felix Popp
- <fxpopp@immd9.informatik.uni-erlangen.de> for letting us know
- about this Irix 6.2/3 system function, and for testing it out.
-
- * ace/ACE.cpp (handle_timed_complete) force recv check on VxWorks
- because its read handle is always not set. Thanks to Steve for
- helping track down the problem. We might want to consider doing
- it this way on Unix platforms, as well, according to Steve.
-
- * apps/JAWS/server/HTTP_Server_T.cpp (accept): fixed typo,
- "remote_address" instead of "remote_adrress".
-
- * tests/Time_Value_Test.cpp (test_ace_u_longlong): replaced
- ACE_ASSERTs with calls to a static function that prints out
- why the test failed. Also, disabled test of ACE_U_LongLong
- if ACE_HAS_64BIT_LONG.
-
- * ace/OS.h: 1) Use u_long for ACE_hrtime_t if ACE_HAS_64BIT_LONGS.
- 2) Added ACE_NO_INLINE support to allow wrapper_macros.GNU to
- disable inlining from the command line. 3) Added
- ACE_HAS_VERBOSE_NOTSUP support.
-
- * include/makeinclude/wrapper_macros.GNU: added "inline" flag to
- allow enabling/disabling of inlining from the command line or
- platform_macros.GNU.
-
- * ace/config-vxworks*.h: added ACE_HAS_VERBOSE_NOTSUP.
-
-Mon Sep 29 11:15:10 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/OS.h (ace_cleanup_destroyer): Made this an export function.
-
-Sat Sep 27 17:04:48 1997 <irfan@TWOSTEP>
-
- * ace/Reactor: Added new methods to be able to set and get the
- implementation class being used by the reactor. The set method
- is protected and should be used with care, specially while
- changing the implementation class midway through an
- application. Also both the methods are virtual, and user can
- subclass to change their behavior. The internal code of the
- reactor also changed to now use these methods exclusively rather
- than the the raw data variables.
-
- * ace/Acceptor.cpp (handle_input): When using the WFMO_Reactor, we
- need to reset the event association for the newly created
- handle. This is because the newly created handle will inherit
- the properties of the listen handle, including its event
- associations. Therefore two changes were made:
-
- - A new directive (flag) was added to all the acceptors
- (LSOCK_Acceptor, SOCK_Acceptor, SPIPE_Acceptor, TLI_Acceptor,
- and UPIPE_Acceptor) to reset the event associations of the
- newly created handle. Currently only the SOCK_Acceptor pays
- attentions to this directive, others just ignore it. This flag
- had to be added to all the acceptors for interface
- compatibility and also to make sure that the Acceptor template
- code works correctly.
-
- - A dynamic_cast was necessary to determine at run-time which
- implementation of the Reactor we are using. But because this
- code is limited to Win32, there should be no problems doing
- the dynamic_cast.
-
- The same thing as above needed to be done to:
-
- - ACE_Accept_Strategy::accept_svc_handler (ace/Strategies_T.cpp)
-
- - ACE_Service_Manager::handle_input (ace/Service_Manager.cpp)
-
- - LOCK_SOCK_Acceptor::accept (apps/JAWS/server/HTTP_Server_T.h)
-
- - Logging_Acceptor.cpp::handle_input (examples/Logger/simple-server/Logging_Acceptor.cpp)
-
- - Network_Listener::handle_input (examples/Reactor/ReactorEx/test_network_events.cpp)
-
- - Handle_R_Stream::handle_input (examples/Service_Configurator/IPC-tests/server/Handle_R_Stream.i)
-
-Sat Sep 27 20:03:29 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
-
- * include/makeinclude/platform_sunos5_sunc++_orbix.GNU:
- Activated exceptions by default too, since they are used by
- Orbix anyway.
-
- * include/makeinclude/platform_sunos5_sunc++.GNU:
- Some libraries were missing and the locations were not
- completely accurate.
-
- * ace/config-sunos5.5-sunc++-4.x-orbix.h:
- I let the MT Orbix as the default, since that is the
- configuration here and that was implicit in the platform*.GNU
- files.
-
- * include/makeinclude/wrapper_macros.GNU:
- Added flags to the IDL compiler to emit support for both
- CORBA::Any (-A) and the BOAImpl (-B) approach for the server
- side implementations.
-
- * ace/CORBA_Handler.cpp:
- The full definition for Thread_Manager was missing, I added an
- include for it.
-
-Sat Sep 27 07:59:18 1997 David L. Levine <levine@cs.wustl.edu>
-
- * include/makeinclude/wrapper_macros.GNU,
- platform_{chorus,lynxos,vxworks*}.GNU:
- default to building shared libs only, except on Chorus,
- LynxOS, and VxWorks. While the "shared_libs_only=1" make
- flag is still supported, it is no longer necessary because
- it is the default.
-
- To revert to the prior behavior of building both shared and
- static libraries, add "static_libs=1" to either your make
- command invocation or your include/makeinclude/platform_macros.GNU.
-
-Sat Sep 27 00:45:10 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * examples/OS/Process/README (imore):
- * examples/OS/Process/Makefile:
- * examples/OS/Process/imore.cpp: Added a new example: imore.
-
- * ace/SOCK_Stream.cpp (close, close_reader, close_writer): Moved
- invalid handlers checking from close to close_reader and
- close_writer.
-
-Fri Sep 26 14:28:36 1997 Nanbor Wang <nw1@CHA-CHA>
-
- * tests/SPIPE_Test.cpp:
- * tests/Process_Strategy_Test: Changed the macro "ACE_LACKS_EXEC"
- to "ACE_LACKS_FORK".
-
- * ace/SOCK_Stream.cpp (close): Added checking for invalid handle
- before shutting down the write end.
-
-Fri Sep 26 11:55:27 1997 Steve Huston <shuston@riverace.com>
-
- * ace/Malloc.h: Use signed math in the preprocessor calculations
- for ACE_CONTROL_BLOCK_ALIGN_LONGS (and all of its contributing
- factors).
-
- * ace/ACE.cpp: Fixed the TLI/BSD checks in handle_timed_complete.
-
- * tests/SOCK_Connector_Test.cpp: Added ENOTCONN as a valid fail
- condition (in addition to ECONNREFUSED).
-
-Fri Sep 26 05:11:40 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/SOCK_Acceptor.cpp (shared_accept): Made the newly added
- WSAEventSelect code unreachable. It caused several test program
- hung when performing socket recieving. Don't know why this is
- happening. According to the online manual, this should be the
- right thing to do. Some more Access Violations to be fix
- tomorrow. Oh, I mean, today.
-
-Fri Sep 26 01:22:28 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * ace/OS: Made a few changes to OS.h and OS.i to stop compiler
- warnings. Thanks to Wei Chiang <chiang@tele.nokia.fi> for
- reporting this.
-
- * ace/config-chorus.h: Added ACE_LACKS_RLIMIT and removed
- ACE_LACKS_SIGACTION. Thanks to Wei Chiang
- <chiang@tele.nokia.fi> for reporting this.
-
- * ace/TLI_Connector.cpp (complete): Changed the call to
- ACE::handle_timed_complete() to use the new parameter.
-
- * ace/ACE: Added an extra parameter to the call to
- ACE::handle_timed_complete() to indicate (at run-time) that this
- is being called via a TLI interface. Thanks to the
- ever-vigilant Steve Huston for suggesting this.
-
- * tests/SOCK_Connector_Test.cpp: "ACEified" the new test program.
-
-Thu Sep 25 23:27:38 1997 <irfan@TWOSTEP>
-
- * ace/config-win32.h: Error in directives: it should be "Define
- ACE_HAS_WINSOCK2 to 0 in your config.h file if you do *not* want
- to compile with WinSock 2.0.". The typo was a 1 instead of the
- 0. Thanks to Gonzalo A. Diethelm <gonzo@ing.puc.cl> for pointing
- this out.
-
-Thu Sep 25 20:33:09 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * ace/Message_Queue.h: Changed the *_i() methods to be virtual so
- that we can change the queueing mechanism by subclassing from
- ACE_Message_Queue. Thanks to Eric Newton <ecn@smart.net> for
- this suggestion.
-
- * ace/Timer_List_T.cpp (ACE_Timer_List_Iterator_T): Changed
- listParam to timer_list to keep programming style consistent...
-
-Thu Sep 25 17:06:42 1997 Steve Huston <shuston@riverace.com>
-
- * ace/OS.i - ACE_OS::cond_timedwait - HP's threads return
- EAGAIN on timeout from pthread_cond_timedwait, so adjust that
- to ETIME.
-
- * tests/SOCK_Connector_Test.cpp - will now try to find another
- host to run the connect to. Won't try on Win32 or VxWorks
- though.
-
-Thu Sep 25 15:25:53 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/Object_Manager.cpp,OS.cpp: moved socket_init to Object_Manager
- ctor and socket_fini to Object_Manager dtor, to be sure that
- WinSock gets initialized early and closed late.
-
- * ace/SOCK.{h,cpp}: removed dummy_ static now that the
- Object_Manager initializes WinSock.
-
- No, I'm not a Win32 wizard all of the sudden. Thanks to
- Irfan and Nanbor for directing these changes.
-
- * tests/run_tests.vxworks: commented out tests that don't run
- productively on VxWorks: SV_Shared_Memory_Test,
- Reactor_Exceptions_Test, SPIPE_Test, and UPIPE_SAP_Test.
-
-Thu Sep 25 03:50:27 1997 <irfan@TWOSTEP>
-
- * ace/OS.i (thr_getspecific): Must restore errno if no errors have
- occured.
-
- * ace/Log_Msg.cpp (close): Must close the message queue *before*
- destruction since there is no destructor for the queue.
-
- * netsvcs/lib/Client_Logging_Handler.cpp (fini): fini must close
- and unregister the acceptor. Closing the socket is simply not
- enough.
-
-Thu Sep 25 01:39:47 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/Containers.{i,cpp}: Commented out all ACE_TRACE macros in
- ACE_Unbounded_Queue<T> so that they won't cause SIGSEGV when we
- turn the tracing on. Unbounded_Queue is used in Object_Manager
- which must be initialize before most of other objects.
-
-Wed Sep 24 23:37:19 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/OS.i (thr_getspecific): On NT, added check whether
- ::GetLastError() is NO_ERROR when ::TlsGetValue() return 0.
-
-Wed Sep 24 13:37:02 1997 <irfan@TWOSTEP>
-
- * ace/config-win32-common.h (ACE_LACKS_FORK): Added in macro to
- distinguish between ACE_LACKS_FORK and ACE_LACKS_EXEC. Also
- updated config-chorus.h, config-vxworks-ghs-1.8.h, and
- config-vxworks5.x-g++.h.
-
- * ace/OS.h (ACE_WIN32CALL_RETURN && ACE_WIN32CALL): Added new
- macros to distinguish between Win32 calls that set GetLastError
- and those that set errno. Also updated ACE_OSCALL_RETURN and
- ACE_OSCALL such that they do not set errno to GetLastError. This
- is because these calls automatically set errno.
-
- Updates OS.* files to reflect these changes.
-
- * ace/SOCK_Acceptor.cpp (shared_accept): Make sure to reset the
- event association inherited by the new handle.
-
- * ace/WFMO_Reactor.i (unbind): Added a check for invalid handles
- being passed in for removals.
-
-Wed Sep 24 10:34:29 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
-
- * ace/OS.h:
- Under HP-UX and g++ <dl.h> must be included for dynamic loading,
- not <cxxdl.h>; thanks to Warren Thompson (wthompson@altaira.com)
- for helping us with this one.
-
-Wed Sep 24 09:36:21 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/Managed_Object.{h,i},Object_Manager.{h,cpp}: removed
- ACE_Managed_Object get_object () interface. It wasn't
- used anywhere; it was originally intended to support preallocated
- objects but turned out to not be necessary. I think that it would
- be more useful to make it possible to instantiate
- ACE_Managed_Object instead, and have it implicitly register
- with the ACE_Object_Manager.
-
- * ace/Timer_List_T.cpp (ACE_Timer_List_Iterator_T):
- changed name of "list" argument ot "listParam" to resolve name
- conflict with STL. Thanks to Brian Mendel for reporting this.
-
- * tests/run_tests.check: print out filename with error messages.
-
-Tue Sep 23 17:11:44 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
-
- * ace/config-hpux-10.x-g++.h:
- Added A ACE_LACKS_TIMESPEC_T, thanks to Warren Thompson
- (wthompson@altaira.com) for this one.
-
- * include/makeinclude/platform_hpux_gcc.GNU:
- Added a -D_REENTRANT define, to enable reentrant methods, thanks
- to Warren Thompson (wthompson@altaira.com) and Steve Huston
- (shuston@riverace.com) for pointing out this.
-
- * ace/config-hpux-10.x.h:
- Added an small comment to clarify that DCE/threads must be
- installed if threading is wanted, they are an optional product
- for HP-UX.
-
-Tue Sep 23 10:13:57 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/Select_Reactor.cpp: added #include of ace/Thread.h.
- Thanks to Vladimir Schipunov <vlad@staff.prodigy.com> for
- reporting this.
-
- * ace/Object_Manager.cpp: added #include of ace/Malloc.h.
- Thanks to Vladimir Schipunov <vlad@staff.prodigy.com> for
- reporting this.
-
- * ace/config-aix-4.1.x.h: added ACE_HAS_PTHREAD_T and
- ACE_HAS_BROKEN_EXPLICIT_TEMPLATE_DESTRUCTOR #defines.
- Thanks to Vladimir Schipunov <vlad@staff.prodigy.com> for
- reporting the build problem on AIX 4.1, and to
- Torbjorn Lindgren <tl@funcom.no> for providing these fixes.
-
- * ace/Token_Manager.{h,cpp},Object_Manager.{h,cpp}:
- preallocate ACE_Token_Manager creation lock.
-
- * ace/Object_Manager.cpp: use ACE_Cleanup_Adapter<TYPE[COUNT]>
- for preallocated arrays.
-
-Mon Sep 22 16:51:44 1997 <irfan@TWOSTEP>
-
- * ace/OS.i (open): Changed code so that (_O_CREAT | _O_TRUNC)
- means CREATE_ALWAYS. Thanks to Dave Brackman
- (dbrackma@OhioEE.com) for pointing this out.
-
-Mon Sep 22 11:01:28 1997 Steve Huston <shuston@riverace.com>
-
- * tests/SOCK_Connector_Test.cpp, Makefile, run_tests.sh - added new
- test to exercise ACE_SOCK_Connector focusing on fail conditions.
-
-Mon Sep 22 07:11:21 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/Message_Block.cpp (clone): check this block's cont ()
- instead of the new block's cont_ when cloning the continuation
- messages. Thanks to Eric Newton <ecn@smart.net> for tracking
- down this problem with failing to clone continuation blocks,
- and for providing the fix.
-
- * ace/OS.{h,i} (ACE_U_LongLong): added operator!=, and made args
- const to ctor, operator/, hi, and lo member functions.
-
- * ace/Managed_Object.[hi]: renamed ACE_Managed_Cleanup to
- ACE_Cleanup_Adapter because it doesn't implicitly register
- itself with the ACE_Object_Manager.
-
- * ace/ACE.cpp: moved ACE_Object_Manager_Destroyer to
- Object_Manager.cpp because the ACE_Object_Manager should
- always be linked into executables now, even if libACE is
- statically linked.
-
- * ace/Filecache.{h,cpp},Signal.{h,cpp} preallocate locks for
- Filecache and Signal in ACE_Object_Manager.
-
- * ace/Object_Manager.{h,cpp}: 1) renamed ACE_Managed_Cleanup to
- ACE_Cleanup_Adapter. 2) Moved ACE_Object_Manager_Destroyer from
- ACE.cpp to Object_Manager.cpp. 3) Added Filecache and Signal locks.
-
- * ace/Singleton.*: removed instance (TYPE *) member function because
- it wasn't being used. And, it allows us to store the contained
- instance_ as an object instead of a pointer, saving a dynamic
- memory allocation on construction.
-
- * include/makeinclude/platform_vxworks5.x_g++.GNU: added $(MUNCHED)
- to PRELINK, to allow applications to add libraries or object
- files to be munched.
-
- * ace/stdcpp.h: stdarg.h must be #included before stdio.h on LynxOS.
-
-Sat Sep 20 17:32:23 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/Object_Manager.{h,cpp},Managed_Object.*,
- CORBA_Handler.{h,cpp},Dump.{h,cpp},Log_Msg.cpp,OS.cpp
- revised ACE_Object_Manager interface for preallocated objects.
-
- Also, added documentation of ACE_Object_Manager interface to
- Object_Manager.h and Managed_Object.h.
-
- * ace/CORBA_Handler.cpp,Dump.cpp,OS.cpp: use ACE_MT with
- preallocated locks.
-
- * include/makeinclude/platform_*.GNU,wrapper_macros.GNU:
- moved -O out of wrapper_macros.GNU and into each platform
- file's OC[C]FLAGS to support "optimize" make flag.
-
- I moved -O and similar compile flags out of CFLAGS and/or
- CCFLAGS and into OCFLAGS and/or OCCFLAGS. This allows the
- ACE make system to support the "optimize" flag. It operates
- similar to the "debug" flag, i.e., you can set "optimize=1"
- or "optimize=0" in your platform_macros.GNU file to enable
- or disable optimization. You can use the same syntax to
- get the same effect from the "make" command line, e.g.,
- "make optimize=1 debug=0".
-
- I added optimize=1 to platform_*.GNU files that had -O, etc.,
- in their C[C]FLAGS. Therefore, there should be no net effect
- from this change on any platform.
-
- * include/makeinclude/wrapper_macros.GNU:
- I _removed_ the disabling of "debug" when "optimize=1" is
- enabled. This _will_ have a net effect: if you were relying
- on "debug" to be disabled when you enabled "optimize=1",
- you'll be surprised. The change supports platforms that
- allow "debug" and "optimize" simultaneously.
-
- Because I had added the disabling of "debug" recently,
- and because "optimize=1" wasn't supported well, if at all,
- I'd be suprised if any is actually affected by this change.
-
-Sat Sep 20 11:47:14 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
-
- * ace/Timer_Queue_T.cpp:
- Changed the return type to <int>, to match its declaration. The
- intent was to error error values, which are declared as <int>
- throughout ACE.
-
-Sat Sep 20 08:07:36 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/OS.i (gethrtime): on Linux only, removed "volatile" qualifier
- from declaration of local variable "now". I don't think that
- it's necessary. It causes compilation failure with g++ because
- the ACE_U_LongLong copy constructor won't take a volatile
- argument. Thanks to Sandro Doro <doros@aureus.sublink.org> for
- tracking down this problem.
-
- * tests/Time_Value_Test.cpp: reverted to test ACE_U_LongLong on
- all platforms except WIN32. It works properly on Linux with
- the removal of volatile from ACE_OS::gethrtime's "now". Thanks
- to Sandro Doro <doros@aureus.sublink.org> for figuring this one
- out.
-
-Fri Sep 19 18:49:50 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
-
- * ace/config-irix6.x-g++.h:
- * include/makeinclude/platform_irix6.x_g++.GNU:
- Added support for IRIX 6.x w/gcc, thanks to Celeste E. Copeland
- (celeste@altaira.com) for this.
-
-Thu Sep 18 19:33:02 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
-
- * Douglas added the following changes while going through the
- Async_Timer_Queue.
-
- * ace/Timer_Queue_T.h: Factored out the code for handling
- ualarm().
-
- * ace/Timer_Queue_T.cpp (handle_signal): Cleanedup the logic
- for rescheduling a ualarm() after expiring a timer.
-
- * tests/Async_Timer_Queue_Test.cpp (signal_handler): Changed the
- use of ACE_DEBUG to ACE_ERROR to ensure that the call doesn't
- magically disappear if ACE_NDEBUG is enabled.
-
-Fri Sep 19 18:05:48 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * ace/Log_Msg.cpp (log): Changed the send() to a send_n() so that
- all the data gets written...
-
-Fri Sep 19 14:52:53 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * netsvcs/lib/Client_Logging_Handler.cpp (get_handle): Can't use
- ACE_ERROR_RETURN here because ACE_HANDLE is a void* on NT, not
- int.
-
- * examples/Reactor/Misc: Added reactors.dsp signals_1.dsp
- signals_2.dsp.
-
- * ace/OS.cpp (thr_exit): Commented out the call to
- ACE_TSS_Cleanup::exit () because ACE_OS::thr_exit is actually
- called from ACE_TSS_Cleanup::exit ().
-
-Fri Sep 19 12:50:37 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ACE-INSTALL*,ace/README: added more documentation of requirement
- for explicit main (int, char *[]) arguments and int return type
- with ACE_HAS_NONSTATIC_OBJECT_MANAGER (on VxWorks).
-
-Thu Sep 18 22:45:09 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * netsvcs/lib/Client_Logging_Handler.cpp (close): Fixed a
- typo: it's output_ not outout_. Thanks to David for
- pointing this out.
-
- * netsvcs/lib/Client_Logging_Handler.cpp: Make sure to clean up
- all our resources (e.g., acceptor-mode and data-mode sockets)
- when we close down.
-
- * netsvcs/servers/main.cpp (main): Restored the entire contents of
- main().
-
- * tests/Semaphore_Test.cpp: Updated the test to use a temporary
- ACE_Time_Value variable that is passed to
- ACE_Semaphore::acquire() so that we don't have problems with
- reference anachronisms... Thanks to David Levine for reporting
- this.
-
- * ace/Log_Msg.cpp: Changed over to using ACE_SPIPEs for the
- logging mechanism rather than ACE_FIFOs to conform to the
- changes to Client_Logging_Handler.
-
- * netsvcs/lib/Client_Logging_Handler.cpp:
- Completely rewrote the Client Logging Daemon so that it uses
- ACE_SPIPEs by default, rather than ACE_FIFOs. This is more
- portable and makes it easier to write a generic client logging
- daemon... If a platform doesn't support ACE_SPIPEs, then we
- revert to using sockets.
-
-Thu Sep 18 21:56:33 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/OS.cpp (ACE_TSS_Cleanup::exit): Masked out codes that relate
- to freeing TSS keys and remove key entries from TSS cleanup
- table. I removed it here to avoid race condition.
- (ACE_TSS_Cleanup::free_all_key_left): Added this function to
- free all left over TSS keys and remove them from TSS cleanup
- table when the program exits. It is only called from
- ACE_OS::cleanup_tss.
- (ACE_OS::cleanup_tss): Added call to
- ACE_TSS_Cleanup::free_all_key_left when ACE_WIN32 or
- ACE_HAS_TSS_EMULATION are defined.
-
-Thu Sep 18 16:30:24 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/Semaphore_Test: protected declarations of test_timeout_count
- and timeouts because they're not used on Solaris.
-
- * netsvcs/lib/Client_Logging_Handler.cpp: added template
- instantiations.
-
-Thu Sep 18 09:04:40 1997 <irfan@TWOSTEP>
-
- * ace/Dynamic: Changed the way ACE_Dynamic worked. Instead of
- keeping the "this" pointer of the object in question, we are now
- simply keeping a flag that indicates whether the object was
- dynamically created. The trick to this approach is to make sure
- to reset the flag in the constructor. The "this" pointer
- approach was broken when used with multiple inheritance, because
- of "shearing" of the "this" pointer to get to the base
- Svc_Handler class.
-
-Thu Sep 18 01:12:36 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.3.8, released Thu Sep 18 01:12:36 1997.
-
-Wed Sep 17 22:47:20 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * ace/ACE: Added two new varargs methods for send() and recv().
- These are modeled after the ones that are in, e.g., ACE_SOCK_IO.
-
- * ace/Log_Msg.cpp (open): In the UNICODE version the compiler
- complains about mixed wchar/char usage in Log_Msg.cpp:
-
- Log_Msg.cpp(468) : error C2665: 'ACE_INET_Addr::ACE_INET_Addr' :
- none of the 8 overloads can convert parameter 1
- from type 'const unsigned short *'
-
- I fixed it modifing the connect() call from
-
- status = con.connect (*ACE_Log_Msg_message_queue,
- ACE_INET_Addr (logger_key));
-
- to
-
- status = con.connect (*ACE_Log_Msg_message_queue,
- ACE_INET_Addr
- (ACE_MULTIBYTE_STRING(logger_key)));
-
- Thanks to Dieter Quehl <dietrich.quehl@med.siemens.de> for
- reporting this.
-
- * ace/SV_Semaphore_Simple.h: By default, we want the flags to
- perform a SEM_UNDO. Thanks to Sandro Doro
- <doros@aureus.sublink.org> for reporting this.
-
- * tests/Makefile (BIN): Added Semaphore_Test.cpp to the Makefile.
- Thanks to Sandro Doro <doros@aureus.sublink.org> for reporting
- this.
-
- * tests/Async_Timer_Queue_Test.cpp: If you want to print a '\',
- you need to make it a \\... Thanks to David for noticing this.
-
- * apps/JAWS/clients/Blobby/Blob_Handler.h: There was a missing
- #include for "ace/SOCK_Stream.h".
-
- * netsvcs/lib/Client_Logging_Handler: Reimplemented this service
- so that it uses sockets on Win32 to receive logging messages
- from clients.
-
- * ace/Log_Msg.cpp: Enhanced ACE_Log_Msg::log() so that it now uses
- sockets on Win32 platforms to work around the lack of FIFOs.
-
- * ace/Log_Record.h: Revised the field layout of the ACE_Log_Record
- so that the length field comes first. This is necessary for the
- framing mechanisms used throughout ACE in various
- configurations.
-
-Wed Sep 17 15:17:38 1997 James C Hu <jxh@lambada.cs.wustl.edu>
-
- * ace/Filecache.cpp: ACE_Filecache::finish should check to see if
- the file passed in is NULL before attempting to grab the
- associated hash lock. Reported by Samuel Melamed
- <sam@vdo.net>.
-
-Wed Sep 17 13:51:25 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
-
- * bin/auto_compile:
- I setup autoflush on the logfile, it makes debugging and non
- crontab usage a bit easier.
-
-Wed Sep 17 12:59:34 1997 <irfan@TWOSTEP>
-
- * ace/Local_Name_Space_T.cpp: Fixed warnings caused by SEH macros.
-
-Wed Sep 17 01:07:40 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.3.7, released Wed Sep 17 01:07:40 1997.
-
-Tue Sep 16 23:34:36 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * netsvcs/servers/main.cpp (main): The use of braces was incorrect
- so that some services were being prematurely closed...
-
- * ace: Added a new flag called ACE_LACKS_FIFO to distinguish the
- (lack of) features on Win32...
-
- * ace/Timer_Queue_T: Added an expire() wrapper for the
- Async_Timer_Queue_Adapter.
-
- * ace/OS: Added a wrapper for strpbrk() and wcspbrk(). Thanks to
- Bob Olson <olson@jeeves.mcs.anl.gov> and Irfan for pointing out
- the need for this.
-
-Tue Sep 16 18:03:58 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
-
- * bin/auto_compile:
- It wouldn't report an error when run_tests.sh scream "FAILED",
- now it does.
-
-Tue Sep 16 08:30:28 1997 Steve Huston <shuston@riverace.com>
-
- * ace/OS.i: Changed a couple of ACE_UNUSED(arg) to ACE_UNUSED_ARG(arg)
-
-Mon Sep 15 12:08:38 1997 <irfan@TWOSTEP>
-
- * ace/Reactor (register_handler): Originally this interface was
- available for all platforms, but because ACE_HANDLE is an int on
- non-Win32 platforms, compilers are not able to tell the
- difference between
- register_handler(ACE_Event_Handler*,ACE_Reactor_Mask) and
- register_handler(ACE_Event_Handler*,ACE_HANDLE). Therefore, we
- have restricted this method to Win32 only.
-
- * ace/WFMO_Reactor.h: Removed non-Win32 version of the
- WFMO_Reactor. This is no longer required in the new scheme.
-
- * ace/XtReactor:
-
- Added remove_handler_i(const ACE_Handle_Set &,ACE_Reactor_Mask)
- to make the compiler happy.
-
- Also changed ACE_Reactor_Handle_Set to ACE_Select_Reactor_Handle_Set.
-
- * ace/Select_Reactor.cpp (ACE_Select_Reactor_Token): Added set/get
- select_reactor methods.
-
- * ace/OS.h (ACE_SEH_TRY): Changed ACE_SEH_TRY from nothing to
- "if(1)" on non-Win32 platforms. This should stop some compilers
- from complaining about unreachable code.
-
-Mon Sep 15 11:37:49 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
-
- * include/makeinclude/platform_hpux.GNU:
- Added -D_REENTRANT to enable the _r functions.
-
-Mon Sep 15 09:40:57 1997 Carlos O'Ryan <coryan@polka.cs.wustl.edu>
-
- * bin/auto_compile:
- Enabled the shared_libs_only flags to speed up compilations (and
- reduce disk space usage).
-
-Sun Sep 14 22:36:17 1997 <irfan@TWOSTEP>
-
- * ace/Select_Reactor.h: Added a no-op constructor for
- ACE_Select_Reactor_Token to make the compiler happy.
-
-Sun Sep 14 21:02:31 1997 David L. Levine <levine@cs.wustl.edu>
-
- * all Makefiles: ran "make depend" to update all ACE Makefiles.
-
- * include/makeinclude/platform_irix6.x-32_sgic++.GNU,
- platform_tandem.GNU: added debug = 1, to disable ACE_NDEBUG.
-
- * ace/Acceptor.cpp: added #include of ace/Handle_Set.h so that
- it will compile on g++/Solaris.
-
- * ace/Managed_Object.h: added #include of ace/OS.h because
- ACE_Cleanup class is used.
-
- * ace/Managed_Object.cpp: only #include ace/Synch.h if
- ACE_TEMPLATES_REQUIRE_SOURCE is not defined. The #include
- appears to be necessary with Digital Unix. But, it causes
- inline functions warnings with g++, both with inlining
- enabled and disabled. Circular #includes are evil :-)
-
- * ace/Select_Reactor.h: removed "," at end of DEFAULT_SIZE
- enum definition.
-
- * ace/Select_Reactor.i (register_handler): added ACE_UNUSED_ARGS.
-
- * ace/Select_Reactor.i: moved ACE_Select_Reactor::size () after
- ACE_Select_Reactor_Handler_Repository::size () to prevent use
- before definition.
-
- * ace/Select_Reactor.cpp: added template instantiation.
-
- * ace/Svc_Conf_y.cpp: commented out unused args and wrapped
- assignments in "if" conditionals to avoid g++ warnings.
-
- * ace/Token_Manager.h: inserting missing "public" access control
- specifier for ACE_Cleanup.
-
- * ace/OS.{h,cpp} (gethrtime, Linux only): inlined and added Alpha
- support.
-
- * ace/config-linux*.h: only define ACE_HAS_PENTIUM if i386 is defined.
-
-Sun Sep 14 10:35:57 1997 <irfan@TWOSTEP>
-
- * ace/Reactor: The Reactor classes (ACE_Reactor and ACE_ReactorEx)
- have changed. The motivation for this change was to allow users
- to program abstractly and use the most efficient implementation
- available on their platform. At the same time, we wanted to
- make the changes required by the users kept to a minimal.
-
- Here is a layout of the new Reactor hierarchy in ACE (an example
- of the GOF Bridge Pattern). Thanks to Thomas Jordan
- (Thomas_Jordan@deluxedata.com) for suggesting this new design.
-
-
- Reactor -----> Reactor_Impl
- ^
- |
- --------------------
- ^ ^
- | |
- Select_Reactor WFMO_Reactor
-
- Reactor:
-
- The Reactor class now becomes an interface class that contains
- a pointer to an implementation class. All methods of the
- Reactor class forward all calls to the appropriate
- implementation class. Users can pass in their own
- implementation class. If an implementation class is not
- supplied at creation time, the following default rules apply:
-
- On non-Win32 platforms: An instance of the Select_Reactor
- class will be created and used as the implementation.
-
- On Win32 platforms: An instance of the WFMO_Reactor class will
- be created and used as the implementation. This default
- behavior can be overwritten at compile-time by setting the
- ACE_USE_SELECT_REACTOR_FOR_REACTOR_IMPL flag. In this case, an
- instance of the Select_Reactor class will be created and used
- as the implementation.
-
- Reactor_Impl:
-
- Reactor_Impl is an abstract class (i.e., the Bridge).
- Select_Reactor and WFMO_Reactor inherit from this class.
-
- Select_Reactor:
-
- Previously known as the Reactor class. This class implements
- the Reactor_Impl interface by using the select() system
- call. This implementation is available on all platforms
- (including Win32).
-
- WFMO_Reactor:
-
- WFMO (Wait For Multiple Objects) Reactor, previously known as
- the ReactorEx class. This class implements the Reactor_Impl
- interface by using the WaitForMultipleObjects() system call.
- This implementation is currently only available on Win32
- platforms.
-
- Code changes for users:
-
- The higher authorities of ACE have decided that ReactorEx was
- a "goofy" name and made little sense in the new hierarchy.
- Therefore users using the old ReactorEx will have to change
- over to start using the Reactor class (and make sure that the
- implementation class being used is WFMO_Reactor).
-
- Also users that have extended Reactor or ReactorEx must
- now subclass from Select_Reactor or WFMO_Reactor,
- respectively.
-
- * ace/ReactorEx:
-
- The ReactorEx interface has been extended to be identical to the
- Reactor interface. Some of these new operations will not be
- supported in this version. However, we will have interface
- compatability at this point. This allows the creation of the new
- Reactor hierarchy in ACE.
-
- Removed all static (singleton) methods from ReactorEx. These are
- not necessary anymore since ReactorEx will become an
- implementation class. Reactor will take over this functionality.
-
- Changed methods names from resume_all to resume_handlers and
- suspend_all to suspend_handlers. This increases the similarity
- between ReactorEx and Reactor.
-
- Add a lock_adapter so that we can return an ACE_Lock form of our
- internal lock.
-
- Added signal handling capabilities to ReactorEx.
-
- Added handler, requeue_position, mask_ops, and ready_ops
- operations. However, they are not supported in this
- version. They are mostly here for interface compatibility with
- Reactor.
-
- Added a size() accessor that returns the current size of the
- ReactorEx's internal descriptor table.
-
- Added an initialized() accessor that returns true if ReactorEx
- has been successfully initialized, else false.
-
- * ace/Reactor:
-
- The Reactor interface has been extended to be identical to the
- ReactorEx interface. Some of these new operations will not be
- supported in this version. However, we will have interface
- compatability at this point. This allows the creation of the new
- Reactor hierarchy in ACE.
-
- Added resume_handler(ACE_Handle_Set &) and
- suspend_handler(ACE_Handle_Set &) to the Reactor. This
- increases the similarity between ReactorEx and Reactor.
-
- Add a lock_adapter so that we can return an ACE_Lock form of our
- internal lock. This changes the signature of the return type
- from ACE_Reactor_Lock to ACE_Lock.
-
- Added a size() accessor that returns the current size of the
- Reactor's internal descriptor table.
-
- Added wakeup_all_thread() operation. Currently it just does a
- notify.
-
- Added alertable_handle_events() operation. Currently it just
- calls handle_events().
-
- Added register_handler (that take event handles) operations.
- However, they are not supported in this version. They are mostly
- here for interface compatibility with ReactorEx.
-
- * ace/XtReactor: Now inherits from Select_Reactor instead of
- Reactor.
-
- * ace/Timer_Queue_T.h: Removed the inclusion of Time_Value.h. This
- file does not exist anymore
-
- * ace/Synch_T (ACE_Lock_Adapter): Changed the implementation of
- the adapter such that the user is allowed to (optionally) pass
- in the locking mechanism.
-
- * ace/Strategies: Removed ACE_ReactorEx_Notification_Strategy.
-
- * ace/Service_Config: Updated Service_Config so that all ReactorEx
- and Proactor methods are removed. ReactorEx does not exist any
- longer and Proactor methods are available as statics methods on
- the Proactor class.
-
- * ace/OS.h (ACE_DEFAULT_SELECT_REACTOR_SIZE): Changed
- ACE_DEFAULT_REACTOR_SIZE to ACE_DEFAULT_SELECT_REACTOR_SIZE.
- There is no default size dictated by the Reactor class anymore.
-
- * ace/Local_Tokens,Token: Added new methods: acquire_read,
- acquire_write, tryacquire_read, tryacquire_write. These methods
- allow the Tokens to be used by the ACE_Lock_Adapter class.
-
- * ace/Handle_Set.h (MAXSIZE): Changed ACE_DEFAULT_REACTOR_SIZE to
- ACE_DEFAULT_SELECT_REACTOR_SIZE. There is no default size
- dictated by the Reactor class anymore.
-
- * ace/Event_Handler: Removed the Proactor and ReactorEx pointers
- from Event_Handler. The Proactor has its own event handler
- (ACE_Handler), and the ReactorEx does not exist anymore.
-
- * ace/Proactor:
-
- Changed Proactor to work with the new Reactor.
-
- Updated Proactor to bring it upto date with the recent changes
- to the Timer_Queue.
-
- * tests:
-
- Removed the ACE_NEW_THREAD macro. With the new thread adapter,
- the log stream for the new thread will automatically be set to
- the creator thread's stream. Therefore, this macro is not
- needed.
-
- Removed the inclusion of Service_Config.h. All tests are now
- accessing the singletons that are supported by the class directly.
-
- * examples/Reactor/Proactor: Updated examples to use and access
- the new Reactor class instead of the old ReactorEx.
-
- * examples/Reactor/ReactorEx: Updated examples to use and access
- the new Reactor class instead of the old ReactorEx.
-
-Sun Sep 14 09:50:22 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * ace/Singleton.i (ACE_Singleton): Moved the definition of the
- ACE_Singleton default constructor into the *.i file. In
- general, it's not a good idea to put definitions in *.h files.
-
- * tests/test_config.h: Improved the #undef scheme for ACE_NDEBUG.
-
-Sat Sep 13 23:51:55 1997 Nanbor Wang <nw1@dingo.wolfpack.cs.wustl.edu>
-
- * ace/ACE_Library.{mak,mdp}: Removed Service_Record.cpp and added
- Service_Type.cpp in project file.
-
- * ace/: Removed ace.{mak,mdp} and replaced them with
- ACE_Library.{mak,mdp}. MSVC 4.2 insists to change the release
- version DLL from our original setting "ace.{dll,lib}" to "ACE
- dynamic Library.{dll,lib}". This is so far the only known
- method to get around this.
-
- * netsvcs/servers/servers.{dsw,dsp}: Changed the output filenames
- of debug version from maind.exe to main.exe.
-
- * netsvcs/lib/netsvcs.{dsw,dsp}: Changed the output filenames of
- debug version from netsvcsd.{dll,lib} to netsvcs.{dll,lib}.
-
- * ace/ace.dsw:
- * ace/ace_{dll,lib}.dsp: Removed Service_Record.cpp and added
- Service_Type.cpp.
-
- * ace/Log_Msg.cpp (open): Fixed a typo.
-
- * ace/Reactor.cpp: Fixed a typo.
-
-Sat Sep 13 17:23:22 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.3.6, released Sat Sep 13 17:23:22 1997.
-
-Sat Sep 13 12:11:50 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * tests: #include "test_config.h" before all the other files so
- that we always have the ACE_ASSERT enabled... Thanks to Carlos
- for noticing this.
-
- * ace/Reactor.cpp: Added Arturo's improvements for suspending and
- resuming Event_Handlers.
-
- * tests/Reactors_Test.cpp: As a result of the new changes to
- ACE_Thread_Manager, the Reactors_Test now seems to be working
- fine.
-
- * ace/Thread_Manager.cpp (append_thr): When we append a new
- Thr_Descriptor make sure to zero-out the cleanup_info_ fields
- since otherwise horrible things will happen...
-
- * ace/Reactor: Added a new ACE_Reactor_Handle_Set called
- suspend_set_ and updated the suspend_i() and resume_i() method
- to use this set to store the ready bits that are enabled when we
- suspend and resume and Event_Handler, respectively. Thanks to
- Arturo for this suggestion.
-
- * tests/TSS_Test.cpp (main): Had to move the allocation and
- deletion of TSS_Error into the ACE_HAS_THREADS section since
- otherwise this test doesn't work when threading is disabled.
-
- * tests/Thread_Manager_Test.cpp: Move the template specialization
- inside of the ACE_HAS_THREADS macro since otherwise this test
- doesn't work when threading is disabled.
-
- * ace/Thread_Manager.cpp: Arrgh! Must initialize the cleanup_info
- fields to 0 in the constructor for ACE_Thread_Descriptor! This
- should fix a nasty bug...
-
- * tests/Async_Timer_Queue_Test.cpp: Continued to improve the
- documentation in the test of the ACE_Async_Timer_Queue_Adapter.
-
- * ace/Timer_Queue_T.cpp (schedule): Oops, must pass &this->mask_
- to ACE_Sig_Set rather than this->mask_.
-
- * ace/Object_Manager.cpp: Changed #include
- "ace/Service_Repository.h" to #include "ace/Service_Config.h"
- since we now call ACE_Service_Config::close().
-
- * ace/Service_Types: Removed a nasty circular dependency by simply
- having each of the ACE_Service_Type_Impl subclasses take const
- void *'s rather than their specific type (i.e., ACE_Stream or
- ACE_Module, etc.). This turns out not to be a problem since we
- treated them as const void *'s internally anyhow...
-
- * ace/Strategies_T.cpp: Fixed a bug in ACE_DLL_Strategy:
-
- ACE_Service_Type_Impl stp = new ACE_Service_Object_Type (svc_handler, this->svc_name_);
-
- should be
-
- ACE_Service_Type_Impl *stp = new ACE_Service_Object_Type (svc_handler, this->svc_name_)
-
- I wonder how this ever compiled?!
-
-Fri Sep 12 13:26:50 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * ace/Mem_Map.cpp (close): Removed the following code in the
- close() method that appears to be redundant with the code in
- unmap():
-
- if (this->file_mapping_ != this->handle_
- && this->file_mapping_ != ACE_INVALID_HANDLE)
- ACE_OS::close (this->file_mapping_);
-
- Also cleaned up the close() code so that it doesn't try to close
- the handle multiple times, even if close() is called more than
- once. Thanks to Beged-Dov <begeddov@proaxis.com> for reporting
- this.
-
- * tests/Async_Timer_Queue_Test.cpp: Improved the structure of the
- program and finished implementing the new feature that makes it
- possible to avoid blocking SIGQUIT.
-
- * ace/Timer_Queue_T: Added support for an ACE_Sig_Set that can be
- passed into the constructor of ACE_Async_Timer_Queue_Adapter.
- This will enable us to selectively block only certain signals.
-
- * ace/Signal: Added a new constructor for ACE_Sig_Set that takes
- ACE_Sig_Set * and also improved the documentation of the
- constructor interfaces.
-
-Fri Sep 12 13:46:04 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/OS.[hi],Log_Msg.h,config-lynxos.h,
- include/makeinclude/platform_lynxos.GNU: added LynxOS port,
- provided by Dave Mayerhoefer <davem@lynx.com>. Note how few
- files were affected. What's even more amazing is the very small
- number, 8, of very minor code changes to OS.[hi] and Log_Msg.h.
- This is a tribute to the maturity of
- <a href="http://www.lynx.com>LynxOS</a>, a POSIX-conforming,
- multiprocess, and multithreaded real-time operating system.
- And to the maturity of ACE.
-
-Fri Sep 12 12:53:20 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/config-osf1-4.0.h: added
- ACE_HAS_BROKEN_EXPLICIT_TEMPLATE_DESTRUCTOR.
-
- * ace/Managed_Object.cpp: added #include "ace/Synch.h".
-
- * ace/Strategies_T.cpp: added #include "ace/Service_Types.h".
-
- Thanks to James Johnson for the three fixes above.
-
- * ace/Service_Types.cpp: #include Service_Types.i instead of
- Service_Record.i.
-
- * ace/Synch_T.cpp: added #include "ace/Log_Msg.h". I don't know
- what change caused this to be necessary, but tests/TSS_Test
- wouldn't build without it.
-
- * ace/Log_Msg.cpp (instance): preallocate ACE_Log_Msg instance lock.
-
-Thu Sep 11 21:07:25 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * ace/Service_Object.h: Moved the ACE_Service_Type class into the
- Service_Object.h file since this is "publically" visible to
- applications.
-
- * ace/Service_Types.h: Improved the documentation of the
- ACE_Service_Type subclass implementations.
-
- * ace/Service_Types: Changed the name next_ to link_ to be
- consistent with the accessor name.
-
- * ace: Renamed Service_Record.{h,i,cpp} to Service_Types.{h,i,cpp}
- to reflect the recent change in names.
-
- * ace/Service_Object.h: Renamed ACE_Service_Type to
- ACE_Service_Type_Impl and ACE_Service_Record to ACE_Service_Type
- in order to emphasize the use of the Bridge pattern. Thanks to
- Eric Newton for motivating this.
-
- * ace/Svc_Conf.y: Removed the warning about Service name being
- different from Module name. I'm not sure why this was
- complaining in the first place. Thanks to Eric Newton for
- pointing this out.
-
- * netsvcs/lib/README: The entry point for the time service client
- is _make_ACE_TS_Clerk_Processor and not
- _make_ACE_TS_Clerk_Connector. Thanks to Ivan for pointing this
- out.
-
-Thu Sep 11 10:59:12 1997 <nw1@CHA-CHA>
-
- * ace/Connector.cpp (handle_output): Increased the idle time
- before we check the status of a non-blocking connection from 1
- ms to 35 ms when ACE_HAS_BROKEN_NON_BLOCKING_CONNECTS is
- defined (i.e., Win32.) This is very odd but wait a whole lot
- longer seems to solve the problem.
-
- * ace/Log_Msg.cpp (close): On Win32, ACE_Log_Msg_Manager needs to
- delete main thread's ACE_Log_Msg instance also.
-
-Thu Sep 11 10:37:00 1997 Carlos O'Ryan <coryan@polka.cs.wustl.edu>
-
- * ace/ACE.cpp:
- * ace/INET_Addr.cpp:
- * ace/Log_Msg.h:
- * ace/Memory_Pool.h:
- * ace/OS.h:
- * ace/OS.i:
- * ace/Parse_Node.cpp:
- * ace/Strategies_T.h:
- * bin/clone.cpp:
- * netsvcs/clients/Naming/Dump_Restore/Dump_Restore.h:
- I checked the use of MAXNAMELEN vs. MAXPATHLEN; all buffers
- intended to keep full filenames should have at least
- MAXPATHLEN+1 chars.
- Only buffers that will keep basenames (without any directories)
- should have MAXNAMELEN+1 bytes.
- I also added a new macro ACE_MAX_FULLY_QUALIFIED_NAME_LEN which
- is the maximum number of characters for a fully qualified
- internet hostname.
- There remain one obscure usage of these macros in ace/Malloc.h
- and Local_Naming_Space_T.{h,cpp}, but a quick fix broke
- something, I will try again soon.
-
-Thu Sep 11 08:52:36 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/OS.cpp (thr_key_detach): check to see if the
- ACE_TSS_Cleanup lock has been constructed, and not
- destructed, before attempting to use it. Statics are evil.
-
- * ace/Log_Msg.cpp (~ACE_Log_Msg): release guard before calling
- ACE_Log_Msg_Manager::close (), because that deletes the lock.
-
- * ace/Managed_Object.{h,cpp} (get_object): changed type of "id"
- to int because it will often be passed an enum. Pass "id" by
- value to get_object (int id), for preallocated objects.
-
- * ace/Object_Manager.{h,cpp}: added ACE_LOG_MSG_INSTANCE_LOCK,
- and ACE_PREALLOCATE_OBJECT macro.
-
- * include/makeinclude/wrapper_macros.GNU: ignore shared_libs_only
- in modules that only build a static lib. Fixed shared_libs_only
- by removing OBJDIRS, unless BIN is undefined, and VDIR. Removed
- SHOBJ from both shared_libs_only and static_libs_only because
- they're unused.
-
- * include/makeinclude/rules.local.GNU: added lib*.*_pure* to
- clean.local target, to remove Purified libraries.
-
- * examples/Connection/non_blocking/Makefile,
- examples/Service_Configurator/IPC-tests/server/Makefile:
- removed -L./ from LDFLAGS because it's redundant:
- wrapper_macros.GNU adds it.
-
-Wed Sep 10 22:58:10 1997 Douglas C. Schmidt <schmidt@mambo.cs.wustl.edu>
-
- * ace/Thread_Manager.cpp (exit): Reordered the code so that it
- will keep the lock held long enough to copy out the thread exit
- hook but will release the lock before calling this hook.
-
-Wed Sep 10 11:04:08 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/config-sunos5.5-g++.h: added
- ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS.
-
- * include/makeinclude/wrapper_macros.GNU: added PIC= with
- static_libs_only, and added list of supported make flags.
-
- * include/makeinclude/wrapper_macros.GNU: added support for
- debug=0, etc. Also, made debug, optimize, and profile
- flags independent instead of exclusive. Thanks to Per
- Andersson for suggesting this.
-
- * include/makeinclude/platform_*.GNU: replaced "CFLAGS +=
- $(DCFLAGS) with debug=1 so that debugging can easily be
- disabled. Thanks to Per Andersson and James CE Johnson
- for noticing this deficiency.
-
- * include/makeinclude/platform_vxworks5.x_g++.GNU: removed
- "-I. -I$(ACE_ROOT)" from CFLAGS because it duplicates the
- INCLDIRS set in wrapper_root.GNU.
-
-Wed Sep 10 10:35:06 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ACE version 4.3.5, released Wed Sep 10 10:35:06 1997.
-
-Wed Sep 10 10:25:41 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/Thread_Manager.cpp (exit): copy the thread exit hook before
- releasing the guard, and call it after releasing the guard.
-
- * examples/Shared_Malloc/test_malloc.cpp (spawn): added (char *)
- cast of slave_name () to avoid compilation warnings on Solaris.
-
-Wed Sep 10 00:43:04 1997 Nanbor Wang <nw1@dingo.wolfpack.cs.wustl.edu>
-
- * ace/Makefile: Added Managed_Object to template sources.
-
- * ace/Object_Manager.{h,cpp}: * ace/Managed_Object.{h,cpp}:
- Separate ACE_Managed_Object to a new set of file.
-
-Tue Sep 9 23:41:56 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * tests/Reactors_Test.cpp (main): Check to see if wait() returns
- -1 and then test to see what's gone wrong!
-
- * ace/OS.h: Added a "fake" #define for SIGALRM so that programs
- will *compile* on platforms like Chorus. Thanks to Wei Chiang
- for reporting this.
-
- * examples/Shared_Malloc/test_malloc.cpp (spawn): HP/UX doesn't
- seem to like const char *const argv[] being given an initializer
- list. I've fixed this to be just plain ol' char *argv[].
- Thanks to Sandro Doro for reporting this.
-
- * ace/Handle_Set.i (clr_bit): Replaced SOCKET with ACE_SOCKET so
- this will compile on UNIX.
-
-Tue Sep 09 17:16:21 1997 <irfan@TWOSTEP>
-
- * ace/Proactor: Updated Proactor to bring it upto date with the
- recent changes to the Timer_Queue.
-
- * ace/Handle_Set.i (clr_bit and set_bit): These methods now change
- the size_ member of the class on Win32. This is necessary since
- the ACE_Handle_Set::operator fd_set *() accessor has been
- optimized for size_ == 0.
-
-Tue Sep 09 09:14:07 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/OS.cpp (cleanup_tss): On WIN32 and with ACE_HAS_TSS_EMULATION,
- delete the ACE_TSS_Cleanup instance instead of registering it for
- cleanup via the ACE_Object_Manager's at_exit (). This should allow
- applications to use ACE_Log_Msg in their at_exit () hooks. Thanks
- to Wei Chiang <chiang@tele.nokia.fi> for reporting this problem.
-
- * ace/Object_Manager.{h,cpp}: added guard of internal structures.
- (dtor): call at_exit hooks before calling cleanup_tss, now that
- the ACE_TSS_Cleanup instance is no longer registered for an at_exit
- call. (at_exit): set errno instead of returning different values
- on error. Added ACE_Managed_Object template class, intended for
- use in replacing static instances.
-
- * ace/Thread_Manager.cpp (exit): release guard before running the
- thread exit hooks. This should help avoid deadlocks, in case
- one of those hooks needs to operate on the Thread_Manager.
-
- * ace/CORBA_Handler.{h,cpp},Dump.{h,cpp},Object_Manager.{h,cpp}:
- preallocate locks for CORBA_Handler and Dump in ACE_Object_Manager.
- Statics are evil.
-
- * ace/Synch.{h,cpp},OS.cpp,Object_Manager.{h,cpp}: removed
- ACE_TSS_Cleanup_Lock and replaced it with a preallocated mutex
- in OS.cpp. Thanks to Nanbor for reporting problems at shutdown
- with the old ACE_TSS_Cleanup_Lock static instance.
-
- * include/makeinclude/platform_sunos5_sunc++.GNU: when building
- libraries only, don't use CC to create individual .shobj/*.so
- files. The .so files are not needed to build libraries, because
- libraries are built with -G. (They are needed to avoid upsetting
- the ACE make rules, so they're created as links to their
- corresponding .o files.) The .so files are still needed when
- building executables in order to get all template instantiations.
-
- * include/makeinclude/platform_sunos5_g++.GNU: removed unused
- SOLINK definitions.
-
-Mon Sep 8 18:38:22 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * tests/Handle_Set_Test.cpp: It is possible for the order to get
- the handles (using the iterator) will not agree with insert
- order in ACE_Unbounded_Queue. It's best to use
- ACE_Unbounded_Set. Thanks to Arturo for this fix.
-
-Mon Sep 8 17:43:43 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * ace/Timer_{List,Wheel,Hash,Heap}_T.cpp: The iter() method now
- returns a pointer to an iterator that is in a reset state
- instead of an unknown one.
-
-Mon Sep 8 14:05:15 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/ACE.cpp (read_adapter): Removed ACE_Thread_Control object in
- this function. This is now taken care of by ACE_Thread_Manager.
- (register_stdin_handler): This function no longer uses
- ACE_Stdin_Args to pass in thread manager into read_adapter.
-
- * ace/ACE.h (ACE): Removed class ACE_Stdin_Args, because it is no
- longer needed.
-
-Mon Sep 08 11:49:02 1997 David L. Levine <levine@cs.wustl.edu>
-
- * tests/run_tests.sh: moved log file checks out to separate file,
- run_tests.check.
-
- * tests/run_tests.vxworks: added one-button test for VxWorks.
- Check it out, Darrell.
-
- * ace/Filecache.cpp: commented out unused constants [RW]COPY_FLAGS.
-
-Mon Sep 08 08:26:52 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ACE version 4.3.4, released Mon Sep 08 08:26:52 1997.
-
-Sat Sep 6 10:41:17 1997 Carlos O'Ryan <coryan@polka.cs.wustl.edu>
-
- * ace/Malloc.h:
- sizeof() must be casted to int in ACE_CONTROL_BLOCK_ALIGN_LONGS
- otherwise unsigned int arithmetic is used, thus obtaining
- unexpected results.
-
-Sat Sep 06 09:07:02 1997 David L. Levine <levine@cs.wustl.edu>
-
- * OS.{h,cpp}: added ACE_Cleanup base class and
- ace_cleanup_destroyer adapter.
-
- * Object_Manager.*: added at_exit () interface for ACE_Cleanup objects.
-
- * Singleton.{h,cpp},Token_Invariants.{h,cpp},Token_Manager.{h,cpp}:
- base on ACE_Cleanup, so that simpler ACE_Object_Manager::at_exit ()
- can be used.
-
- * performance-tests/Misc/Makefile: moved $(BIN) files from FILES
- to SRC so that they don't get put into libPerf.
-
-Sat Sep 6 02:36:31 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * tests/test_config.h (set_output): Added openning flag ios::trunc
- explicitly if we are not appending to the opening ofstream.
- This is required by standard CPP iostream libraries on NT (i.e.,
- we can't use ios::out alone when ofstream.open a file.)
-
-Sat Sep 6 00:21:33 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * ace/Synch_T.h: Added new constructors:
-
- ACE_Guard(ACE_LOCK& l) : lock_(&l)
- { this->owner_ = this->acquire(); }
-
- ACE_Read_Guard(ACE_LOCK& m) : ACE_Guard(&m)
- { this->owner_ = this->acquire_read(); }
-
- ACE_Write_Guard(ACE_LOCK& m) : ACE_Guard(&m)
- { this->owner_ = this->acquire_write(); }
-
- Remove default argument to current Guard classes.
-
- ACE_Guard(ACE_LOCK&l, int block)
- ACE_Read_Guard(ACE_LOCK& m, int block)
- ACE_Write_Guard(ACE_LOCK&m, int block)
- with the current semantic.
-
- This change allows OS platforms with
- ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION or ACE_HAS ??? PRAGMA
- ???, to> invoke common case constructor in a more efficient
- way. Thanks to Arturo for this.
-
- * ace/Synch_T.h: ACE_Guard's destructor should be:
-
- ~ACE_Guard() { this->release(); }
-
- and not
-
- ~ACE_Guard() { if (this->owner_ != -1) this->release(); }
-
- because ACE_Guard::release has this test. Thanks to Arturo for
- reporting this.
-
- * ace/ARGV.cpp: Declared the char* parameters for the ACE_ARGV
- class constructors as const. Since they are copied in the
- constructors, this is a safe thing to do. This makes it easier
- to pass the result of string::c_str() to it. Thanks to Stephen
- Coy <stevec@magna.com.au> for this suggestion.
-
- * ace/Thread_Manager.cpp: We were missing a Guard in the
- ACE_Thread_Manager::at_exit() method.
-
- * ace/config-sunos5.5-sunc++-4.x.h: It appears that we need to set
- ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS for Solaris 2.5 since otherwise
- wierd things happen randomly. This is based on the following man
- page entry for pthread_exit():
-
- Do not call pthread_exit() from a cancellation cleanup handler
- or destructor function that will be invoked as a result of
- either an implicit or explicit call to pthread_exit().
-
- * ace/Thread_Manager.cpp (run_thread_exit_hooks): Once the cleanup
- hook(s) are called we set the value of the cleanup hook variable
- to 0 to avoid false matches later on.
-
-Fri Sep 5 21:57:44 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/Containers.i (is_empty):
- * ace/Malloc.cpp (instance): Commented out ACE_TRACE in these
- routines. They were causing recursive call if we used TRACE.
- Thanks to Craig Perras <craig.perras@CyberSafe.COM> for solving
- this.
-
- * ace/Handle_Set.i (fd_set *): Added conditional compilation code
- for Win32 platforms. This is because we don't maintain <size_>
- on Win32 and, therefore, can't depend on it.
-
-Fri Sep 5 19:05:02 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * tests/Thread_Manager_Test.cpp (main): moved delete
- signal_catcher into the ACE_HAS_THREADS part of the main()
- function.
-
- * ace/Reactor.cpp (check_handles): When handle_error was optimized
- with fstat we put NULL value to second argument. It requires a
- value to SCO OpenServer to work. Therefore, I added struct stat
- temp and changed ACE_OS::fstat(handle, NULL) by
- ACE_OS::fstat(handle, &temp); Thanks to Arturo for fixing this.
-
- * examples/Threads/process_manager.cpp (sig_handler): Fixed a bug
- where the thread was exiting if no more children existed.
- Thanks to Avraham Nash <ANash@Engagetech.com> for reporting
- this.
-
- * ace/Handle_Set: Added the following performance enhancements:
-
- . Assignment operator to optimize size == 0.
-
- . min_handle to manage the case when the Handle_Set start in
- handle different of zero.
-
- . A new iterator algorithm tuned for select function calls.
-
- Thank to Arturo for these enhancements.
-
- * ace/config-aix-4.1.x.h: Added ACE_LACKS_TIMESPEC_T. Thanks to
- Rob Head (rhead@virtc.com) for reporting this.
-
- * ace/OS.cpp (fork_exec): Changed the logic so that we don't
- create a new console window on Win32. This isn't done on UNIX,
- so there's no point in doing it here. Thanks to Jeff Richard
- <jrichard@OhioEE.com> for pointing this out.
-
- * ace/Reactor.cpp: The call to
- ACE_Reactor_Handler_Repository::open() in the constructor of
- ACE_Reactor should check for == -1! Thanks to Brian Mendel for
- reporting this.
-
- * ace/Reactor.cpp (remove_handler): Fixed a braino where the
- conditional compile for NSIG should have been > 0 rather than ==
- 0. Thanks to fixing this codeKaren Amestoy
- <kamestoy@CCGATE.HAC.COM> for reporting this fix.
-
-Fri Sep 05 16:17:50 1997 David L. Levine <levine@cs.wustl.edu>
-
- * performance-tests/Misc/preempt.cpp: added command line options,
- and explanation on how to interpret the results.
-
-Thu Sep 04 10:26:11 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/OS.cpp: (tss_open): removed paren from around type in "new"
- statement, because GHS (and ANSI C++) compilers will choke on it.
- Thanks to Brian Mendel <brian.r.mendel@boeing.com> for reporting
- this.
-
- * ace/Thread_Manager.cpp: (ACE_Thread_Descriptor ctor): zero out
- cleanup_hook_ in cleanup_info_ because we read it later on.
- (dump): added guard because thr_table_ is accessed. (wait):
- hacked in thr_yield () to give waited threads a chance to clean
- up before continuing.
-
- * ace/OS.h (ACE_Cleanup_Info): added default ctor.
-
- * ace/Log_Msg.cpp (close): delete main thread's Log_Msg instance,
- on Solaris if ACE_HAS_EXCEPTIONS is not defined, because main
- thread TSS dtors apparently don't get called.
-
- * ace/Token_Manager.{h,cpp}: register ACE_Token_Manager singleton
- for deletion with ACE_Object_Manager.
-
- * ace/Token_Invariants.{h,cpp}: register ACE_Token_Invariant_Manager
- singleton for deletion with ACE_Object_Manager.
-
- * ace/Naming_Context.cpp (close) moved deletion of "name_options_"
- from dtor to close (), because when Service_Repository is closed,
- it calls close () instead of deleting the service.
-
- * ace/Process_Strategy.cpp (handle_signal): suppress printouts during
- shutdown, to prevent using ACE_Log_Msg while it's being deleted.
-
- * ace/Timer_List.cpp: replace ACE_Recursive_Thread_Mutex with
- ACE_SYNCH_RECURSIVE_MUTEX, for non-threaded platforms.
-
- * tests/Reactors_Test (~Test_Task): moved ASSERT after the printout,
- so we can see why it failed. (svc): added printout with thread ID.
- (main): deleted reactor at end of test to prevent leak.
-
- * tests/SPIPE_Test (client): increased sleep time to 10 sec,
- because a long delay is needed with Purify.
-
- * tests/UPIPE_Test (connector): added 5 second sleep to give
- acceptor a chance to start up.
-
- * include/makeinclude/wrapper_macros.GNU: added -max_threads=100 to
- Quantify options.
-
- * include/makeinclude/rules.local.GNU: added *.sym to clean target.
-
-Thu Sep 04 09:39:08 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ACE version 4.3.3, released Thu Sep 04 09:39:08 1997.
-
-Thu Sep 04 08:48:13 1997 David L. Levine <levine@cs.wustl.edu>
-
- * include/makeinclude/wrapper_macros.GNU: added shared_libs_only
- and static_libs_only build options. Only static_libs_only
- has been tested successfully.
-
- * include/makeinclude/rules.lib.GNU: added INSTALL support for
- shared_libs_only and static_libs_only.
-
- * include/makeinclude/platform_vxworks*.GNU: use static_libs_only.
-
- * ace/OS.cpp: moved tss_open ()/tss_close () calls from invoke ()
- to ace_thread_adapter.
-
- * examples/Threads/auto_event.cpp,manual_event.cpp,
- process_manager.cpp,reader_writer.cpp,tss2.cpp:
- cast spawn entry point to ACE_THR_FUNC.
-
- * examples/Threads/task_four.cpp (Invoker_Task): rearranged
- initializers to match declaration order.
-
- * examples/Threads/thread_specific.cpp (worker): use
- ACE_OS::printf () instead of printf (), and print out the
- ACE_hthread_t instead of the ACE_thread_t.
-
- * examples/IPC_SAP/SPIPE_SAP/client.cpp,consumer_msg.cpp,
- consumer_read.cpp,producer_msg.cpp,producer_read.cpp,server.cpp:
- moved #include of shared.h inside ACE_HAS_STREAM_PIPES protection
- to avoid compilation warnings on unsupported platforms.
-
- * examples/Reactor/Ntalker/ntalker.cpp (main): removed unused "argc".
-
- * examples/*/*.cpp,netsvcs/clients/Tokens/mutex/test_mutex.cpp:
- added args to main ().
-
-Wed Sep 3 21:38:18 1997 Carlos O'Ryan <coryan@polka.cs.wustl.edu>
-
- * ace/config-irix6.x-sgic++.h:
- IRIX uses pthread_sigmask to manage per-thread signal mask,
- thanks to Gonzalo Diethelm (gonzo@ing.puc.cl) for pointing out
- this one.
-
- * ace/OS.h:
- Removed an initial '#' for a comment line, thanks to Gonzalo
- Diethelm (gonzo@ing.puc.cl) for pointing out this one.
-
- * ace/Timer_Hash_T.cpp:
- * ace/Timer_Hash_T.h:
- * ace/Timer_Heap_T.cpp:
- * ace/Timer_Heap_T.h:
- * ace/Timer_List.cpp:
- * ace/Timer_List_T.cpp:
- * ace/Timer_List_T.h:
- * ace/Timer_Queue_T.cpp:
- * ace/Timer_Queue_T.h:
- * ace/Timer_Wheel_T.cpp:
- * ace/Timer_Wheel_T.h:
- In the word of its author: Modified the iterators kept in each
- of these classes so that they are constructed dynamically on the
- heap after the Queue has been properly initialized. Otherwise,
- the iterators try to iterate over a non-initialized queue, and
- fail miserably (usually dumping core).
- Once more thanks to Gonzalo Diethelm (gonzo@ing.puc.cl) for this
- changes.
-
- * tests/UPIPE_SAP_Test.cpp:
- Gonzalo improved the error message.
-
- * ace/README:
- Gonzalo updated the documentation for some macros.
-
-Wed Sep 03 15:21:46 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/OS.h: define ACE_TSS macros with ACE_HAS_TSS_EMULATION,
- and renamed some ACE_TSS_Emulation methods.
-
- * ace/OS.i: allow TSS_Emulation storage to be on thread stack,
- instead of always dynamically allocating it.
-
- * ace/OS.cpp (ACE_Thread_Adapter::invoke): allocate TSS_Emulation
- storage on thread stack. (ACE_TSS_Cleanup::exit): only call
- a TSS destructor if the thread's value is non-zero.
-
- * ace/Thread_Manager.cpp: support TSS_Emulation.
-
- * ace/Thread_Manager.cpp (resize): zero out unused cleanup_hooks
- in thr_table_; (run_thread_exit_hooks): check for zero cleanup
- hook before calling.
-
- * ace/Synch_T.*: allow ACE_HAS_TSS_EMULATION _or_
- ACE_HAS_THREAD_SPECIFIC_STORAGE.
-
- * ace/Object_Manager.{h,cpp}: allocate main thread's TSS_Emulation
- storage in the ACE_Object_Manager instance.
-
- * ace/Log_Msg.h: befriend ACE_OS::cleanup_tss () instead of
- ACE_Object_Manager, because the cleanup path is now indirect
- from the ACE_Object_Manager.
-
- * ace/Log_Msg.cpp: use TSS_Emulation on VxWorks, so
- VxWorks-specific code was removed.
-
- * ace/Task.cpp: removed unused #include of ace/Dynamic.h. (It had
- been used for template instantiations, but they were moved.)
- Also, removed unused #include of ace/Object_Manager.h.
-
- * ace/Svc_Handler.{h,cpp}: register Svc_Handler singleton for
- deletion with the ACE_Object_Manager.
-
- * tests/Process_Strategy_Test (Options): added a destructor so that
- the dynamically allocated concurrency_strategy_ can be deleted.
-
-Wed Sep 3 08:05:26 1997 Steve Huston <shuston@riverace.com>
-
- * ace/Message_Block.h: Corrected comment on release(void) - the
- underlying ACE_Data_Block's refcount is decremented; the
- ACE_Message_Block is always deleted.
-
-Tue Sep 2 18:26:22 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * ace/Task: Revised the ACE_Task_Base::svc_run() method to
- register a thread exit hook (ACE_Task_Base::cleanup())
-
- * ace/Task: Added a static method called cleanup() that can serve
- as a thread exit hook to ensure that close() is always called
- when a task exits a thread.
-
- * ace/Thread_Manager: Added the first-cut implementation of the
- thread exit hooks. This one is butt-simple -- just allowing a
- single hook per-thread, but that should be enough to get us over
- the hump...
-
- * ace/OS.h: Moved the object_info_t type from Object_Manager.h and
- renamed it to ACE_Cleanup_Info since we will use it with the
- Thread_Manager and the Object_Manager.
-
- * ChangeLog-97b: Emptied out the ChangeLog-97b file until
- we move the ChangeLog to this file...
-
- * ace/OS.h: Moved the <ACE_CLEANUP_FUNC> typedef from the
- ACE_Object_Manager into global scope so that it can also be used
- by the ACE_Thread_Manager.
-
- * ace/DEV_IO: Moved the get_remote_addr() and get_local_addr()
- from the DEV class to the DEV_IO class, which seems to be more
- consistent with how they should be used.
-
- * ace/FILE_IO: Added the get_remote_addr() and get_local_addr()
- methods to FILE_IO. Now we should be able to use this with the
- Connector pattern. Thanks to Stephen Coy
- <coys@mail.ns.wsa.com.au> for reporting this.
-
- * ace/DEV_Connector*h, ace/FILE*.h: Added "traits" for PEER_ADDR
- and PEER_STREAM. Now we should be able to use this with the
- Connector pattern. Thanks to Stephen Coy
- <coys@mail.ns.wsa.com.au> for reporting this.
-
- * tests/Async_Timer_Queue_Test.cpp (main): Replaced the use of
- fputs() with read() so that it will be signal-safe. Thanks to
- Carlos for pointing out the need for this.
-
- * ace/Task: All the complex ACE_Task_Exit logic has been moved out
- of the Task file and into the Thread_Manager file. This will
- both simplify and generalize the behavior of cleanups on thread
- exit.
-
-Tue Sep 2 14:42:52 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/config-chorus.h (ACE_HAS_BROKEN_EXPLICIT_TEMPLATE_DESTRUCTOR):
- Added this directive for Chorus uses g++. Thanks to David
- Levine for pointing this out.
-
-Mon Sep 01 21:31:25 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ChangeLog-97b,Makefile,bin/create_ace_build: ChangeLog is no longer
- a symbolic link, but instead is the most recent ChangeLog file.
- ChangeLog-97b was moved to ChangeLog.
-
- * ace/Timer_Queue_T.cpp (schedule): added ACE_UNUSED_ARGs for act
- and interval.
-
- * ace/OS.h: changed ACE_SEH_EXCEPT and ACE_SEH_FINALLY from null
- to "while (0)" on all platforms except ACE_WIN32. Thanks to
- Nanbor for this bit of macro wizardry.
-
- * ace/OS.i (tss_base): cast VxWorks TCB spare field to a void **&
- instead of a void **, because the function returns a reference
- to it.
-
- * ace/OS.cpp: protected definition of
- ACE_TSS_Emulation::tss_collection_ on VxWorks, where it's not used.
-
- * ace/OS.cpp (ACE_Thread_Adapter::invoke) don't exit the thread
- with TSS_EMULATION, except on WIN32. (thr_create) On VxWorks,
- use thread adapter as entry point instead of func (via macros).
-
- * ace/config-vxworks*.h: added ACE_HAS_TSS_EMULATION, with
- ACE_DEFAULT_THREAD_KEYS set to 16, and ACE_LACKS_UNIX_SIGNALS.
-
- * tests/Async_Timer_Queue_Test.cpp: added template instantiations.
-
- * tests/IOStream_Test.cpp: no longer need to dynamically allocate
- the ACE_SOCK_IOStreams with the recent ACE_Thread_Manager changes.
- That was causing occasional problems with unsafe deletion of the
- underlying ostreams. Thanks to James Johnson for consulting on
- this intermittent (nasty) problem.
-
- * tests/SPIPE_Test.cpp: (main) added ACE_UNUSED_ARG of client
- and server.
-
- * tests/Thread_Manager_Test (worker): added ACE_UNUSED_ARG (thr_mgr)
- if ACE_LACKS_UNIX_SIGNALS, and added template instantiations.
-
- * tests/Thread_Manager_Test.cpp: dynamically allocate the
- signal_catcher so that we can destroy it before the main
- thread's TSS is cleaned up.
-
- * tests/TSS_Test.cpp: dynamically allocate TSS_Error so that we
- can ensure its deletion before that of ACE_Object_Manager.
- Also, makde the code a little easier to change the number of threads.
-
- * include/makeinclude/wrapper_macros.GNU: added Purify options to
- ignore SIGINT and set max threads to 100.
-
-Mon Sep 1 10:53:39 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * ace/Handle_Set: Added an assignment operator that is optimized
- for the case when the right-hand side is 0.
-
- * ace/OS: The ACE_THR_C_FUNC macro was confusing for Win32. We've
- replaced this with the original UNIX typedef and will just use
- LPTHREAD_START_ROUTINE for Win32.
-
- * tests/Thread_Manager_Test.cpp (main): Revised this test so that
- we don't have race conditions for suspend() and resume().
-
- * tests/Tokens_Test.cpp (run_test): Removed the use of
- THR_SUSPENDED and resume_all() since this is broken due to race
- conditions and other hazards implicit in using suspend() and
- resume() on threads.
-
- * ace/Handle_Set.cpp: There were several ACE_INLINE methods in the
- Handle_Set.cpp file. I've removed the ACE_INLINE flag.
-
- * tests/SPIPE_Test.cpp: If ACE doesn't have STREAM pipes on a
- platform (or we aren't on NT) then don't try to run this test.
- Thanks to James CE Johnson <ace-users@lads.com> for reporting
- this.
-
- * ace/config-sunos5.[45]-g++.h: ACE defines _REENTRANT in
- config.h. Application using classes of ACE can conflict by
- using compilation option as -D_REENTRANT. I fixed this by
- surrounding the define as:
-
- #if !defined (_REENTRANT)
- #define _REENTRANT
- #endif /* _REENTRANT */
-
- Thanks to Jean-Marc Strauss <strauss@limeil.cea.fr> for
- reporting this.
-
- * ace/Timer_Queue_T.h: We need to #include "ace/Signal.h" since
- our Async_Timer_Queue_Adapter needs it. Thanks to Neil Cohen
- for reporting this.
-
- * ace/Reactor.cpp (check_handles): Optimized the check for invalid
- handles by using fstat() rather than select() on non-Win32
- platforms. Thanks to Arturo for suggesting this optimization.
-
-Mon Sep 1 17:52:10 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * ace/Timer_Heap_T.cpp: Changed cancel (id ...) to check for
- previously expired/cancelled timers
-
-Mon Sep 01 08:43:37 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/Synch.cpp: added #include of Object_Manager.h.
- Thanks to Edan Ayal <edana@vdo.net> for reporting this.
-
-Mon Sep 1 00:46:05 1997 Nanbor Wang <nw1@dingo.wolfpack.cs.wustl.edu>
-
- * ace/README: Added explanation for ACE_HAS_STL_MAP_CONFILICT.
-
- * ace/OS.h: Added conditional compilation directive
- ACE_HAS_STL_MAP_CONFLICT. This is used when users want to
- compile ACE with STL library and the STL map class conflicts
- with map structure in <net/if.h>.
-
- * ace/config-unixware-2.1.2-g++.h:
- * ace/config-unixware-2.01-g++.h:
- * ace/config-osf1-4.0-g++.h:
- * ace/config-irix5.3-g++.h:
- * ace/config-hpux-10.x-g++.h:
- * ace/config-linux-pthread.h:
- * ace/config-linux-lxpthreads.h:
- * ace/config-linux.h:
- * ace/config-freebsd.h:
- * ace/config-freebsd-pthread.h:
- Added ACE_HAS_BROKEN_EXPLICIT_TEMPLATE_DESTRUCTOR flag for all
- config files which apparently use g++.
-
- * ace/config-vxworks-g++.h:
- * ace/config-vxworks5.x-g++.h:
- * ace/config-sunos4-g++.h:
- * ace/config-sunos5.4-g++.h:
- * ace/config-sunos5.5-g++.h:
- Moved ACE_HAS_BROKEN_EXPLICIT_TEMPLATE_DESTRUCTOR closer to
- other template-related directives.
-
-Sun Aug 31 22:56:30 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.3.2, released Sun Aug 31 22:56:30 1997.
-
-Sun Aug 31 22:36:08 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * tests/Async_Timer_Queue_Test.cpp: Need to #include "Timer_List.h"
- rather than "Timer_Queue.h".
-
- * ace: Added ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT for all
- config.h files.
-
- * ace/Handle_Set.cpp (count_bits): Continued to optimize this
- method. Now, if ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT enabled
- it will use a very fast loop that only runs for as many bits
- that are enabled in the bitset. This approach also doesn't have
- to access the Global Offset Table in shared libraries, which is
- a win. Thanks to Arturo for contributing this.
-
- * tests/Async_Timer_Queue_Test.cpp: Generalized this test to use
- the new ACE_Async_Timer_Queue_Adapter.
-
- * ace/Timer_Queue_T: Added the new ACE_Async_Timer_Queue_Adapter,
- which makes it possible to encapsulate any of the ACE Timer
- Queue mechanisms into a asynchronous signal-handling context.
-
- * ace/OS.i: If the platform doesn't support ualarm() (and it
- doesn't lack UNIX signals) then we'll use alarm() rather
- than ualarm(). Clearly, this isn't as good as ualarm(),
- but it's better than nothing.
-
- * ace/OS.i: I'd missed replacing
-
- ACE_LACKS_POSIX_PROTO_FOR_SOME_FUNCS
-
- with
-
- ACE_LACKS_POSIX_PROTOTYPES_FOR_SOME_FUNCS
-
- in OS.i. Thanks to James CE Johnson <ace-users@lads.com> for
- pointing this out.
-
-Sun Aug 31 09:58:35 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * Princess Diana was killed today in a senseless auto accident in
- Paris, France. This is a very tragic ending to a very promising
- life ahead of her.
-
-Sun Aug 31 15:08:00 1997 David L. Levine <levine@cs.wustl.edu>
-
- * tests/Async_Timer_Queue_Test.cpp: fixed and added some
- ACE_UNUSED_ARG's.
-
- * netsvcs/clients/Tokens/invariant/invariant.cpp (run_mutex,
- run_reader_writer),
- netsvcs/clients/Tokens/mutex/test_mutex.cpp (run_test),
- netsvcs/clients/Tokens/rw_lock/rw_locks.cpp (run_thread):
- removed unused argument "vp".
-
- * ace/ACE.i (log2): moved "log" declaration outside of the
- for loop because its used after the loop.
-
- * ace/Task.cpp (instance) only register for destruction with
- ACE_Object_Manager when creating a new instance_.
-
- * ace/Thread_Manager.cpp (ACE_Thread_Control::exit) with TSS
- emulation, don't exit the thread. Instead,
- ACE_Thread_Adpater::invoke () will do it after cleaning up TSS.
-
- * ace/Synch{h,cpp}: (ACE_TSS_Cleanup_Lock) register for
- destruction with ACE_Object_Manager.
-
- * ace/OS.*: major cleanup of ACE_TSS_Emulation, esp. how it
- interacts with ACE_TSS_Cleanup::exit ().
-
-Sat Aug 30 17:30:24 1997 Steve Huston <shuston@riverace.com>
-
- * Removed these config files:
- config-hpux-10.x-aCC.h
- config-hpux-10.x-decthreads.h
- config-hpux-10.x-nothread.h
- config-hpux-10.x-hpc++.h should be used with HP compilers on
- HP-UX 10.x.
-
-Sat Aug 30 14:58:42 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * ace/Signal.cpp (ACE_Sig_Action): Added a new constructor that
- also takes an ACE_Sig_Set & *and* registers the handler...
-
- * ace/Handle_Set.cpp (count_bits): Added a newly optimized
- algorithm for cases where
- ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT. Thanks to Arturo for
- this suggestion.
-
- * ace/config-sco-5.0.0*.h: Added ACE_HAS_LONG_FDMASK for all the
- SCO files. Thanks to Arturo for suggesting this.
-
- * ace/Signal: Added a new mutator method to reassign an
- ACE_Sig_Set to an ACE_Sig_Action.
-
- * ace/Handle_Set.i: If the size of the fd_set is 0 then operator
- fd_set *() just returns 0. This will help to optimize the
- performance of the Reactor. Thanks to Arturo for suggesting
- this.
-
- * ace/Handle_Set.cpp (count_bits): Added yet another improvement
- to remove the "i" iterator. Thanks to Arturo for this!
-
- * ace/Log_Msg.cpp (log): Used the new ACE_Log_Record::priority()
- method in place of the type() method so that the priorities are
- handled correctly.
-
- * ace/Log_Record: Added two new methods that get/set the
- "priority" of an ACE_Log_Record. This value computed as the
- base 2 log of the value of the corresponding ACE_Log_Priority
- enumeral (which are all powers of two). We need this mapping
- function so that we can use the priorities as parameters to the
- putpmsg() function (which can only map between 0-255). Thanks
- to Per Andersson for finding this stuff!
-
- * ace/ACE: Added a new method to compute the base2 logarithm of a
- number.
-
- * Replaced all uses of ACE_Thread_Control since this is now
- handled by the ACE_Thread_Manager.
-
- * ace/Thread_Manager.cpp (spawn_i): Make sure to pass "this" to
- the ACE_Thread_Adapter if we're constructing it in the
- ACE_Thread_Manager::spawn_i() method.
-
- * ace/OS.i (cond_timedwait): Added a special check to see if
- timeout != 0, in which case we just call ACE_OS::cond_wait().
- Therefore, VxWorks can now use ACE_OS::cond_timedwait(), as long
- as the timeout == 0! This simplifies certain internal ACE code.
- Thanks to David Levine for pointing this out.
-
- * ace/Handle_Set.cpp (count_bits): Changed the code from
-
- for (int i = 0; i < sizeof (u_long); i++)
- {
- rval += ACE_Handle_Set::nbits_[n & 0xff];
- n >>= 8;
- }
-
- to
-
- for (int i = 0; n != 0; i++)
- {
- rval += ACE_Handle_Set::nbits_[n & 0xff];
- n >>= 8;
- }
-
- in order to speed it up in the "best case." Thanks to Arturo
- Montes <mitosys@colomsat.net.co> for reporting this.
-
- * ace/Thread.cpp (spawn_n): Added a test to make sure that the
- thread_ids is != 0 before we assign into this.
-
-Fri Aug 29 22:45:21 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/config-vxworks-g++.h:
- * ace/config-vxworks5.x-g++.h:
- * ace/config-sunos4-g++.h:
- * ace/config-sunos5.4-g++.h:
- * ace/config-sunos5.5-g++.h:
- Added flag ACE_HAS_BROKEN_EXPLICIT_TEMPLATE_DESTRUCTOR to these
- config files.
-
- * ace/README: Added explanation of flag
- "ACE_HAS_BROKEN_EXPLICIT_TEMPLATE_DESTRUCTOR."
- When calling a template class'es destructor explicitly, if you
- must use "ptr->FOO<BAR>::~FOO ();" but not
- "ptr->FOO<BAR>::~FOO<BAR> ();" then, you must add this flag to
- your config file.
-
- * ace/OS.h (ACE_DES_FREE_TEMPLATE): Added this new macro to cope
- with the fact that compilers require different syntax when
- calling destructor of template classes explicitly. This macro
- takes four arguments, POINTER, DEALLOCATOR, CLASS, and
- TEMPLATE_PARAMETER. To deallocate a pointer allocated by
- ACE_NEW_MALLOC and you need to call FOO<BAR> class'es
- destructor, you'll write:
-
- ACE_DES_FREE_TEMPLATE (ptr, alloc->free, FOO, <BAR>);
-
- * ace/Containers.cpp: Changed to use ACE_DES_FREE_TEMPLATE to iron
- out differences among compilers.
-
-Fri Aug 29 15:31:50 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/OS.*,Synch.{h,cpp},Object_Manager.cpp: started adding
- support for TSS emulation.
-
- * ace/OS.h: declare class ostream if
- ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION.
-
- * tests/Async_Timer_Queue_Test.cpp (parse_commands): fixed
- sscanf format specifiers to match argument types; (main):
- fixed ACE_ERROR_RETURN parens; protected bulk of code with
- ACE_HAS_UALARM so that the test will build cleanly on
- platforms without it.
-
-Fri Aug 29 00:43:27 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * ace/Synch.cpp (wait): Simpified the call to
- ACE_OS::cond_timedwait() to avoid an extra test. Thanks to
- Arturo for pointing this out.
-
- * ace/TTY_IO: Added native support for TSETA. Thanks to Arturo for
- this.
-
- * ace/Strategies_T.cpp: Finished integrating the ACE_DLL_Strategy
- implementation, which is used in TAO. Thanks to Satheesh Kumar
- MG <satheesh@india.aspectdv.com> for motivating this.
-
- * ace/Synch_T.h: Clarified the constructor for ACE_TSS that takes
- a TYPE * as an argument. Note that this only initializes the
- TSS value in the *calling* thread, but not any other threads
- that may come along later on. Thanks to Bob Laferriere
- <laferrie@gsao.med.ge.com> for helping to clarify this.
-
- * ace/Synch_T.h: Removed stray semi-colons from some of the
- ACE_SYNCH_* macros. Thanks for Wei Chiang for reporting this.
-
-Fri Aug 29 11:40:10 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * ace/OS.cpp: Added cast for ace_thread_adapter.
-
- * ace/OS.h: Changed name of ACE_Thread_Adapter's constructor's
- fourth parameter from tm to tmgr since tm conflicted with
- another tm.
-
- * ace/Thread_Manager.cpp: In spawn_i, changed the last parameter
- given to spawn to thread_args. Also had to add a cast for
- ace_thread_adapter.
-
-Fri Aug 29 06:44:05 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/OS.h (ACE_DES_FREE): Added this macro which will call
- designate destructor before freeing the memory. This is a
- matching macro that should go with ACE_NEW_MALLOC and
- ACE_NEW_MALLOC_RETURN which allocate memory using designate
- allocator then call the user specified constructor explicitly.
-
- * ace/Containers.cpp: Many memory deallocations of container's
- nodes were changed to use the new macro which deletes objects
- correctly.
-
- Thanks very, very much to Ivan Murphy for torturing various
- test programs and reporting those tests which fail the
- excruciation.
-
-Fri Aug 29 01:26:38 1997 <irfan@TWOSTEP>
-
- * ace/ReactorEx.cpp: Added two new methods to ReactorEx -
- schedule_wakeup() and cancel_wakeup(). Also fixed some bugs
- related to our local copy of network_events_ not getting updated
- properly. Thanks to Edan Ayal <edana@vdo.net> for pointing out
- the two missing functions.
-
-Thu Aug 28 20:12:23 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * ace/Thread_Manager.cpp: Added a new ace_thread_manager_adapter()
- function, which is similar to the ace_thread_adapter function
- used in ACE_OS::thr_create(). However, the new function ensures
- that threads spawned by an ACE_Thread_Manager are automatically
- registered and deregistered from the Thread Manager.
-
- * ace/ACE.h (inherit_log_msg): Factored out the functionality to
- inherit the logging features if the parent thread has an
- ACE_Log_Msg instance in thread-specific storage. This function
- is called in several places (e.g., OS.cpp and
- Thread_Manager.cpp), so it pays to factor it out.
-
- * ace/OS.h (ACE_Thread_Adapter): Added a new data member that
- keeps track of which thread entry point function we will pass to
- the underlying OS thread creation routine. The default value is
- ace_thread_adapter, but this can be overridden to do different
- things...
-
- * ace/OS,
- ace/Thread: Extended thr_create() so that if an
- ACE_Thread_Adapter is passed to it this is used in lieu of the
- func and arg parameters. This reduces the amount of dynamic
- allocation and indirection required with the new
- ACE_Thread_Manager.
-
- * ace/Task.h: Removed the ACE_Thread_Control data member from the
- ACE_Task_Exit class since it now belongs to the
- ACE_Thread_Manager instead...
-
- * ace/OS.cpp: Move the ACE_Thread_Adapter out of the OS.cpp file
- and made it a first-class citizen of ACE. We can put this
- to good use in the new ACE_Thread_Manager.
-
- * ace/OS.cpp: The ACE_Thread_Adapter is now the default behavior
- in ACE. If you don't want to use it for whatever reason,
- you'll need to set the ACE_NO_THREAD_ADAPTER macro.
-
- * ace/config-sco-5.0.0-fsu-pthread.h: Added
- ACE_LACKS_CONST_TIMESPEC_PTR. Thanks to Arturo for this.
-
- * ace/Synch.cpp (wait): Removed the reference assignment and just
- take the address of this->mutex_.lock_. Also, removed the
- additional check for abstime == 0 in order to speed up the
- common case. Thanks to Arturo for these suggestions.
-
-Thu Aug 28 20:02:03 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.3.1, released Thu Aug 28 20:02:03 1997.
-
-Thu Aug 28 00:21:09 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * ace/Strategies_T.cpp (ACE_Thread_Strategy): Added reasonable
- values to the default constructor. Thanks to Stephen Coy
- <stevec@wsa.com.au> for reporting this.
-
- * ace/config-irix6.x-sgic++-*.h: Added ACE_HAS_UALARM. Thanks to
- Amos Shapira <amos@gezernet.co.il> for reporting this.
-
- * ace/config-aix-4.*.h: Added ACE_HAS_UALARM. Thanks to Cary
- Clark for reporting this.
-
- * ace/config-hpux-10.x*.h: Added ACE_HAS_UALARM. Thanks to Cary
- Clark for reporting this.
-
- * ace/config-osf1*.h: Added ACE_HAS_UALARM. Thanks to Thilo
- for reporting this.
-
- * ace/config-mvs.h: Added ACE_HAS_UALARM. Thanks to Chuck Gehr
- for reporting this.
-
- * tests/Async_Timer_Queue_Test.cpp: Added a new test that will
- illustrate how to implement an asynchronously invoked
- Timer_Queue using UNIX SIGALRM signals.
-
-Thu Aug 28 19:32:07 1997 <irfan@TWOSTEP>
-
- * examples/Reactor/ReactorEx: Added two new applications
- (test_registry_changes.cpp and test_console_input.cpp) to show
- some more features of ReactorEx. test_registry_changes.cpp shows
- how to monitor the Registry using ReactorEx.
- test_console_input.cpp shows how to use ReactorEx to get
- notified when input shows up on the console.
-
-Thu Aug 28 18:07:37 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * ace/Timer_{List,Heap,Wheel,Hash}_T.cpp: Changed the behavior
- of the iterator to automatically initialize when the iterator
- is constructed.
-
-Thu Aug 28 10:43:35 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/Task.{h,cpp} (ACE_Task_Exit::instance) added call to
- ACE_Object_Manager::at_exit () to clean up the singleton at
- program termination.
-
-Thu Aug 28 03:25:52 1997 Nanbor Wang <nw1@lambada.cs.wustl.edu>
-
- * tests/Task_Test.cpp (Barrier_Task):
- * tests/TSS_Test.cpp (main): Added an array to collect thread
- handles in order to clean them up. Thanks to Ivan Murphy
- for pointing this out.
-
- * ace/Thread_Manager.{h,cpp} (spawn_n):
- * ace/Task.{h,cpp} (activate):
- Added an extra argument ACE_hthread_t thread_handles[] with
- default value 0. We need this argument to collect handles of
- spwaned/activated threads. On NT, we have to join terminated
- threads explicitly to prevent handles leak. Thanks to Ivan
- Murphy for digging this out.
-
-Wed Aug 27 10:48:25 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * ace: Changed all occurrences of ACE_LACKS_RLIMIT_PROTO to
- ACE_LACKS_RLIMIT_PROTOTYPE, ACE_LACKS_POSIX_PROTO to
- ACE_LACKS_POSIX_PROTOTYPES, and ACE_LACKS_SYSV_MSQ_PROTOS to
- ACE_LACKS_SYSV_MSQ_PROTOTYPES to be more consistent.
-
- * ace/config-sunos5.x*.h: Added ACE_HAS_UALARM to all the Solaris
- config files. However, also had to add ACE_LACKS_UALARM_PROTOTYPE
- since Solaris strangely doesn't provide this prototype.
-
- * ace/OS.h: Added an ACE_Time_Value version of ACE_OS::ualarm().
-
- * ace/Signal: Added a new constructor for ACE_Sig_Action that
- takes an ACE_Sig_Set parameter.
-
- * ace/Signal: Added a sigset() accessor method.
-
- * ace/config-unixware-2.1.2-g++.h: Added ACE_HAS_UALARM. Thanks
- to Ganesh Pai <gpai@voicetek.com> for reporting this.
-
- * ace/OS.h: Added a default value of 0 to ACE_OS::time().
-
- * ace/Synch.i (ACE_Thread_Mutex_Guard): Rearranged the code so
- that we can inline the acquire(), tryacquire(), and release()
- methods properly. Thanks to David Levine for pointing this out.
-
- * ace/OS.h: Added ACE_OS support for the ualarm() method. If your
- platform supports ualarm() please send me email so I can set the
- ACE_HAS_UALARM flag in your config.h file.
-
- * tests/Makefile: Added an asynchronous timer queue test.
-
- * examples/IOStream/server/iostream_server.cpp: Added a new macro
- to work around the fact that some C++ compiles don't grok
- template typedefs. Thanks to Oleg Krivosheev <kriol@fnal.gov>
- for pointing this out.
-
- * ace/OS,
- ace/Task.cpp:
- Installed a bunch of patches for FSU pthreads. Thanks to Arturo
- Montes <mitosys@colomsat.net.co> for sending this.
-
- * Makefile: Added a line to the release script that will
- automatically generate an ACE-INSTALL text file from the
- ACE-INSTALL.html file. Thanks to Oleg Krivosheev
- <kriol@fnal.gov> for suggesting this.
-
- * performance-tests/Misc/Makefile: Added $(BIN) to the FILE target
- so that "make depend" will work. Thanks to David Levine for
- pointing this out.
-
- * ace/Synch.i: Eliminated unnecessary assignment to this->owner_.
- Thanks to Chris for pointing this out.
-
- * ace/OS.i (msgctl): Added a "struct" to the definition of
- msqid_ds. Thanks to Steve Hickman <SHICKMAN@cobra.mcit.com> for
- reporting this.
-
-Thu Aug 28 01:07:21 1997 <irfan@TWOSTEP>
-
- * examples/Reactor/ReactorEx/test_directory_changes.cpp: Added a
- new example application. This application tests the working of
- ReactorEx when users are interested in changes in the
- filesystem.
-
-Wed Aug 27 22:06:23 1997 Nanbor Wang <nw1@lambada.cs.wustl.edu>
-
- * *.{mak,mdp,dsw,dsp}: Updated ACE's library names on Win32 as
- below. Only Microsoft's Win95 and Windows NT are effected.
-
- Version Dynamic Library Static Livrary
- ------------------ -------------------- -----------------
- Debug aced.lib, aced.dll acesd.lib
- Release ace.lib, ace.dll aces.lib
- Debug w/ UNICODE aceud.lib, aceud.dll acesud.lib
- Release w/ UNICODE aceu.lib, aceu.dll acesu.lib
-
- Thanks to John Morey <jmorey@tbi.com> for suggesting this and
- Darrell for updating VC 5.0's makefiles.
-
- * ace/config-freebsd[-pthread].h (ACE_HAS_UALARM): FreeBSD does has
- ualarm.
-
-Wed Aug 27 10:52:59 1997 Chris Cleeland <cleeland@cs.wustl.edu>
-
- * ace/Synch_T.h (CTOR): Eliminated unnecessary assignment to
- this->owner_.
-
-Wed Aug 27 09:32:57 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/Singleton.cpp (instance): removed full qualification of
- "instance_" in ACE_NEW_RETURN macro, because it confused
- the Sun C++ 4.2 preprocessor.
-
- * ace/Singleton.cpp: added support for ACE_HAS_SIG_C_FUNC platforms,
- e.g., on MVS. At least I tried to. The cleanup function,
- on ACE_HAS_SIG_C_FUNC platforms only, doesn't call the object's
- destructor. It just deallocates the storage. That should be
- good enough; I don't think it's worth trying to do more than that.
-
- * ace/Synch.cpp (close_singleton): removed call to
- ACE_Allocator::close_singleton (), because this method is
- only called if ACE_HAS_THREADS.
-
- * ace/Object_Manager.cpp (dtor): added call to
- ACE_Allocater::close_singleton (), and protected call to
- ACE_Static_Object_Lock::close_singleton () with ACE_HAS_THREADS.
-
- * tests/Time_Value_Test.cpp: disabled ACE_U_LongLong test
- on ACE_WIN32 platforms, because that class is never used
- there. Thanks to Nanbor for finding this.
-
- * performance-tests/Misc/preempt.cpp,Makefile: added preempt
- test, which tests for thread preemption.
-
-Tue Aug 26 13:59:01 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * netsvcs/lib/Server_Logging_Handler_T.cpp: Changed the symbol
- "SS" to "SST" to avoid a namespace collision with UnixWare.
- Thanks to Ganesh Pai <gpai@voicetek.com> for pointing this out.
-
- * ace: Added a new config file to sco using FSU pthreads. Thanks
- to Arturo Montes <mitosys@colomsat.net.co> for sending this.
-
- * include/makeinclude: Added a new platform macros file to sco
- using FSU pthreads. Thanks to Arturo Montes
- <mitosys@colomsat.net.co> for sending this.
-
-Tue Aug 26 22:06:14 1997 <irfan@TWOSTEP>
-
- * examples/Reactor/ReactorEx: Added two new applications for
- testing some of the new features of ReactorEx. Added
- documentation and renamed some of the older test files to make
- it easier to comprehend the examples.
-
-Tue Aug 26 11:47:29 1997 <irfan@TWOSTEP>
-
- * ace/OS.i (mutex_trylock): Changed this method to make it deal
- correctly with abandoned mutexes. Also added a new mutex_trylock
- method that allows the user to know if the mutex was abandoned
- (through an extra out parameter). Also fixed
- ACE_OS::cond_timedwait(), ACE_OS::cond_wait(),
- ACE_OS::event_wait(), ACE_OS::event_timedwait() and
- ACE_OS::sema_wait() to remove extra checks for WAIT_ABANDONED,
- since we are not dealing with mutexes in these methods. Thanks
- to Ivan Murphy <Ivan.Murphy@med.siemens.de> for pointing this
- out.
-
-Tue Aug 26 11:06:45 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/OS.h,config-vxworks5.x-g++.h:
- split ACE_HAS_RENAMED_MAIN into ACE_MAIN and
- ACE_HAS_NONSTATIC_OBJECT_MANAGER.
-
- * ace/ACE.cpp: only create the ACE_Object_Manager_Destroyer
- if not ACE_HAS_NONSTATIC_OBJECT_MANAGER.
-
- * ace/Object_Manager.{h,cpp}: dynamically allocated the
- contained ACE_Unbounded_Queue to so that it can be deallocated
- before the ACE_Allocator is destroyed.
-
- * ace/Singleton.{h,cpp}: register all ACE_Singletons for
- cleanup with the ACE_Object_Manager.
-
- * ace/Synch.{h,cpp}: renamed ACE_Static_Object_Lock::atexit () to
- close_singleton (), and removed the unused atexit hook.
-
- * ace/Log_Msg.cpp (ACE_Log_Msg_Manager::close): delete the
- main thread's Log_Msg.
-
- * ace/config-vxworks-ghs-1.8.h: added ACE_HAS_NONSTATIC_OBJECT_MANAGER.
-
- * tests/Time_Value_Test.cpp: added tests of ACE_U_LongLong.
-
- * tests/Atomic_Op_Test.cpp (main): added arguments to main ().
-
- * tests/Barrier_Test.cpp (main): delete thread_handles array
- to prevent memory leak.
-
- * examples/Reactor/Misc/test_signals_2.cpp (main): changed
- type of second arg from "char *" to "char *[]".
-
-Mon Aug 25 14:13:57 1997 Carlos O'Ryan <coryan@polka.cs.wustl.edu>
-
- * ace/OS.h:
- Changed the return type of sendmsg_timedwait from sszie_t to
- ssize_t, this should only affect platforms where
- ACE_LACKS_TIMEDWAIT_PROTOTYPES, further it was definitely wrong
- before.
- Thanks to ARTURO MONTES <mitosys@colomsat.net.co> for pointing
- out this one.
-
-Mon Aug 25 10:15:06 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/Message_Queue.cpp (notify): fixed ACE_TRACE message.
-
- * examples/ASX/UPIPE_Event_Server/event_server.cpp,
- examples/Connection/misc/test_upipe.cpp,
- examples/Connection/non_blocking/test_*.cpp,
- examples/IPC_SAP/SOCK_SAP/CPP-inserver-poll.cpp,
- examples/IPC_SAP/SOCK_SAP/FD-unserver.cpp,
- examples/Misc/test_dump.cpp,
- examples/Reactor/FIFO/client.cpp,
- examples/Reactor/Misc/test_*.cpp,
- examples/Reactor/Proactor/test_multiple_loops.cpp,
- examples/Reactor/Proactor/test_timeout.cpp,
- examples/Reactor/ReactorEx/test_timeout.cpp,
- examples/Reactor/ReactorEx/test_exceptions.cpp,
- examples/Service_Configurator/IPC-tests/client/local_spipe_client_test.cpp,
- examples/Service_Configurator/IPC-tests/client/remote_thr_stream_client_test.cpp,
- examples/Shared_Malloc/test_multiple_mallocs.cpp,
- examples/System_V_IPC/SV_Message_Queues/*MQ_*.cpp,
- examples/System_V_IPC/SV_Semaphores/Semaphores_?.cpp,
- examples/Threads/process_mutex.cpp,
- examples/Threads/recursive_mutex.cpp,
- examples/Threads/tss1.cpp,
- examples/Threads/thread_specific.cpp,
- examples/Threads/token.cpp,
- examples/Threads/wfmo.cpp,
- tests/Simple_Message_Block_Test.cpp,
- tests/Hash_Map_Manager_Test.cpp:
- added arguments to main () to support redeclaring it on VxWorks.
-
- From now on, we should always declare main () with arguments, e.g.,
- int
- main (int, char *[])
-
-Sun Aug 24 10:27:33 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * tests/Future_Test.cpp (Scheduler): Removed the non-existent
- friend class Method_ObjectWork. Thanks to Sandro Doro
- <doros@aureus.sublink.org> for reporting this problem.
-
- * ace/Message_Block.h: Clarified in the comments that the length()
- of a Message_Block is 0 until the wr_ptr() is explicitly set.
- Thanks to Amos Shapira <amos@gezernet.co.il> for pointing out
- the need for this.
-
-Sat Aug 23 14:43:27 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.3, released Sat Aug 23 14:43:27 1997.
-
-Sat Aug 23 14:40:32 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * Released the long-awaited ACE 4.3. Good night sweet prince:
- And flights of angels sing thee to thy rest.
-
-Sat Aug 23 00:44:09 1997 Douglas C. Schmidt <schmidt@merengue.cs.wustl.edu>
-
- * netsvcs/lib/Server_Logging_Handler.cpp: Make sure that we
- explicitly instantiate ACE_Svc_Handler<LOGGING_PEER_STREAM,
- ACE_NULL_SYNCH> whether or not we're building with threads
- since otherwise we get link errors.
-
-Fri Aug 22 20:58:49 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/OS.cpp (ACE_TSS_Cleanup): Changed the lock for
- ACE_TSS_Cleanup from a static object to a singleton to avoid the
- nasty detruction order problem. This only effects Win32.
-
- * ace/Synch.{h,cpp}: Added a new singleton lock
- "ACE_TSS_Cleanup_Lock" for Win32 platform. This object is
- expect to be put under ACE_Object_Manager's control and will
- probably gone/changed in the near future.
-
-Fri Aug 22 18:48:17 1997 Carlos O'Ryan <coryan@polka.cs.wustl.edu>
-
- * ACE-install.sh:
- I updated the information on IRIX. Now we know for a fact it
- compiles on IRIX 6.x, but we are not certain on IRIX 5.X.
-
- * bin/auto_compile_wrapper:
- I have tried to make it clear that auto_compile_wrapper must be
- tailored on each site. The email address is invalid and the
- script should just crash the
-
- * ace/OS.i (cond_timedwait):
- It used to always dereference the timeout parameter, which could
- be 0 (heading for a
- Sthreads use timestruc_t instead of timespec_t, thanks to
- Ganesh Pai <gpai@voicetek.com> for pointing out this one and to
- Steve Huston <shuston@riverace.com> for explaining to us what
- was going on.
-
-Fri Aug 22 08:46:39 1997 David L. Levine <levine@cs.wustl.edu>
-
- * include/makeinclude/platform_vxworks*.GNU:
- unset SHLIB to fix builds without PRELIB.
-
- * netsvcs/lib/Logging_Strategy.cpp,
- examples/Threads/task_three.cpp: include fstream.h and
- iostream.h if ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION.
-
- * examples/ASX/UPIPE_Event_Server/event_server.cpp,
- examples/Log_Msg/test_log_msg.cpp,
- examples/Reactor/Misc/test_time_value.cpp,
- examples/Logger/Accepter-server/server_loggerd.cpp:
- #include iostream.h if ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION.
-
- * examples/ASX/UPIPE_Event_Server/Peer_Router.cpp (svc):
- replaced an iostream printout with an ACE_DEBUG call.
-
- * examples/Misc/test_read_buffer.cpp,
- test_dump.cpp,
- Mem_Map/IO-tests/test_io.cpp:
- replaced bare OS calls with ACE_OS calls.
-
- * examples/Reactor/Misc/notification.cpp (Thread_Handler):
- added cast of svc_run to ACE_THR_FUNC.
-
-Thu Aug 21 22:38:19 1997 Carlos O'Ryan <coryan@polka.cs.wustl.edu>
-
- * bin/auto_compile:
- This tool will checkout ACE_wrapper from CVS, use
- bin/create_ace_build to update a clone directory, compile ace
- and tests in that clone directory and then run run_tests.sh.
- If there is any problem it will report it to email.
-
- * bin/auto_compile_wrapper:
- The former needs some configuration information and a proper
- enviroment, hence it may not be invoked directly from your
- crontab. This tool is used for that purpose.
-
- * apps/Gateway/Gateway/Makefile:
- * apps/JAWS/server/Makefile:
- * examples/Connection/non_blocking/Makefile:
- * examples/IPC_SAP/DEV_SAP/reader/Makefile:
- * examples/IPC_SAP/DEV_SAP/writer/Makefile:
- * examples/Service_Configurator/IPC-tests/server/Makefile:
- * netsvcs/clients/Naming/Client/Makefile:
- * netsvcs/clients/Naming/Dump_Restore/Makefile:
- * performance-tests/Synch-Benchmarks/Makefile:
- No need to defines LIBS=-lACE here, it is already done in
- wrapper_macros.GNU. Thanks to Cary Clark <claca@iccokc.com> for
- pointing out this one.
-
- * bin/create_ace_build:
- New flag -a to create all symlinks using absolute paths, it
- helps when the build directory is a symlink too.
-
- * include/makeinclude/platform_irix6.x-sgic++.GNU:
- ACE now compiles with little or no warnings, I kept the linker
- warnings deactivated though.
- -ptall does not work any more. I added a comment on that.
-
- * ace/OS.h:
- * apps/Gateway/Gateway/Concrete_Proxy_Handlers.cpp:
- * apps/JAWS/clients/Blobby/Blob_Handler.cpp:
- * apps/JAWS/server/HTTP_Server.cpp:
- * examples/ASX/UPIPE_Event_Server/Peer_Router.cpp:
- * examples/IPC_SAP/SPIPE_SAP/NPServer.cpp:
- * examples/IPC_SAP/SPIPE_SAP/producer_read.cpp:
- * examples/Reactor/Dgram/CODgram.cpp:
- * examples/Reactor/Dgram/Dgram.cpp:
- * examples/Reactor/Misc/test_demuxing.cpp:
- * examples/Reactor/Misc/test_reactors.cpp:
- * examples/Reactor/Misc/test_signals_2.cpp:
- * examples/Threads/barrier2.cpp:
- * examples/Threads/process_manager.cpp:
- * examples/Threads/task_three.cpp:
- * netsvcs/clients/Naming/Dump_Restore/Dump_Restore.cpp:
- * netsvcs/clients/Tokens/collection/collection.cpp:
- * netsvcs/clients/Tokens/mutex/test_mutex.cpp:
- * performance-tests/Misc/childbirth_time.cpp:
- * tests/Reactor_Exceptions_Test.cpp:
- * tests/Reactors_Test.cpp:
- * tests/SOCK_Test.cpp:
- New macro ACE_NOTREACHED. Some compilers will issue warnings on
- unreached statements with things like:
- int foo()
- {
- if (bar) {
- return 0;
- } else {
- return 1;
- }
- return 0; // warning here
- }
- but if we remove the last return some other compiler will issue
- warnings on leaving the function with no return value.
- This macro tries to deal with that, all we have to do is to
- write the last line like:
- int foo()
- {
- if (bar) {
- return 0;
- } else {
- return 1;
- }
- ACE_NOTREACHED(return 0); // No warning now!!!
- }
- IMHO it also serves as a form of documentation.
-
-Thu Aug 21 21:00:35 1997 <irfan@TWOSTEP>
-
- * ace/Auto_Ptr: Changed auto_ptr implementation to be as close
- to the C++ specification as possible. Things that are still
- missing are:
- (a) std namespace
- (b) member templates implementations
- (c) making the constructors explicit
-
- * ace/OS.h (ACE_BIT_STRICTLY_ENABLED): Added new macro to check if
- a bit is strictly enabled in a word. This is necessary when the
- bit would be a combination of bits, and therefore, just
- comparing against != 0 (like ACE_BIT_ENABLED does) is not enough
- and comparing == BIT is necessary.
-
-Thu Aug 21 19:28:28 1997 James C Hu <jxh@lambada.cs.wustl.edu>
-
- * include/makeinclude/rules.local.GNU (depend.local): If TAO_ROOT
- is not set, don't try using it in sed.
-
- * bin/g++dep: Check the existence of the TAO_ROOT environment
- variable before adding it to the relative pathname replacement
- strategy.
-
-Thu Aug 21 16:29:02 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/OS.h: added THR_JOINABLE and THR_SCHED_FIFO/RR/DEFAULT
- to STHREADS, WTHREADS, and non-threaded platforms. On VxWorks
- only, set NSIG to _NSIGS + 1.
-
- * ace/config-vxworks*.h: removed ACE_HAS_POSIX_SEM now that we
- emulate it for VxWorks.
-
- * tests/Priority_Task_Test.cpp: use THR_SCHED_FIFO unconditionally
- now that it's defined on all platforms.
-
- * include/makeinclude/platform_chorus.GNU,
- platform_hpux_gcc.GNU,
- platform_linux*.GNU,
- platform_m88k.GNU,
- platform_osf1_4.0_g++.GNU,
- platform_sco*.GNU,
- platform_sunos*_g++.GNU,
- platform_unixware_g++.GNU,
- g++ only: replaced PRELIB with "true" because it's not
- needed for template instantiation. The old PRELIB no longer
- worked without -lACE being added to LIBS in individual Makfiles.
- The only reason to leave PRELIB defined to something is so that
- the shared object definitions will be correct in rules.lib.GNU.
- That should be fixed after 4.3 is released.
-
- * include/makeinclude/platform_vxworks5.x_ghs.GNU:
- PRELIB no longer needed with explicit template instantiation.
-
-Thu Aug 21 12:38:26 1997 Steve Huston <shuston@riverace.com>
-
- * ace/config-hpux-10.x.h: Removed extraneous #endif
-
-Thu Aug 21 12:21:16 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/OS.h (THR_JOINABLE): Defined this macro for Win32 as 0.
-
-Wed Aug 20 22:36:52 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.2.44, released Wed Aug 20 22:36:52 1997.
-
-Wed Aug 20 18:28:28 1997 Steve Huston <shuston@riverace.com>
-
- * ace/config-hpux-10.x.h: Made some definitions dependent on the
- HP-UX version that is compiling the code.
-
- * ace/Filecache.(cpp h): Moved the definition of ACE_Filecache_Object
- from .cpp to .h to help AIX xlC's template instantiator along.
-
- * apps/Gateway/Peer/Peer.(cpp h): Moved the definition of Peer_Handler
- from .cpp to .h to help AIX xlC's template instantiator along.
-
- * include/makeinclude/platform_(hpux hpux_aCC hpux_gcc).GNU: Added
- a compiler option to define HPUX_VERS with the current OS version.
- Used in the config-hpux-10.x.h file.
-
-Wed Aug 20 13:44:16 1997 Carlos O'Ryan <coryan@mambo.cs.wustl.edu>
-
- * ace/config-unixware-2.1.2-g++.h:
- Unixware does not define timespec_t. Thanks to Ganesh Pai
- <gpai@voicetek.com> for pointing out this one.
-
-Wed Aug 20 11:37:44 1997 David L. Levine <levine@cs.wustl.edu>
-
- * include/makeinclude/rules.bin.GNU,platform_vxworks5.x_g++.GNU:
- added POSTLINK to build symbol table.
-
-Wed Aug 20 07:43:14 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.2.43, released Wed Aug 20 07:43:14 1997.
-
-Tue Aug 19 08:25:28 1997 Steve Huston <shuston@riverace.com>
-
- * tests/Barrier_Test.cpp: Added THR_JOINABLE to the flags for
- creating threads - allows join to work on platforms that create
- threads detached by default (i.e. AIX).
-
- * tests/Process_Strategy_Test.cpp: If the final ACE_OS::kill() fails,
- don't ACE_OS::wait() for the process.
-
- * ace/config-aix-4.2.x.h: Added ACE_HAS_BROKEN_POSIX_TIME. Commented
- out ACE_HAS_AIX_BROKEN_SOCKET_HEADER. Added ACE_HAS_PTHREAD_T,
- and will now not use tid_t for any ACE types. Rearranged things
- to start clarifying items.
-
- * ace/config-hpux-10.x.h: Removed ACE_HAS_SETKIND_NP and adjusted
- other, more meaningful, threads-related definitions to match what
- HP 10.10 and 10.20 have for threads. This matches changes to OS.*
-
- * ace/OS.(h i cpp): Removed use of ACE_SETKIND_NP in an effort to
- simplify the variety of threads-capability definitions. The only
- platforms which used ACE_HAS_SETKIND_NP were HP-UX (see above) and
- OSF/1 V3.2 (which has the same threads package as HP-UX). OSF/1
- V3.2 may require some adjustments per this change - it probably
- should be changed to match HP-UX. OSF/1 V4 (aka Digital UNIX)
- is not affected by this change.
-
- * ace/Log_Msg.cpp: Changed the 't' format (thread ID) to call
- thread_self() directly on AIX.
-
-Mon Aug 18 21:39:33 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.2.42, released Mon Aug 18 21:39:33 1997.
-
-Mon Aug 18 20:22:14 1997 Carlos O'Ryan <coryan@swarm.cs.wustl.edu>
-
- * apps/Gateway/Peer/Makefile:
- No need to define LIBS=-lACE here, its already done in
- wrapper_macros.GNU. Thanks to Cary Clark <claca@iccokc.com>
- for helping in this effort.
-
-Mon Aug 18 19:54:36 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/OS.{h,i} (open, mutex_init, sema_init, event_init, mmap):
- Added an extra argument LPSECURITY_ATTRIBUTE with default value
- 0 to all these methods so that we can modify objects' security
- attributes when needed. Thanks to Ivan Murphy for pointing this
- out.
-
-Mon Aug 18 19:50:13 1997 Carlos O'Ryan <coryan@mambo.cs.wustl.edu>
-
- * examples/Service_Configurator/Makefile:
- * examples/Service_Configurator/IPC-tests/server/Makefile:
- * apps/Gateway/Gateway/Makefile:
- * examples/Connection/non_blocking/Makefile:
- $(SOEXT) must be used instead of just .so, the former does not
- work on all platforms, notably HP-UX. Thanks to Cary Clark
- <claca@iccokc.com> for helping in this effort.
-
-Mon Aug 18 19:46:27 1997 Carlos O'Ryan <coryan@swarm.cs.wustl.edu>
-
- * ace/OS.i:
- Added support for the missing netdb reentrant functions, even
- under IRIX 6.2 with no threads. Thanks Paul Roman
- <proman@npac.syr.edu> for reporting this.
-
-Mon Aug 18 12:53:16 1997 David Levine <levine@merengue.cs.wustl.edu>
-
- * tests/Barrier_Test.cpp (tester): VxWorks doesn't support
- thr_join(). Therefore, we need to work around it for now.
- Maybe Wind River will fix it at some point.
-
-Mon Aug 18 12:38:52 1997 Steve Huston <shuston@riverace.com>
-
- * ace/config-aix-4.2.x.h: Removed ACE_HAS_SVR4_TIME, added
- ACE_LACKS_TIMESPEC_T.
-
-Mon Aug 18 12:00:31 1997 Carlos O'Ryan <coryan@swarm.cs.wustl.edu>
-
- * ace/config-mvs.h:
- MVS does not define timespec_t either. Thanks to Chuck
- Gehr for reporting this.
-
-Mon Aug 18 10:41:05 1997 Carlos O'Ryan <coryan@swarm.cs.wustl.edu>
-
- * ace/OS.h:
- * ace/README:
- On some platforms timespec_t is not defined. We added a new
- config macro (ACE_LACKS_TIMESPEC_T) to handle that and we do a
- typedef to solve the problem.
-
- * ace/config-freebsd-pthread.h:
- * ace/config-freebsd.h:
- * ace/config-linux-lxpthreads.h:
- * ace/config-linux-pthread.h:
- * ace/config-linux.h:
- These are *some* config files that needed changes due to the new
- timespec_t stuff.
-
-Mon Aug 18 09:34:11 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/OS.cpp (ACE_Thread_Adapter): rearranged initializers to
- match declaration order.
-
- * ace/Log_Record.h: declare "class ostream" if
- ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION Log_Record.h.
-
- * ace/IOStream.h,Log_Msg.cpp,Log_Record.cpp,
- tests/test_config.h: include iostream.h instead of ace/stdcpp.h
- if ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION.
-
- * ace/config-vxworks*.h: added ACE_LACKS_TIMESPEC_T.
-
-Sun Aug 17 20:58:56 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.2.41, released Sun Aug 17 20:58:56 1997.
-
-Sun Aug 17 17:02:53 1997 Carlos O'Ryan <coryan@swarm.cs.wustl.edu>
-
- * ace/config-irix6.x-sgic++-nothreads.h:
- * ace/config-irix6.x-sgic++.h:
- * include/makeinclude/platform_irix6.x-sgic++.GNU:
- Finally a single config.h and platform_macros.GNU file can be use
- for all the IRIX 6.X versions.
- On SGI machines we need a higher value for
- ACE_DEFAULT_BASE_ADDR, we used 1024*1024*1024, which works on
- our site, but your mileage may vary.
-
- * include/makeinclude/platform_irix6.2_sgic++.GNU:
- * include/makeinclude/platform_irix6.4_sgic++.GNU:
- * ace/config-irix6.2-sgic++-nothreads.h:
- * ace/config-irix6.2-sgic++.h:
- * ace/config-irix6.4-sgic++-nothreads.h:
- * ace/config-irix6.4-sgic++.h:
- These files are no longer needed, see above.
-
- * ace/README:
- * ace/ACE.cpp:
- * ace/OS.h:
- * ace/OS.i:
- * ace/Profile_Timer.cpp:
- * ace/Profile_Timer.h:
- We no longer use timestruct_t in ACE, it is a SYSVism; we use
- timespec_t instead. Hence we have no need for the config
- macro ACE_HAS_SVR4_TIME, but we keep it there for future
- reference.
-
- * tests/Reader_Writer_Test.cpp:
- On IRIX using ACE_Thread::yield() degraded performance for
- multiprocessor machines, but worse, the test will not behave as
- expected: instead of interleaving read/write locks over the
- RW_Mutex it will make all the write locks first and then the read
- locks. The test uses ACE_OS::sleep() for yielding the CPU,
- and it uses different pauses for each thread (see code for
- details). Further, it yields the CPU *before* taking the
- lock, to give other threads a chance.
-
-Sat Aug 16 18:17:10 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.2.40, released Sat Aug 16 18:17:10 1997.
-
-Sat Aug 16 18:13:22 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * ace/ReactorEx.cpp (add_network_events_i): Revised the code to
- use the ACE_BIT_CMP_MASK and ACE_SET_BITS macros to simplify the
- code.
-
- * ace/OS.h: Added a new macro called ACE_BIT_CMP_MASK which checks
- if a "bit-wise" & with a word == a particular mask.
-
- * ace/OS.cpp (thr_create): If we're in the Pthreads implementation
- then we assume that ACE_thread_t and ACE_hthread_t are the same.
- If this *isn't* correct on some platform, please let us know.
- Thanks to Carlos O'Ryan <coryan@cs.wustl.edu>.
-
- * ace/Auto_Ptr.cpp: Reverted the changes of ACE_Auto_Ptr to
- auto_ptr since we want to be Standard C++ Library compliant.
- However, we only define auto_ptr if ACE_HAS_STANDARD_CPP_LIBRARY
- is *not* enabled.
-
- * Removed the INSTALL file since this is redundant with the HTML
- version of this file (ACE-INSTALL.html). Thanks to David Levine
- for doing the legwork to merge this.
-
-Sat Aug 16 15:11:24 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * ace/Auto_Ptr.h: Put in an #include <memory> (for auto_ptr) if
- the standard C++ library is being used.
-
- * ace/Auto_Ptr.*: Changed the checks for ACE_HAS_STANDARD_CPP_LIBRARY
- to also check to see if it is defined to 0 (which means the same
- as it not being defined).
-
- * ace/ReactorEx.cpp: Changed the use of auto_ptr to work with
- the one in the Standard C++ library.
-
- * ace/config-win32-common.h: Added ACE_HAS_BROKEN_NESTED_TEMPLATES
- and ACE_LACKS_STL_DEFAULT_TEMPLATE_PARAMETER for the MSVC versions
- that need them.
-
- * ace/Registry.cpp: changed some variable names from iterator to
- iter to prevent conflicts with another variable
-
- * ace/Registry.cpp:
- STL/bstring.h:
-
- Changed references of NPOS to Istring::npos
-
-Sat Aug 16 14:17:07 1997 Carlos O'Ryan <coryan@swarm.cs.wustl.edu>
-
- * ace/Auto_Ptr.i:
- * ace/Auto_Ptr.cpp:
- Some code was only included if ACE_HAS_STANDARD_CPP_LIBRARY was
- defined; but the intention was exactly the opposite.
-
-Sat Aug 16 14:33:26 1997 David L. Levine <levine@cs.wustl.edu>
-
- * README,FAQ,Makefile: changed references from INSTALL file
- to ACE-INSTALL.html.
-
-Fri Aug 15 19:51:52 1997 <irfan@TWOSTEP>
-
- * ace/Auto_Ptr.h: A rarely used piece of ACE code has changed
- names because of name conflicts with the Microsoft Standard C++
- Library. The change is from auto_ptr to ACE_Auto_Ptr. A perl
- script ($ACE_ROOT/bin/auto_ptr.perl) is provided for users to
- change their code accordingly.
-
- The following files were effected:
-
- ace: ACE.cpp Auto_Ptr.cpp Auto_Ptr.h Auto_Ptr.i OS.h
- ReactorEx.cpp Service_Config.cpp Service_Object.h
-
- examples/Threads: future1.cpp future2.cpp test_future1.cpp
- test_future2.cpp
-
- tests: Future_Test.cpp
-
-Fri Aug 15 17:41:28 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.2.39, released Fri Aug 15 17:41:28 1997.
-
-Fri Aug 15 13:33:04 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/OS.h (ACE_DEFAULT_GLOBALNAME_W): Moved pathname delimiter
- from ACE_DEFAULT_{LOCAL|GLOBAL}NAME_* to
- ACE_DEFUALT_NAMESPACE_DIR on NT. We need to append local/global
- name to get a unique mutex name for naming service. NT won't
- let us put a backslash in lock name. ;(
-
-Fri Aug 15 14:50:26 1997 Steve Huston <shuston@riverace.com>
-
- * ace/Makefile: Moved ARGV from the TEMPLATES section to the FILES
- section; now builds on AIX.
-
- * ace/config-hpux-10.x.h: Don't redefine _HPUX_SOURCE. Move the
- ACE_HAS_REENTRANT_FUNCTIONS and ACE_CTIME_R_RETURNS_INT to the
- build-with-threads section. Thanks to Neil Cohen <nbc@metsci.com>
- for helping to flush these problems out.
-
- * tests/Makefile: If building on AIX, wipe out the tempinc directory
- before each compilation to keep the driver from compiling all
- prior programs' template instantiations in every link step.
-
-Fri Aug 15 13:07:26 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * ace/Signal.cpp (remove_handler): Added some additional
- parameters to ACE_Sig_Action usages in order to get this stuff
- to compile with G++ on SunOS 4.1.4. Thanks to Kumar Neelakantan
- <kneelaka@PaineWebber.COM> for reporting this.
-
- * ACE version 4.2.38, released Thu Aug 14 23:07:26 1997.
-
-Fri Aug 15 13:33:04 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/Naming_Context.cpp (ACE_Naming_Context): Moved the deletion
- of name_options_ from close to dtor of this class so that we can
- reconfigure the naming context.
-
-Fri Aug 15 10:28:14 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * ace/OS.cpp: Changed uname() for Win32 so it returns information
- for Windows 95 and NT.
-
-Thu Aug 14 18:06:37 1997 Chris Cleeland <cleeland@cs.wustl.edu>
-
- * ace/OS.[hi] (strsplit_r): Added a new method which splits a
- string separated by tokens, similar to the way that perl's
- split() works. This is different from the strtok() family b/c
- for the string ":/foo:/bar::boo", strtok() would return "/foo",
- "/bar", "boo", while strsplit_r() returns "", "/foo", "/bar",
- "", "boo". This method is also properly re-entrant, and thus
- safe to use among multiple threads.
-
- * ace/ACE.cpp (ldfind): Fixed this so that it now properly deals
- with paths containing empty components intended to indicate
- 'current directory'.
-
-Thu Aug 14 17:30:36 1997 Steve Huston <shuston@riverace.com>
-
- * ace/config-hpux-10.x.h - Add ACE_LACKS_CONST_STRBUF_PTR, remove
- ACE_HAS_POSIX_SEM, clarify comments regarding setting of
- _CMA_NOWRAPPERS_ - thanks to Cary Clark <claca@iccokc.com> for
- helping in this effort.
-
-Thu Aug 14 16:14:47 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/High_Res_Timer.cpp (print_ave,print_total): fixed format
- specification for total_secs to be lu instead of lld.
-
-Thu Aug 14 14:06:37 1997 Chris Cleeland <cleeland@cs.wustl.edu>
-
- * ace/ARGV.cpp: Completed the explicit template instantiations for
- this component.
-
-Thu Aug 14 11:27:03 1997 Edward Everett Anderson <eea1@polka.cs.wustl.edu>
-
- * ace/ARGV.* (argv):
-
- * Added another behavior to ACE_ARGV -- a user can iteratively
- build the parameter set with add(). Made the class more
- consistent so that accessors work no matter which constructor is
- used.
-
-Thu Aug 14 10:14:37 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * Made several changes to allow ACE to work with the new standard
- C++ header files, such as <cstdio> and the built in STL. Thanks
- to Matthias Kerkhoff <make@cs.tu-berlin.de> for these changes.
- The default is to use the old headers, unless the
- ACE_HAS_STANDARD_CPP_LIBRARY is defined as 1.
-
- * ace/config-win32-common.h:
- ace/config-win32.h:
-
- - Added ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB flag to
- distinguish compilers who have the standard C++ library
- declared in the namespace std and those who use the global
- namespace for it
-
- - Enabled ACE_HAS_SIG_ATOMIC_T and ACE_HAS_TYPENAME_KEYWORD for
- MSVC 5
-
- - Changed the semantics of ACE_HAS_STANDARD_CPP_LIBRARY from
- [defined/undefined] to [(undefined or defined as 0)/defined != 0]
- to allow the choice between the old iostream and standard C++
- library for those platforms that support both
-
- - Don't define the ACE_LACKS_IOSTREAM_FX when building with MSVC
- 5.0 and the standard C++ library.
-
- - If __ACE_INLINE__ is defined as 0, config-win32-common.h
- undefines __ACE_INLINE__ to decrease the size of libraries and
- executables.
-
- * ace/IOStream.cpp: Moved the #ifdef ACE_LACKS_ACE_IOSTREAM up to the
- proper place
-
- * ace/IOStream.h:
- ace/IOStream_T.h:
- ace/Log_Msg.cpp:
- ace/Log_Msg.h:
- ace/Log_Record.cpp:
- ace/Log_Record.h:
- examples/ASX/Message_Queue/*.dsp:
- examples/OS/Process/*.dsp:
- examples/Threads/*.dsp:
- examples/Threads/barrier2.cpp:
- examples/Threads/task_three.cpp:
- netsvcs/lib/Logging_Strategy.cpp:
-
- Updated to including stdcpp.h instead of <iostream.h>,
- <iomanip.h>, <fstream.h>, etc.
-
- * ace/OS.h: Updated to use stdcpp.h instead of including the
- normal C headers. Moved the includes into stdcpp.h to allow
- switching between the old and new versions
-
- * ace/Registry.h: Changed to use the standard C++ headers for STL
- and added a typedef Name_Component and Binding to
- ACE_Registry::* to help some unresolved problems.
-
- * tests/Hash_Map_Manager_Test.cpp:
- tests/test_config.h:
-
- Updated to #include ace/stdcpp.h instead of <iostream.h> and
- <fstream.h>
-
- * ace/stdcpp.h: Updated to include more of the new standard C++
- header files, and also promote some of the iostream classes to
- the global namespace.
-
- * ace/ace.dsp:
-
- - Added some folders like Templates and Documentation
- - Added some files that were missing to the project
- - Enabled function level linking for debug projects
- - Set it to "Not using MFC"
- - Removed wsock32.lib from the project settings (since
- config-win32-common.h will tell the linker to use the correct
- winsock library)
- - Removed some other unnecessary libraries (OLE) from the
- project.
-
-Wed Aug 13 23:02:45 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.2.37, released Wed Aug 13 23:02:45 1997.
-
-Wed Aug 13 13:26:27 1997 Douglas C. Schmidt <schmidt@mambo.cs.wustl.edu>
-
- * tests/Barrier_Test.cpp (main): Fixed the test of the ACE_Barrier
- class so that it doesn't leak handles. This also illustrates
- the use of the ACE_Thread::join() and
- ACE_Thread_Manager::spawn_n() methods. Thanks to Ivan Murphy
- for pointing this out.
-
- * ace/Thread_Manager.cpp (spawn_n): Note that if we get a null
- thread_ids parameter we shouldn't try to index into it!
-
- * include/makeinclude/rules.local.GNU (OBJDIRS): Added
- so_locations to the list of directories cleaned up during a make
- clean/realclean. Thanks to Amos Shapira for reporting this.
-
- * ACE version 4.2.36, released Wed Aug 13 07:30:10 1997.
-
- * include/makeinclude/platform_irix6.[x-]32_sgic++.GNU: Added a
- -Wl,-woff,133 to LDFLAGS to make the linker shutup about branch
- instructions that might degrade performance
- (what does this mean?). Thanks to Amos for this.
-
- * tests/test_config.h: Fixed a typo (ourput_file() should be
- output_file()). How on earth did this ever work?! Thanks to
- Amos Shapira for reporting this.
-
- * ace/Message_Queue.cpp: Added a couple of new ACE_UNUSED_ARGs
- Thanks to Amos Shapira for reporting this.
-
- * ace/OS.cpp (gethrtime): ACE_OS::gethrtime should cast its return
- value to ACE_hrtime_t instead of (u_long long). Thanks to
- Amos Shapira for reporting this.
-
-Wed Aug 13 14:51:47 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * ace/SString.[i,cpp]: moved some inline methods from the .i into
- the .cpp so the Win32 Unicode Release compiles with inlining.
-
-Wed Aug 13 01:14:08 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * tests/test_config.h (ACE_NEW_THREAD): Removed
- ACE_Log_Msg::set_flags/clr_flags from this macro because
- ACE_Log_Msg::flags is a static variable. We really don't need
- to reset them when creating new threads. Once VxWorks can also
- inherit ACE_Log_Msg's properties, we no longer need this macro.
-
- * ace/Log_Msg.h: Added trace_depth() functions. They are required
- for inheriting ACE_Log_Msg's properties.
-
- * ace/OS.cpp: Changed ACE_Thread_Adapter implementation so that
- newly created threads will inherit properties from their parent
- threads. This is the default behavior and is valid on all
- platform except VxWorks. If you don't want it and would like to
- arrange the properties propagation yourself, you must define
- ACE_THREADS_DONT_INHERIT_LOG_MSG in your ace/config.h file. Now,
- creating a new thread will go thru ace_thread_adapter on all
- platform except VxWorks. If ACE_THREADS_DONT_INHERIT_LOG_MSG is
- defined but your platform defines ACE_HAS_THR_C_FUNC or
- ACE_WIN32, creating new threads still need to use
- ace_thread_adapter. This change also fixes a previous problem
- which let threads access another thread's TSS.
-
-Tue Aug 12 21:57:30 1997 David L. Levine <levine@cs.wustl.edu>
-
- * etc/ACE-guidelines.html: added.
-
-Tue Aug 12 16:54:33 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * Added Chuck Gehr's explanation of how to build ACE for MVS to
- the ACE-INSTALL.html file at http://www.cs.wustl.edu/~schmidt/.
-
- * ace/OS.i: changed the name of ACE_U_LongLong::dump() to
- ACE_U_LongLong::output(). Also moved some of the code that was
- inlined in the class definition into the *.i file.
-
- * netsvcs/lib/Server_Logging_Handler.cpp: Added a template
- specialization for ACE_Atomic_Op<ACE_Thread_Mutex, u_long> to
- make things link with SGI and other systems that have long
- different than int. Thanks to Amos Shapira for reporting this.
-
- * ace/Reactor.cpp (close): Removed the #ifdefs around
- notify_handler_.open () and notify_handler_.close() since this
- is now supposed to be available on all build configurations.
- Thansk to Stefan Ericsson for reporting this.
-
- * examples/Service_Configurator/IPC-tests/server/Handle_Thr_Stream.cpp:
- Removed a static variable that seemed to be causing problems for
- SGI C++. Also, removed the now unnecessary "inherited" from
- Handle_Thr_Acceptor.
-
- * examples/ASX/UPIPE_Event_Server/Peer_Router.h,
- * netsvcs/lib/Log_Message_Receiver.h: Added an
- ACE_UNIMPLEMENTED_FUNC macro for the assignment operator to work
- around silly "features" of SGI C++...
-
- * include/makeinclude/platform_irix6.[x-]32_sgic++.GNU: Added some
- additional patches to suppress warning code. Thanks to Torbjorn
- Lindgren <tl@funcom.no> for this fix.
-
- * include/makeinclude/platform_mvs.GNU: Changed all occurrences of
- "MVSLIB" to "ACELIB". Thanks to Chuck Gehr for reporting this.
-
-Tue Aug 12 15:03:42 1997 Steve Huston <shuston@riverace.com>
-
- * ace/Timer_Hash_T.cpp, Timer_Wheel_T.cpp: Replaced references to
- ACE_High_Res_Timer::gettimeofday with ACE_OS::gettimeofday.
- The High Res version is deprecated, and doesn't work correctly
- on HP-UX.
-
-Tue Aug 12 07:51:02 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.2.35, released Tue Aug 12 07:51:02 1997.
-
-Mon Aug 11 22:30:39 1997 David L. Levine <levine@cs.wustl.edu>
-
- * include/makeinclude/platform_vxworks5.x_ghs.GNU: disabled
- automatic template instantiation, because we use explicit
- template instantiation, via a #pragma, with Green Hills.
- Thanks to Brian Mendel <brian.r.mendel@boeing.com> for
- finding the compiler options.
-
-Mon Aug 11 17:45:44 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/OS.cpp (ace_thread_adapter): Changed the code so that TSS
- ACE_Log_Msg will get created and put into cleanup stack first no
- matter there is other ACE_Log_Msg instances or not. This fixed
- the "order of destruction" problem on Win32 platform. Thanks to
- Irfan for digging this out and helping solving it.
-
-Mon Aug 11 07:25:29 1997 <irfan@TWOSTEP>
-
- * examples/Reactor/ReactorEx/test_reactorEx.cpp: Updated this
- example to use the new Proactor and Asynch IO interfaces.
-
- * ace/Connector.cpp (activate_svc_handler): Fixed the "leak" of
- svc_handler in case of error. Thanks to Wei Chiang
- <chiang@tele.nokia.fi> for reporting this.
-
-Mon Aug 11 01:11:26 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.2.34, released Mon Aug 11 01:11:26 1997.
-
-Mon Aug 11 01:06:02 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * ace/Message_Queue.cpp (enqueue_tail_i): Inadvertantly
- added "signal_dequeue_waiters()" where I meant
- "signal_enqueue_waiters()."
-
- * include/makeinclude/wrapper_macros.GNU: Fixed a typo in the
- wrapper_macros.GNU file that was causing link errors.
-
-Sun Aug 10 11:35:06 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * ace/Message_Queue.cpp: To make sure that we have correctly
- signaled waiters the signal_enqueue_waiters() and
- signal_dequeue_waiters() methods now check the return value from
- the semaphore release if ACE_HAS_OPTIMIZED_MESSAGE_QUEUE is
- enabled.
-
- * include/makeinclude/wrapper_macros.GNU (VLDLIBS): Added a
- new macro called ACELIB that can be used to make it easier
- to enable static linking for ACE, i.e.:
-
- ACELIB = -Bstatic -lACE -Bdynamic
-
- or
-
- ACELIB = $(ACE_ROOT)/ace/libACE.a
-
- Can be added to the individual platform_macros.GNU file. This
- allowed us to remove special code for MVS in wrapper_macros.GNU.
- Thanks to Chuck Gehr for this fix.
-
- * netsvcs/lib: Added some comments after the #endifs.
-
- * ace/Filecache.cpp (insert_i): Updated the code so that we use
- ACE_NEW_RETURN rather than operator new. This macro will
- protect against failed allocations.
-
-Sat Aug 9 22:08:50 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * ace: Added two new config files:
-
- config-irix6.x-sgic++.h
- config-irix6.x-sgic++-nothreads.h
-
- This should hopefully consolidate the SGI platform
- configuration. Thanks to Torbjorn Lindgren <tl@funcom.no> for
- this fix.
-
- * include/makeinclude: Added two new platform macro files:
-
- platform_irix6.x-n32_sgic++.GNU:
- platform_irix6.x-32_sgic++.GNU
-
- This should hopefully consolidate the SGI platform macros.
- Thanks to Torbjorn Lindgren <tl@funcom.no> for this fix.
-
- * ace/Filecache.cpp: Fixed the syntax of the SGI pragma stuff.
- Thanks to Torbjorn Lindgren <tl@funcom.no> for reporting this.
-
- * ace/Name_Request_Reply.h: Changed MAX_NAME_LEN to MAX_NAME_LENGTH
- to avoid problems with Solaris 2.6. Thanks to Thanh Ma <tma@encore.com>
- for reporting this.
-
-Sat Aug 9 12:10:35 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/config-win32-common.h (ACE_HAS_WINSOCK2):
- * ace/config-win32.h (ACE_HAS_WINSOCK2): Rearranged definition of
- this so that users can overwrite the default setting and choose
- older Winsock if they want. No action needed for most NT
- useres. Thanks to jmorey@tbi.com (John Morey) for pointing this
- out.
-
-Sat Aug 09 11:28:36 1997 Steve Huston <shuston@riverace.com>
-
- * ace/Profile_Timer.i: ACE_HAS_GETRUSAGE and !ACE_HAS_PRUSAGE
- platforms now use ACE_OS::gettimeofday rather than
- ACE_High_Res_Timer::gettimeofday in start() and stop() methods.
-
- * tests/Sigset_Ops_Test.cpp: adjusted test for sigismember() with
- out-of-range signum to separately test return value and errno.
- Also, returns non-zero from program on failed test.
-
-Fri Aug 08 17:39:43 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.2.33, released Fri Aug 08 17:39:43 1997.
-
-Fri Aug 08 02:50:31 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ace/Message_Queue: Factored out the code that differs depending
- on whether we are using the optimized ACE_Message_Queue
- implementation (i.e., VxWorks and NT). This change makes it
- easier to maintain the code. Thanks to Darrell for helping with
- this.
-
- * ace/Log_Msg.cpp (close): Fixed a couple of typos in this code,
- in particular, we need to make sure that we don't call
- ACE_Log_Msg_Manager::close() if we aren't multi-threaded.
-
- * ACE version 4.2.32, released Fri Aug 08 02:50:31 1997.
-
-Fri Aug 8 13:17:21 1997 Chris Cleeland <cleeland@cs.wustl.edu>
-
- * ace/OS.* (strtoul): Added the OS function strtoul() to turn
- strings into unsigned longs.
-
-Fri Aug 8 12:26:54 1997 Steve Huston <shuston@riverace.com>
-
- * ace/Log_Msg.cpp: Fixed some comments and removed unused code
- I erroneously added August 6.
-
- * ace/config-hpux-10.x.h: Fixed to not always compile tracing code.
-
- * tests/test_config.h: ACE_END_TEST and ACE_END_LOG macros direct
- log output back to stderr when shutting off the file output.
-
- * tests/TSS_Test.cpp: Removed ACE_Thread_Control object from the main
- thread - it served no purpose and didn't work on HP-UX (due to
- a documented pthread_exit restriction). Also changed a 'delete
- ptr' to a call on operator delete (void *).
-
-Fri Aug 8 09:17:21 1997 Chris Cleeland <cleeland@cs.wustl.edu>
-
- * ace/Service_Repository.h (operations.): Improved documentation
- on find().
-
-Fri Aug 8 00:01:43 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/Log_Msg.cpp (close): Moved ACE_Log_Msg::close() out of
- ACE_MT_SAFE block so it always exists. This function only takes
- care of non-VxWorks platforms.
-
- (instance): Removed at_exit() call since the instances will be
- taken of by TSS_Cleanup.
-
- * ace/Object_Manager.cpp (~ACE_Object_Manager): Removed condition
- compilation so it always calls ACE_Log_Msg::close().
-
-Thu Aug 7 23:36:26 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * ace/Reactor.h: Added the renew() method and the notify_handler_
- data member to all compilation cases, not just for
- multi-threading.
-
- * ace/Service_Config.h: Clarified the fact that argv[0] is the
- program name. Thanks to Chris Cleeland for pointing this out.
-
- * ace/config-mvs.h: Added the ACE_HAS_TEMPLATE_SPECIALIZATION flag
- thanks to Chuck Gehr.
-
- * include/makeinclude/platform_irix6.2_sgic++.GNU: Turned on
- exceptions and turned off implicit template instantiation.
- Thanks to Amos Shapira <amos@gezernet.co.il> for reporting the
- former.
-
- * ace/config-irix6.2-sgic++.h: Also added the
- ACE_HAS_TEMPLATE_SPECIALIZATION flag and changed the
- platform_irix6.2.GNU file to not implicitly initialize
- templates. If this breaks something, please let me know.
-
- * ace/config-irix6.2-sgic++.h: Added the ACE_HAS_EXCEPTIONS flag.
- Thanks to Amos Shapira <amos@gezernet.co.il> for reporting this.
- However, there is some question as to whether this will work.
- If it doesn't, please let me know.
-
- * ace/Reactor: Moved the ACE_Reactory_Notify class out from the
- ACE_MT_SAFE section into the main code since this should work
- for non-threaded builds, as well. Thanks to Stefan Ericsson
- <uabsjen@osd.ericsson.se> for reporting this.
-
- * ace/config-chorus.h: Added the ACE_HAS_TEMPLATE_SPECIALIZATION
- flag. Thanks to Wei Chiang for this.
-
-Thu Aug 7 19:09:35 1997 Steve Huston <shuston@riverace.com>
-
- * tests/Hash_Map_Manager_Test.cpp - split definition of Dumb_String
- class to a new header, Hash_Map_Manager_Test.h. This makes AIX
- C Set ++ happy.
-
- * tests/Process_Strategy_Test.cpp - split definitions of Options
- and Counting_Service classes to Process_Strategy_Test.h for AIX
- C Set ++'s benefit.
-
-Thu Aug 7 15:27:28 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * ace/OS.h: Fixed typo in the definition of ACE_SYNCH_1 and
- ACE_SYNCH_2 for ACE_HAS_OPTIMIZED_MESSAGE_QUEUE
-
-Thu Aug 7 13:05:20 1997 Chris Cleeland <cleeland@cs.wustl.edu>
-
- * ace/Strategies_T.h: Changed the argument to ACE_DLL_Strategy
- from ACE_Service_Config to ACE_Service_Repository, which is more
- concrete.
-
- * bin/g++dep (REL): Added sed rule so that TAO's dependencies are
- set relative to $TAO_ROOT as well as $ACE_ROOT when the '-r'
- option is utilized.
-
- * include/makeinclude/platform_linux_lxpthread.GNU (CCFLAGS): The
- -Wall option can now be used. It only generates two warnings
- throughout all of ACE!
-
- * include/makeinclude/rules.local.GNU (depend.local): Modified
- this target so that TAO's dependencies are set relative to
- $TAO_ROOT as well as $ACE_ROOT.
-
-Thu Aug 7 12:03:48 1997 James C Hu <jxh@lambada.cs.wustl.edu>
-
- * ace/Filecache.{h,cpp}: Fixed unused variable found by Amos
- Shapira. Fixed TEMPLATE_SPECIALIZATION dependency, sort of. Do
- not attempt to use Filecache if you do not support
- TEMPLATE_SPECIALIZATION.
-
-Thu Aug 07 00:19:12 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.2.31, released Thu Aug 07 00:19:12 1997.
-
-Wed Aug 6 22:20:54 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * ace/Synch_T.h: Replaced all uses of ACE_Null_Condition_Mutex
- with ACE_Null_Condition, which is much more straightforward...
-
- * ASNMP: Added Mike MacFaden's changes for IRIX.
-
-Wed Aug 6 16:37:51 1997 James C Hu <jxh@lambada.cs.wustl.edu>
-
- * ace/Hash_Map_Manager.cpp: Changed implementation back to use a
- single sentinel_ rather than an array of them.
-
- * ace/Filecache.{h,cpp}: Total re-implementations. Fewer locks
- acquired and released when there is a cache hit.
-
-Wed Aug 06 12:55:26 1997 Steve Huston <shuston@riverace.com>
-
- * ace/Log_Msg.(h cpp):
- (ACE_Log_Msg_Manager) - Removed most of the non-VxWorks
- pieces - there's just a lock left; the instances_ was removed
- (ACE_Log_Msg) - Use ACE_Object_Manager to remove per-thread
- instances of ACE_Log_Msg rather than using ACE_Log_Msg_Manager.
- The use of an ACE_Unbounded_Set to hold the ACE_Log_Msg pointers
- in previous versions caused some non-tail recursion problems when
- tracing was enabled.
- Uses an instance count to know when it's safe to free the dynamically
- allocated class-static memory.
-
- * ace/Trace.(h cpp): Added new static member function:
- int is_tracing(void) - returns 1 if tracing is enabled, else 0.
-
- * ace/Object_Manager.(h cpp): Added a flag to indicate the object is
- being destroyed - during destruction, ACE_Object_Manager now refuses
- to register any new memory pointers. Also turns tracing off during
- destruction - ACE_Log_Msg makes use of ACE_Object_Manager, so we
- don't want ACE_Log_Msg instance being deleted, then created for a
- ACE_TRACE, then deleted, then created,...
-
-Wed Aug 06 03:35:41 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.2.30, released Wed Aug 06 03:35:41 1997.
-
-Wed Aug 6 00:13:27 1997 Nanbor Wang <nw1@dingo.wolfpack.cs.wustl.edu>
-
- * netsvcs/lib/Server_Logging_Handler.cpp: We only need to
- instantiate ACE_Svc_Handler<LOGGING_PEER_STREAM, ACE_SYNCH> when
- ACE_HAS_THREADS. Otherwise, we'll have duplicate symbols
- defined on platforms that do not support threads.
-
-Tue Aug 5 19:52:36 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * ace/Containers: Added a new reset method for ACE_Unbounded_Set.
- Thanks to Arturo Montes <mitosys@colomsat.net.co> for
- reporting this.
-
- * ace: Changed most uses of ACE_LACKS_COND_T to
- ACE_HAS_OPTIMIZED_MESSAGE_QUEUE to make it possible to toggle
- between the emulated condition variable implementation of
- ACE_Message_Queue and the semaphore implementation. We need
- this until we fully test out the semaphore implementation of
- ACE_Message_Queue.
-
- * ace/Object_Manager.cpp (ACE_Object_Manager): Only call the
- ACE_Log_Msg::close() method if ACE_MT_SAFE is enabled! Thanks
- to Satoshi Ueno <satoshi.ueno@gs.com> for reporting this.
-
- * ace/Malloc.h: Added a fix for misalignment of data in the
- ACE_CONTROL_BLOCK_ALIGN_LONGS macro. Thanks to Fred LaBar
- <flabar@fallschurch.esys.com> for this fix.
-
- * ace/ACE.cpp: (enter_recv_timedwait,enter_send_timedwait): Always
- give val a default value of 0 to make Purify happy. Thanks to
- David Levine for reporting this.
-
- * netsvcs/clients/Tokens/rw_lock/rw_locks.cpp,
- netsvcs/clients/Tokens/manual/manual.cpp,
- netsvcs/clients/Tokens/deadlock/deadlock_detection_test.cpp:
- Removed unreachable statements. Thanks to Cherif Sleiman
- <sleiman@research.moore.com> for reporting this deficiency and
- testing the fix.
-
-Tue Aug 5 16:41:06 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * ace/Synch_T.h: Added some more ACE_LACKS_COND_T changes for compilers
- without template typdefs.
-
-Tue Aug 5 11:50:43 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/Message_Queue.h: Fixed typos for the case when
- ACE_LACKS_COND_T.
-
-Tue Aug 05 11:02:11 1997 <irfan@TWOSTEP>
-
- * tests/Atomic_Op_Test.cpp (main): Made sure that on platforms
- without threads, we don't try to run this test.
-
-Tue Aug 05 09:15:40 1997 David L. Levine <levine@cs.wustl.edu>
-
- * include/makeinclude/platform_vxworks5.x_ghs.GNU: removed
- -no_prelink from LDFLAGS because ghs 1.8.8 doesn't support it.
- Thanks to Cherif Sleiman <sleiman@research.moore.com> for
- reporting this.
-
- * ace/Service_Record.cpp: added #include "ace/Stream_Modules.h"
- to support template instantiation on GreenHills, at least.
- Thanks to Cherif Sleiman <sleiman@research.moore.com> for
- reporting this deficiency and testing the fix.
-
- * ace/config-vxworks-ghs-1.8.h: added
- ACE_LACKS_LINEBUFFERED_STREAMBUF. Thanks to Cherif Sleiman
- <sleiman@research.moore.com> for reporting this.
-
-Mon Aug 4 22:47:54 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * ace/Message_Queue: Fixed consistency problems in naming notfull
- vs. not_full. Thanks to David Levine for finding this.
-
- * ace/Message_Queue: Added specialized support for cases where
- ACE_LACKS_COND_T (e.g., VxWorks and NT). This scheme uses
- ACE_Thread_Semaphores in this case, which should be more
- efficient).
-
- * ace/Synch_T.h: Added a new set of macros and typedefs for
- ACE_SYNCH_SEMAPHORE.
-
- * examples/ASX/Message_Queue: Cleaned up all the Message_Queue
- examples.
-
- * examples/ASX/Message_Queue/buffer_stream.cpp: Added a
- NUL-terminator to the program so that it won't break. Thanks to
- Darrell for finding this.
-
- * ace/Reactor.cpp (wait_for_multiple_events): Fixed some
- stylistic problems in the Reactor.
-
- * ace/Synch.cpp (ace_static_object_lock_atexit): Changed from:
-
- extern "C" static void
-
- to:
-
- extern "C" void
-
- Thanks to Chuck Gehr <gehr@sweng.stortek.com> for this.
-
-Mon Aug 4 14:03:22 1997 Steve Huston <shuston@riverace.com>
-
- * tests/Enum_Interfaces_Test.cpp: return non-zero if test fails.
-
-Mon Aug 4 12:03:29 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * tests/Semaphore_Test: Redid to test timed waits in a more
- reasonably fashion.
-
-Mon Aug 4 11:43:09 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * ace/OS: Continued to cleanup the problems with inconsistent
- variants of sendmsg() and writev() on VxWorks. Thanks to Cherif
- Sleiman <sleiman@research.moore.com> for reporting this.
-
- * ace/OS.i (sema_wait): Fixed the implementation on NT so that
- errno = ETIME.
-
- * tests/Semaphore_Test.cpp: Cleaned up the programming style a
- bit.
-
- * ace/OS (writev): Removed the ACE_WRITEV_TYPE from the
- ACE_OS::writev() method and instead put this as a cast on the
- internal call to ::writev(). This is much cleaner and should
- fix a bug introduced last night. Thanks Cherif Sleiman
- <sleiman@research.moore.com> for reporting this.
-
- * ace/Synch: Added a new release() method to ACE_Semaphore that
- enables a caller to release multiple waiters. Thanks to Darrell
- Brunsch <brunsch@cs.wustl.edu> for noticing this.
-
-Mon Aug 4 12:03:29 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * tests/Semaphore_Test: Redid to test timed waits in a more
- reasonably fashion.
-
-Sun Aug 03 23:47:13 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.2.29, released Sun Aug 03 23:47:13 1997.
-
-Sun Aug 3 22:18:33 1997 Douglas C. Schmidt <schmidt@cumbia.cs.wustl.edu>
-
- * tests/Atomic_Op_Test.cpp: Added template specialization so that
- David won't have to ;-)
-
- * ace/ACE: Added a new, complete set of send/recv operations with
- timeouts. These implement the following methods:
-
- read, readv, write, writev, recv, recvfrom, recvmsg, send, sendto, sendmsg.
-
- The implementation provides two flavors: MIT pthread support, an
- ACE portable support. To use MIT pthread support, you must to
- define ACE_HAS_READ_TIMEDWAIT, ACE_HAS_READV_TIMEDWAIT,
- ACE_HAS_WRITE_TIMEDWAIT, ACE_HAS_RECV_TIMEDWAIT,
- ACE_HAS_RECVFROM_TIMEDWAIT, ACE_HAS_RECVMSG_TIMEDWAIT,
- ACE_HAS_SEND_TIMEDWAIT, ACE_HAS_SENDTO_TIMEDWAIT and
- ACE_HAS_SENDMSG_TIMEDWAIT respectively. See the config.h file
- for SCO UNIX for an example.
-
- This new approach is not only more powerful (since it takes
- advantage of OS-level mechanisms when they exist), but it also
- greatly improves the modularity of the code and provides a
- wider range of supported functionality. Thanks to Arturo
- Montes <mitosys@colomsat.net.co> for this new feature.
-
- * ace/ACE.cpp: Added comments to the ACE_Object_Manager_Destroyer
- class.
-
- * ace/OS.h: Redid all the function prototypes for class ACE_OS so
- that it's easier to read the arguments.
-
- * ace/config-sco-5.0.0-mit-pthread.h: Added the new macros that
- enable timed reads and writes. Thanks to Arturo Montes
- <mitosys@colomsat.net.co> for this new feature.
-
- * ace: Added a corresponding #endif /* FOO */ for all #if defined
- (FOO) in ACE.
-
- * ace: Changed all uses of ACE_IOStream_T to ACE_IOStream to
- be more consistent with other uses of templates in ACE.
- Thanks to Thilo for reporting this (and thanks to David
- for not being offended ;-)).
-
- * ace/OS.i (operator/): Removed "const" from both the OS.h and
- OS.i files for ACE_U_LongLong::operator/. It is redundant,
- potentially confusing, and gives warnings on some compilers!
-
-Sun Aug 03 21:20:12 1997 <irfan@TWOSTEP>
-
- * tests/Atomic_Op_Test.cpp: Added new test to test the Atomic
- Operations Class in ACE. On platforms like Win32, ACE uses
- template specialization to use native implementations provided
- by the OS to accelarate these operations.
-
- * ace/config-win32-common.h (ACE_HAS_INTERLOCKED_EXCHANGEADD):
- Added macro to config file. This macro is automatically set true
- for NT4.0 systems or greater.
-
- * ace/Atomic_Op.i: On Win32 platforms, this code will be included
- as template source code and will not be inlined. Therefore, we
- first turn off ACE_INLINE, set it to be nothing, include this
- code, and then turn ACE_INLINE back to its original setting. All
- this nonsense is necessary since the generic template code that
- needs to be specialized cannot be inlined, else the compiler
- will ignore the specialization code. Also, the specialization
- code *must* be inlined or the compiler will ignore the
- specializations.
-
- The creation of this new file is necessary for non-Win32
- platforms to continue to inline the code as before.
-
- * ace/Synch_T.cpp: This file must include Atomic_Op.i if
- ACE_INLINE has not be turned on. If it is, this file must be
- included by Synch_T.h.
-
- * ace/Synch.cpp: Moved the specialization code from Synch.cpp to
- Atomic_Op.i. This is necessary, otherwise the compiler will
- ignore the specialization.
-
-Sun Aug 03 10:51:34 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/config-osf1-4.0*.h: added #define ACE_HAS_LONGLONG_T.
- Thanks to Thilo for reporting that OSF1-4.0 does.
-
-Sat Aug 02 23:51:19 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.2.28, released Sat Aug 02 23:51:19 1997.
-
- * ace/TTY_IO.cpp (control): Fixed a bug when using 8 bits for
- character due to ISTRIP flag setting for device. Thanks to
- Arturo Montes <mitosys@colomsat.net.co> for reporting this bug.
-
- * ACE-categories: Updated the list of ACE classes to reflect
- recent changes.
-
- * ASNMP: Added the new ACE+SNMP release courtesy of Mike
- MacFaden <mrm@cisco.com>. This builds cleanly on Solaris,
- but it looks like there are a bunch of non-portable features
- that won't compile cleanly on all the other platforms.
- Therefore, until Mike or others get this stuff fully portable,
- it won't be build by default in the top-level ACE Makefile.
-
- * ace/OS.h (class ACE_U_LongLong): Reformatted this a bit.
-
- * ace/SV_Semaphore_Simple.i: Removed the #include of
- SV_Semaphore_Simple.h since it seems unnecessary and is causing
- problems for TAO.
-
- * ace/IOStream_T.h (ACE_IOStream_T): Removed the unneeded ';' at
- the end of the ACE_UNIMPLEMENTED_FUNC macros since this was
- causing compiler errors.
-
-Sat Aug 02 13:11:22 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/Synch.cpp (ACE_Static_Object_Lock::instance): commented
- out call to ::atexit () because it causes shutdown problems
- on DEC CXX, HP/UX, and AIX. Many thanks to James Johnson
- for tenaciously tracking this one down, to Thilo and Steve
- for assisting, and to all who reported the problem.
-
- * ace/Log_Msg.cpp (ACE_Log_Msg_Manager::open,close): neutered
- on VxWorks, only, so that it will compile.
-
-Fri Aug 1 21:33:18 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * netsvcs/lib/netsvcs.mak: Added post compilation command that
- copies DLL to ace/ directory because netsvcs/main.exe must have
- this file in search path.
-
- * ace/Read_Buffer.cpp (ACE_Read_Buffer): Used ACE_OS::fdopen
- instead of ::fdopen because it caused compilation error on NT.
-
-Fri Aug 1 17:25:04 1997 Chris Cleeland <cleeland@swarm.cs.wustl.edu>
-
- * include/makeinclude/platform_irix6.4_sgic++.GNU (CCFLAGS): Used
- -ptnone and -no_prelink in order to get SGI to compile properly.
-
- * ace/config-irix6.4-sgic++.h (ACE_HAS_EXCEPTIONS): Added
- ACE_HAS_EXCEPTIONS to this config.
-
- * ace/IOStream_T.h (ACE_IOStream_T): Wrapped send, recv, send_n,
- and recv_n with the ACE_UNIMPLEMENTED_FUNC macro.
-
-Fri Aug 1 17:08:32 1997 Nanbor Wang <nw1@waltz.cs.wustl.edu>
-
- * ace/ace.mak: Put OS.cpp back into the makefile.
-
- * ace/config-win32-common.h: Commented out checking of
- ACE_HAS_WINSOCK2 when we are using NT 4.0 and above. The
- original check prevented us from using winsock2.
-
- * ace/Thread_Manager.cpp:
- * ace/Service_Repository.cpp:
- * ace/ReactorEx.cpp:
- * ace/Reactor.cpp:
- * ace/Proactor.cpp:
- * ace/Malloc.cpp:
- * ace/Synch.{h,cpp}: Changed the lock held by
- ACE_Static_Object_Lock from ACE_Thread_Mutex to
- ACE_Recurssive_Thread_Mutex.
-
- * ace/Timer_Heap_T.cpp (ACE_Timer_Heap_T): Something was missing
- here.....
-
-Fri Aug 1 13:39:13 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * ace/TTY_IO.cpp (control): Removed the special M_UNIX code for
- SCO_OpenServer. Thanks to Arturo Montes
- <mitosys@colomsat.net.co> for reporting this.
-
- * ace/Read_Buffer.cpp (ACE_Read_Buffer): Mistakenly used int
- rather than ACE_HANDLE for one of the constructors in
- ACE_Read_Buffer.
-
- * ace/OS.cpp (readv): Fixed a braino that manifests itself on
- Chorus because I put the ACE_READV_TYPE in the wrong place.
- Thanks to Wei Chiang for reporting this.
-
-Fri Aug 1 14:31:22 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * tests/Timer_Queue_Test.cpp: removed casts from pointers to ints
- (when a act was compared with a number) and instead used a cast
- on the integer values. This gets rid of warnings on platforms
- where the sizeof a pointer is larger than the sizeof an int.
-
-Fri Aug 01 12:10:28 1997 <irfan@TWOSTEP>
-
- * ace/Synch_T: Changed parameter passing for ACE_Atomic_Op from
- const TYPE to const TYPE &.
-
- * ace/Synch.cpp: These specializations have been added to
- ACE_Atomic_Op to make the implementation faster on Win32 that
- has OS support for doing this quickly through methods like
- InterlockedIncrement and InterlockedDecrement.
-
- * ace/SV_Semaphore_Complex.cpp (open): Fixed more compiler
- warnings:
-
- IOStream.cpp Naming_Context.cpp Read_Buffer.cpp
- SV_Semaphore_Complex.cpp SV_Semaphore_Complex.i
-
-Fri Aug 1 11:57:45 1997 Chris Cleeland <cleeland@cs.wustl.edu>
-
- * ace/Containers.h (ACE_Fixed_Set): Eliminated declaration for
- unnecessary ACE_Fixed_Set(size_t) CTOR.
-
- * ace/OS.h: Simplified the typedef of ACE_hrtime_t so that it's an
- unsigned long long whenever ACE_HAS_LONG_LONG_T is defined.
-
-Fri Aug 01 10:12:26 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/config-osf1-4.0.h: added ACE_HAS_TEMPLATE_SPECIALIZATION.
- Thanks to Thilo for verifying that this is supported with DEC CXX.
-
- * ace/config-irix6.4-sgic++*.h: added ACE_TEMPLATES_REQUIRE_SOURCE
- and ACE_REQUIRES_FUNC_DEFINITIONS.
-
- * ace/OS.h,README: added ACE_REQUIRES_FUNC_DEFINITIONS support.
-
- * ace/{Free_List.h,Remote_Tokens.h,Synch_T.h,Timer_*_T.h}:
- wrapped unimplemented template class copy constructors and
- assignment operators with ACE_UNIMPLEMENTED_FUNC.
-
- * tests/Service_Config_Test.cpp: removed templates to avoid
- problems with finicky compilers, and added check of destruction
- ordering.
-
- * include/makeinclude/platform_vxworks5.x_ghs.GNU: added
- -no_prelink to LDFLAGS.
-
-Fri Aug 01 00:14:46 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.2.27, released Fri Aug 01 00:14:46 1997.
-
-Thu Jul 31 21:51:01 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/Log_Msg.cpp (open): fixed memory leak.
-
-Thu Jul 31 21:41:10 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * tests/Service_Config_Test.cpp (run_test): You won't shout as I...
-
- * ace/Object_Manager.cpp (instance): ... fiddle about ;-)
-
-Thu Jul 31 17:39:56 1997 <irfan@TWOSTEP>
-
- * ace: The following files were modified to avoid the
- "unreferenced formal parameter" and other warnings from the
- compiler:
-
- ACE.cpp Asynch_IO.cpp Asynch_IO.h INET_Addr.cpp OS.cpp OS.h OS.i
- Proactor.cpp Reactor.cpp ReactorEx.cpp ReactorEx.i
- SOCK_Dgram_Bcast.cpp Service_Config.cpp
-
-Thu Jul 31 16:46:44 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/config*.h: replaced "ACE_REQUIRES_TEMPLATE_SPECIALIZATION"
- with "ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION".
-
- * ace/config-vxworks-ghs-1.8.h,config-irix6.4-sgic++*.h: added
- ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA.
-
- * all .cpp files that had "ACE_REQUIRES_TEMPLATE_SPECIALIZATION":
- replaced with "ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION" and
- added #pragma instantiate for Edision Design Group compilers,
- e.g., SGI and Green Hills.
-
-Thu Jul 31 16:25:33 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * ace/Synch.i (acquire): Added the timed acquire() interface to
- ACE_Semaphore.
-
-Thu Jul 31 11:10:17 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * tests/run_tests.bat: Redid this file completely making it
- much smarter about running tests. Instead of just blindly
- executing the tests, it checks the return values to see if
- an error occured and also outputs relevant errors from the
- log file if the test was unsuccessful.
-
- It's a remarkable example of batch programming wizardry.
-
-Thu Jul 31 10:39:04 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * ace/INET_Addr.cpp: initialized error variable in
- gethostname to stop warnings when inlining is on.
-
-Thu Jul 31 09:46:50 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * ace/Timer_Heap_T.cpp: changed cancel(id) to check the timer
- id to make sure it is in range (not negative and not larger
- than the current size of the heap)
-
-Thu Jul 31 07:32:26 1997 David L. Levine <levine@cs.wustl.edu>
-
- * Malloc_T.{i,cpp},Timer_Queue_T.i: replaced LOCK with ACE_LOCK.
- Thanks to Thilo for supplying patches.
-
- * ace/config-sunos5.5-g++.h: #define ACE_MALLOC_ALIGN to be 8.
-
- * ace/Object_Manager.*: renamed cleanup () to at_exit ().
-
- * Log_Msg.{h,cpp},Object_Manager.cpp: let ACE_Object_Manager
- clean up the global ACE_Log_Msg_Manager.
-
- * Service_Config_Test.cpp: added test of
- ACE_Object_Manager::at_exit ().
-
-Wed Jul 30 20:30:25 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * ace/SOCK_Dgram.h: Added an = 0 to the flags parameter to recv().
- Thanks to Michael MacFaden for pointing out the inconsistency.
-
- * ace/OS.cpp (thr_create): Added support for the SCHED_IO policy,
- which is supported by MIT Pthreads. Thanks to Arturo Montes
- <mitosys@colomsat.net.co> for this fix.
-
- * ace/SOCK_Dgram.h: Added a comment to clarify how to delete the
- elements of the iovec array. Thanks to Mike MacFaden for
- clarifying this.
-
- * ace/Reactor.h: Changed the comment for schedule_timer() to use
- delta_timer rather than delay.
-
- * ace/Connector: Updated the timer cancellation id to be long
- rather than int.
-
- * examples/Reactor/Misc/notification.cpp: Timers are now working
- happily on Chorus, so we can revert the Chorus-specific patches.
- Thanks to Wei Chiang for reporting this.
-
- * ace/SOCK_Dgram.cpp (recv): The timed recv() method must return
- -1 on a timeout to meet its documented specification. Thanks to
- Joseph Cross <joseph.k.cross@lmco.com> for reporting this
- problem.
-
- * ace/OS.i (readv): Added a fix for Chorus, which has a different
- readv() prototype than normal operating systems. Thanks to Wei
- Chiang for reporting this.
-
-Wed Jul 30 20:02:21 1997 James C Hu <jxh@lambada.cs.wustl.edu>
-
- * ace/Hash_Map_Manager.{h,cpp}: changed the *_i methods to use
- shared_find() method to ease template specialization efforts.
- Also, added a new shared_find() method. Added a parameter to
- each to allow the passing in of the calculated hash value.
-
-Wed Jul 30 16:43:34 1997 <irfan@TWOSTEP>
-
- * ace/config-win32-common.h: If _DEBUG is not set (that is, we are
- building the Release version), we will turn on __ACE_INLINE__.
- Thanks to Matthias Kerkhoff <make@cs.tu-berlin.de> for
- suggesting this.
-
-Wed Jul 30 06:53:30 1997 Matthias Kerkhoff <make@cs.tu-berlin.de>
-
- * The use of the following configuration #defines in the entire
- ACE distribution has been changed:
-
- - ACE_HAS_WINNT4
- - ACE_HAS_MFC
- - ACE_HAS_STRICT
- - ACE_MT_SAFE
- - ACE_HAS_DLL
- - ACE_HAS_SVC_DLL
- - ACE_HAS_WINSOCK2
- - ACE_HAS_ORBIX
- - ACE_HAS_MT_ORBIX
-
- In previous ACE-versions, code blocks depending on one of these
- defines have been guarded by an #if defined(ACE_XXX_OPTION).
- Therefore it has been necessary to define the default
- configuration unconditionally in config-win32.h.
-
- The #if statements in the source files have been changed to
-
- #if defined(ACE_XXX_OPTION) && (ACE_XXX_OPTION != 0)
-
- while the default configuration in config-win32.h will only be used,
- if it has not been overridden from the compilers command line (i.e.) :
-
- #if !defined(ACE_XXX_OPTION)
- #define ACE_XXX_OPTION 1
- #endif
-
-Wed Jul 30 14:46:33 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/Malloc.cpp:
- * ace/Proactor.cpp:
- * ace/ReactorEx.cpp:
- * ace/Reactor.cpp:
- * ace/Service_Repository.cpp:
- * ace/Thread_Manager.cpp:
- * ace/Synch.{h,cpp}: Changed ACE_Static_Object_Lock::get_lock ()
- to instance () to emphasize that it's a singleton.
-
- * ace/Containers.cpp: Fixed the problem caused by
- ACE_Unbounded_Stacknotkeeping its size currectly. Thanks for
- Matthias Kerkhoff <make@cs.tu-berlin.de> for sending us the
- patch.
-
- * ace/OS.cpp (exit): Corrected a bug in ACE_TSS_Cleanup::exit ().
- It innocently uses default ctor to copy info_arr. And things
- get out of hand when info_arr[] gets destructed. Thanks very
- much for Matthias Kerkhoff <make@cs.tu-berlin.de> for digging
- this out and sending us the patch.
-
-Wed Jul 30 13:36:55 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/config-vxworks-ghs-1.8.h: added #ifdef ppc wrapper around
- #define of ACE_HAS_POWERPC, because GreenHills #defines that.
-
- * include/makeinclude/platform_vxworks5.x_ghs.GNU: replaced
- indlib.o LIBS with newer ghsbltin.o and ghsmath.o.
-
- * ace/OS.h: use the same ACE_UNUSED_ARG definition with ghs as
- with other compilers.
-
- * ace/Object_Manager.*: revised interface, but still in flux.
- cleanup () should work for process-wide registration, but is
- untested.
-
-Wed Jul 30 11:13:57 1997 Chris Cleeland <cleeland@cs.wustl.edu>
-
- * ace/config-linux*.h (ACE_HAS_LONGLONG_T): These configs
- file incorrectly had ACE_HAS_LONGLONG rather than
- ACE_HAS_LONGLONG_T.
-
- * ace/OS.cpp (gethrtime): Added 'volatile' keyword to insure that
- the automatic variables 'most' and 'least' don't get put into
- registers. Putting this in stopped the SIGSEGV that was occurring
- in Linux.
-
-Wed Jul 30 06:53:30 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.2.26, released Wed Jul 30 06:53:30 1997.
-
-Wed Jul 30 04:36:39 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/Containers.{h,cpp}: Added back new parameterized allocation
- strategy version. Finally.
-
- * ace/Synch.cpp (atexit): Moved ACE_Allocator here because only
- here, we can be sure that no other user defined memory
- activities are going on. This is becoming even more
- interesting now.... Perhaps we should move all
- close_singleton's here?
-
- * ace/Service_Config.cpp (close_singletons): Removed
- ACE_Allocator::close_singleton () from this function because we
- still need ACE_Allocator to "free" static objects' memory.
-
- * ace/Synch.{h,cpp}: Added a new class ACE_Static_Object_Lock
- which provides a lock when instantiating static objects.
-
- * ace/Thread_Manager.cpp: Removed ace_thread_manager_lock_,
- * ace/Service_Repository.cpp: Removed ace_service_repository_lock_,
- * ace/ReactorEx.cpp: Removed ace_reactorex_lock_,
- * ace/Reactor.cpp: Removed ace_reactor_lock_,
- * ace/Proactor.cpp: Removed ace_proactor_lock_,
- * ace/Malloc.cpp: Removed ace_malloc_lock_,
- and replace them with a global single lock
- ACE_Static_Object_Lock::get_lock ().
-
-Tue Jul 29 16:25:48 1997 Chris Cleeland <cleeland@cs.wustl.edu>
-
- * ace/OS.cpp (thr_create): Explicitly flagged 'stack' and 'size'
- as unused arguments.
-
- * ace/Memory_Pool.cpp (handle_signal): Explicitly flagged siginfo
- as an unused argument, and moved the decl of offset into the
- conditional block in which it's used.
-
- * ace/OS.i (dlerror): Added explicit cast of the return value to
- (char*) because on Linux dlerror() returns const char*, while on
- Solaris it's char*.
-
- * ace/config-linux-lxpthreads.h: Created new flag
- ACE_LACKS_POSIX_PROTO_FOR_SOME_FUNCS that can be used when only
- certain functions are missing POSIX prototypes. This eliminates
- more warnings with -Wall
-
- * ace/ACE.cpp (max_handles): Added return statement for the
- RLIMIT_NOFILE case.
- (count_interfaces): Removed unused variables.
-
-Tue Jul 29 15:10:35 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * ace/OS.i: Changed sema_wait to take in a const ACE_Time_Value
-
-Tue Jul 29 12:41:27 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
-
- * ace/config-sco-5.0.0-mit-pthread.h: Added the
- ACE_LACKS_PWD_FUNCTIONS macro. Thanks to Arturo Montes
- <mitosys@colomsat.net.co> for reporting this.
-
-Tue Jul 29 13:10:00 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/Signal.h: Moved inclusion of "Containers.h" to the bottom of
- this file so everything is defined properly before use.
-
-Tue Jul 29 12:36:24 1997 <irfan@TWOSTEP>
-
- * tests/Message_Queue_Test.cpp (main): Removed dynamic allocation
- of the string array.
-
-Tue Jul 29 12:15:49 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * ace/Proactor.cpp
- * ace/Reactor.cpp:
- * ace/ReactorEx.cpp: Changed the default Timer Queue to
- Timer Heap instead of Timer List.
-
-Tue Jul 29 07:59:04 1997 David L. Levine <levine@cs.wustl.edu>
-
- * Makefile,TAO/Makefile: change mode of updated ChangeLog-*
- file to 644 after updating it, when building a release
- with TIMESTAMP enabled.
-
- * ace/OS.cpp (sched_params): added some more initializations
- to 0 to avoid Purify warnings about unitialized memory reads.
-
- * ace/Object_Manager.cpp (~ACE_Object_Manager): removed unused
- variable "i". Thanks to Amos Shapira <amos@gezernet.co.il>
- for reporting this.
-
- * ace/Service_Record.{h,i} Parse_Node.{h,cpp} (handle,open_handle):
- removed "const" from ACE_SHLIB_HANDLE return value. Thanks
- to the several people who noted compiler warnings from this.
-
- * ace/Naming_Context.cpp: added delete of this->name_options_;
- (dtor,fini): call this->close ().
-
- * tests/IOStream_Test.cpp (client,server): use ACE_NEW_RETURN
- instead of new.
-
-Tue Jul 29 01:53:18 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/OS.h: Added two new macros ACE_NEW_MALLOC_RETURN and
- ACE_NEW_MALLOC. Theses are similiar to ACE_ALLOCATOR_RETURN and
- ACE_ALLOCATOR that allow memory allocation using user defined
- functions. However, these two macros will call specified
- constructor after memory is being allocated.
-
- * ace/Containers.{h,cpp}: Decoupled memory allocation strategy for
- ACE_Unbounded_Stack, ACE_Unbounded_Set, ACE_Unbounded_Queue.
- Users can now specified their own memory allocation strategies
- if needed. If not specified, the default ACE_Allocator will be
- used.
-
-Tue Jul 29 00:56:54 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.2.25, released Tue Jul 29 00:56:54 1997.
-
-Mon Jul 28 16:23:26 1997 David L. Levine <levine@cs.wustl.edu>
-
- * include/makeinclude/rules.nested.GNU: added missing
- semicolon at end of last statement. Thanks to Amos
- Shapira <amos@gezernet.co.il> for providing this fix.
-
- * ace/OS.h (VxWorks only): only #include <stdarg.h> before
- <vxWorks.h> for GreenHills. Thanks to Dave Moore
- <dave.moore@gecm.com> for reporting a problem without this
- fix with g++/VxWorks 5.3.1 for PowerPC target.
- Also, commented out g++ string.h hack. It no longer appears
- to be necessary.
-
- * tests/README: added VxWorks 5.3.1 test status.
-
- * tests/SPIPE_Test.cpp (main): fixed #ifdefs so that it compiles.
-
- * ace/OS.i: (strtok_r): replaced NULL with 0. NULL is #defined
- as (void *) 0 on VxWorks, so it causes compile warnings.
- Thanks to Dave Mayerhoefer <davem@lynx.com> for reporting
- this problem.
-
- * ace/Object_Manager.{h,cpp},Makefile: added this class to
- shutdown ACE library services, and reclaim their storage,
- at program termination.
-
- * ace/ACE.cpp: added hook to call ACE_Object_Manager destructor
- in this file. It's in this file so that it's sure to be
- linked in to executables that statically link libACE.a.
-
- * ace/Service_Config.{h,cpp}: (close): delete ACE_STATIC_SVCS
- instance, which is now saved in static_svcs_. Also, removed
- LM_SHUTDOWN call, because the logger apparently gets shutdown
- now with everything else (with ACE_Object_Manager).
-
- * ace/Object_Manager.* (delete_at_exit,delete_array_at_exit):
- made these (inline) static functions, with return values.
-
- * tests/IOStream_Test.cpp (client,server): explicitly destroy
- (and create) ACE_SOCK_IOStream instances, because they don't
- get destroyed on Solaris. They're on the stack of separate
- threads, so maybe the problem is related to not cleaning up
- TSS on Solaris. Thanks to James CE Johnson <jcej@lads.com>
- for some efficient debugging work, and for verifying that the
- original code works properly on Linux.
-
-Mon Jul 28 21:59:09 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/ace.mak: Added file Object_Manager.cpp.
-
- * ace/OS.h: Added #define RTLD_LAZY when
- ACE_HAS_SVR4_DYNAMIC_LINKING and RTLD_LAZY is not defined.
- FreeBSD 2.2.1 "forgot" to put in this definition. Thanks to
- Satoshi Ueno for reporting this.
-
-Mon Jul 28 13:27:21 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
-
- * ace/Object_Manager: Made a few minor stylistic updates.
-
- * netsvcs/servers/main.cpp (main): Updated this test program to
- utilize the new ACE_Service_Object_Ptr class.
-
- * ace/Service_Object.h: Added a new smart pointer call
- ACE_Service_Object_Ptr, which generalizes functionality that was
- previously in the ./netsvcs/server/main.cpp file. Thanks to Wei
- Chiang for this suggestion.
-
- * examples/Threads/process_manager.cpp (parse_args): Removed the
- unused n_processes global variable. Thanks to Amos Shapira for
- reporting this.
-
- * tests/SPIPE_Test.cpp (main): Cleaned up the #ifdef structure
- to remove compiler warnings. Thanks to Amos Shapira for
- this.
-
- * tests/Handle_Set_Test.cpp (test_performance): Removed an unused
- ACE_HANDLE handle definition. Thanks to Amos Shapira for
- reporting this.
-
- * ace/OS.i (sema_init): Swapped else and #endif to avoid
- a compile error when ACE_LACKS_NAMED_POSIX_SEM is false.
- Thanks to Wei Chiang for reporting this.
-
- * ace/OS.cpp (rwlock_init): Added a cast to (const void *) to keep
- certain compilers from complaining. Thanks to Thilo and
- Amos Shapira for reporting this.
-
- * ace/OS.i (sema_wait): *tv should have been &tv. Thanks to Thilo
- for reporting this.
-
-Mon Jul 28 13:57:21 1997 James C Hu <jxh@swarm.cs.wustl.edu>
-
- * ace/config-irix6.4-sgic++.h: Added template specialization #def.
-
-Sun Jul 27 20:47:01 1997 David L. Levine <levine@cs.wustl.edu>
-
- * tests/Handle_Set_Test.cpp: Instantiate templates with
- ACE_HANDLE instead of int.
-
- * examples/IPC_SAP/SPIPE_SAP/NPServer.cpp (main): use
- ACE_OS::fprintf () instead of cerr.
-
-Sun Jul 27 20:10:26 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-
- * ACE version 4.2.24, released Sun Jul 27 20:10:26 1997.
-
-Sun Jul 27 16:03:30 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * tests/Handle_Set_Test.cpp (test_boundaries): Changed class of
- queue from ACE_Unbounded_Queue<int> to
- ACE_Unbounded_Queue<ACE_HANDLE> so it declares the right data
- type.
-
- * ace/Synch.cpp (ACE_Process_Mutex):
- * ace/OS.cpp (rwlock_init):
- * ace/ACE.cpp (unique_name): Memories for placing unique_name are
- now declared using ACE_UNIQUE_NAME_LEN. When calling
- ACE::unique_name, the length is also specified using
- ACE_UNIQUE_NAME_LEN because using "sizeof (buffer)" also caused
- problem if we are using UNICODE.
-
- * ace/OS.h: Added a new directive ACE_UNIQUE_NAME_LEN to specified
- the maximum length of an "unique name."
-
-Sun Jul 27 15:32:08 1997 David L. Levine <levine@cs.wustl.edu>
-
- * tests/Handle_Set_Test.cpp (main): uncommented
- test_duplicates () and test_performance () calls, and added
- ACE_Unbounded_Queue_Iterator<int> specialization.
-
-Sun Jul 27 14:25:33 1997 Douglas C. Schmidt <schmidt@merengue.cs.wustl.edu>
-
- * tests/Handle_Set_Test.cpp (test_boundaries): Added a better test
- to ensure that the ACE_Handle_Set_Iterators are working
- correctly. This works by inserting the handles in a queue and
- then making sure that they are the same values we receive from
- the iterator.
-
- * ace/Handle_Set.i (operator): Fixed a subtle bug in the
- ACE_Handle_Set_Iterator implementation. We need to make
- sure that we increment the handle_index_ to the beginning
- of the next word whenever we've examined all the bits in
- the current word. Thanks to David Levine for noticing this
- problem.
-
-Sun Jul 27 09:06:29 1997 David L. Levine <levine@cs.wustl.edu>
-
- * include/makeinclude/rules.lib.GNU: replaced hard-coded ".so"
- with "$(SOEXT)".
-
- * include/makeinclude/rules.local.GNU: added/completed support
- for "$(SOEXT)", and "$(VSHDIR)" instead of always hard-coding
- them as ".so" and ".shobj/".
-
- * include/makeinclude/wrapper_macros.GNU: added support for
- override of "$(VSHDIR)" in platform_macros.GNU.
-
- * apps/JAWS/clients/{Blobby,Caching}/Makefile,
- apps/JAWS/stress_testing/Makefile,
- apps/Orbix-Examples/Event_Comm/{Consumer,Supplier}/Makefile,
- examples/ASX/Event_Server/Event_Server/Makefile,
- examples/ASX/UPIPE_Event_Server/Makefile,
- examples/Logger/simple-server/Makefile,
- examples/Mem_Map/IO-tests/Makefile,
- examples/Naming/Makefile,
- examples/Reactor/Multicast/Makefile,
- examples/Service_Configurator/Misc/Makefile,
- examples/Shared_Malloc/Makefile:
- replaced hard-coded ".shobj" with "$(VSHDIR)" in LDLIBS definitions.
-
- * include/makeinclude/platform_vxworks5.x_{g++,ghs}.GNU:
- added overrides of .so build rules to change them .o builds.
-
- The above changes allow builds of modules that specify .shobj/*.so
- on VxWorks, by mapping those objects to .obj/*.o.
-
-Sun Jul 27 03:07:35 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/ACE.cpp (unique_name): Added __TEXT macro to the format
- string in sprintf to avoid a nasty problem when using UNICODE on
- NT.
-
-Sat Jul 26 21:12:07 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/ReactorEx.cpp: added a couple of ACE_UNUSED_ARG's.
-
- * examples/Logger/simple-server/Logging_Handler.cpp (handle_input):
- replace use of cerr with stderr (by using default arg of
- ACE_Log_Record::print ()).
-
- * examples/Shared_Malloc/test_multiple_mallocs.cpp (main): use
- ACE_OS::printf () instead of cout.
-
- * examples/Shared_Malloc/test_persistence.cpp: added #include
- of iostream.h with ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION.
-
-Sat Jul 26 15:55:43 1997 <irfan@TWOSTEP>
-
- * ace/Malloc_T.cpp (ACE_Cached_Allocator): Changed (T *) to
- (T*). VC++ did not like the former.
-
- * The entire ACE distribution was updated to use the new singleton
- methods. The old singleton methods in Service_Config have been
- deprecated and users are encouraged not to use these methods
- anymore. It may not be supported in future releases. The
- replacement is the instance() methods in the individual classes.
- For example, ACE_Service_Config::reactor() is replaced by
- ACE_Reactor::instance(). A perl script has been added
- (ACE_wrappers/bin/Service_Config.perl) to allow users to change
- their code over to the new methods.
-
- These changes will hopefully help in reducing the compile-time
- dependencies in ACE source files and allow smaller custom ACE
- libraries to be compiled.
-
- Thanks to Matthias Kerkhoff <make@cs.tu-berlin.de> for making
- these changes.
-
-Sat Jul 26 15:44:45 1997 Douglas C. Schmidt <schmidt@mambo.cs.wustl.edu>
-
- * ace/Malloc_T.cpp (ACE_Cached_Allocator): I think we want to
- say "sizeof (T)" rather than "sizeof (T *)".
-
- * ace/FILE_IO.i (recv_n): There is a minor bug fix to be made in
- FILE_IO.i. The method ACE_FILE_IO::recv_n() should call
- ACE::read_n(), not ACE::recv_n(). Similarly, the method
- ACE_FILE_IO::send_n() should call ACE::write_n(), not
- ACE::send_n(). The functions ::recv() and ::send() are intended
- only for *socket* I/O, and return failure conditions when
- applied to *file* I/O. Thanks to David Brackman
- <dbrackman@OhioEE.com> for reporting this.
-
- * ace: Changed all LOCK names to ACE_LOCK to avoid clashes
- with macros in the KAI C++ compiler. Thanks to Jeff
- R. Hayes <Jeff.Hayes@osi.com> for pointing this out.
-
- * ace/Malloc_T.i: Added ACE_INLINE to some methods that weren't
- getting inlined.
-
- * ace/OS.i: Added an implementation of timed semaphores for the
- POSIX threading APIs. Also cleaned up the return values from
- sema_wait() so that it always returns -1 if an error occurs
- (originally, it was returning -2, which is confusing). Also
- cleaned up the rd_lock() and wr_lock() methods in the same way.
-
-Sat Jul 26 16:00:05 1997 David L. Levine <levine@cs.wustl.edu>
-
- * Malloc_T.cpp (ACE_Cached_Allocator): fixed typo, sizeof (T*)
- instead of sizeof (*T).
-
- * Proactor.cpp (instance): fixed signature in non-WIN32
- version. (run_event_loop): added ACE_UNUSED_ARG (tv).
-
-Fri Jul 25 12:08:47 1997 David L. Levine <levine@cs.wustl.edu>
-
- * ace/OS.[hi]: finished VxWorks (non-POSIX) semaphore implementation.
-
- * ace/Process.cpp (spawn): with GreenHills compiler only (for
- VxWorks), call ACE_NOTSUP_RETURN instead of spawning via execve.
- GreenHills 1.8.8 loses its lunch on the ACE_OS::execve () call.
- Thanks to Dave Mayerhoefer <davem@lynx.com> for reporting
- this problem.
-
- * tests/Mem_Map_Test.cpp (create_test_file): delete array "mybuf"
- to prevent memory leak.
-
- * tests/Message_Queue_Test.cpp (main): delete "buffer"
- elements at end of test to prevent memory leaks.
-
- * performance-tests/Misc/context_switch_time.cpp: use
- ACE_Sched_Params for platform-independent thread priority
- assignment. Also, modified Yield_Test so that only one thread
- writes the test's timer.
-
- * examples/ASX/UPIPE_Event_Server/Peer_Router.cpp (svc):
- replaced an iostream printout with an ACE_DEBUG call.
-
- * examples/ASX/UPIPE_Event_Server/event_server.cpp: added
- #include of iostream.h with ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION.
-
- * examples/IPC_SAP/FILE_SAP/client.cpp: require 2 args instead
- of 1; mask file mode with 0777 (octal); and use
- ACE_OS::printf () instead of cout.
-
-Fri Jul 25 00:46:22 1997 <irfan@TWOSTEP>
-
- * ace/Synch: Added documentation for Condition variables. Thanks
- to Jeff <jmg@trivida.com> for pointing out the lack of
- documentation.
-
-Thu Jul 24 11:48:05 1997 David L. Levine <levine@cs.wustl.edu>
-
- * Makefile,TAO/Makefile: added a filter to exclude backup and
- [.]#* files from releases. Thanks to Carlos O'Ryan
- <coryan@mat.puc.cl> for reporting this problem.
-
- * include/makeinclude/platform_*.GNU: inserted CVS/RCS
- keyword string.
-
- * performance-tests/Misc/basic_perf.cpp (per_iteration):
- added support for ACE_U_LongLong.
-
- * performance-tests/Misc/childbirth_time.cpp:
- (prof_fork,prof_native_thread): added ACE_UNUSED_ARGs
- for unsupported platforms. (prof_ace_os_thread): added
- (ACE_THR_FUNC) cast of first arg to ACE_OS::thr_create () call.
-
- * performance-tests/Misc/test_naming.cpp (find): replaced cerr
- statement with an ACE_DEBUG.
-
- * examples/Misc/test_read_buffer.cpp: replaced bare OS calls
- with ACE_OS calls.
-
-Thu Jul 24 11:35:37 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
-
- * ace/Timer_Heap_T.cpp: Fixed a problem with reschedule()
- corrupting the free list in Timer Heap. Thanks to
- James Crawford <jamesc@in.ot.com.au>, Silvano Peruzzi
- <silvanop@in.ot.com.au>, and Stuart Powell <stuartp@in.ot.com.au>
- for the fix.
-
-Wed Jul 23 23:29:15 1997 <irfan@TWOSTEP>
-
- * ace/Message_Block.cpp (size): Changed the comparison from
- (length < this->max_size_) to (length <= this->max_size_).
- Thanks to Paul <proman@npac.syr.edu> for suggesting this change.
-
-Wed Jul 23 21:54:23 1997 David L. Levine <levine@cs.wustl.edu>
-
- * examples/Shared_Malloc/test_malloc.cpp (spawn): cast argv
- argument to (char *const *) for call to ACE_OS::execv ().
-
-Wed Jul 23 16:40:39 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/ACE.cpp (get_ip_interfaces): ACE'ified codes for NT. UNIX
- part will come later.
-
- * ace/Malloc_T.cpp (ACE_Cached_Allocator): Changed to use raw
- memory allocation method for memory pool.
-
- * ace/OS.h (ACE_TEXT_STRING): Added this #define macro to switch
- between ACE_WString and ACE_CString according to the usage of
- UNICODE.
-
-Wed Jul 23 14:43:11 1997 David L. Levine <levine@cs.wustl.edu>
-
- * tests/Timer_Queue_Test.cpp(main): delete timer_id array at
- the end of the test to avoid a memory leak.
-
-Wed Jul 23 13:40:39 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
-
- * ace/Process.cpp (ACE_Tokenizer::next): Moved checking of string
- termination after checking delimiter and preserve_designator so
- that we can use this class to tokenize multiple null terminated
- strings cascaded together (using \0 as delimitor.) Notice tne
- combined strings must be terminated with two null chars. I need
- to use this class in ACE::get_ip_interfaces.
-
- * ace/Malloc_T.{h,i}: Changed the implementation of
- ACE_Cached_Mem_Pool_Node from using union to a plain pointer.
- This is because some C++ compilers don't allow union member to
- have copy constructor. Thanks to Tim to dig this out.
-
-Wed Jul 23 12:58:04 1997 Steve Huston <shuston@riverace.com>
-
- * ace/CORBA_Ref.cpp: Added #include "ace/Log_Msg.h" to catch the
- ACE_DEBUG macro.