Tue May 16 12:01:56 2000 Darrell Brunsch * ace/Msg_WFMO_Reactor.cpp: * ace/Msg_WFMO_Reactor.h: Applied some patches that Bruce Trask sent for building ACE on Pharlap. * ace/OS.cpp: * ace/OS.h: * ace/Process.cpp: * ace/ace_wchar.h: GetEnvironmentStrings is the only Windows API function that I've seen that doesn't follow the same FuncA/FuncW naming that the rest do. So I added a wrapper in ACE_OS (getenvstrings) and it does the appropriate magic in the .cpp file to get this to work. This only showed up when UNICODE was defined but ACE_USES_WCHAR wasn't. * ace/Process.cpp: Removed a comment that stated that the WinCE version of inherit_environment () was in Process.i. Actually, there isn't a version for CE at all. * tests/CDR_Array_Test.cpp: Updated the test so it works with ACE_USES_WCHAR. Tue May 16 10:02:33 2000 Carlos O'Ryan * tests/CDR_File_Test.cpp: The test was removing the file even when the user requested not to do so. Tue May 16 09:53:19 2000 Carlos O'Ryan * ace/CDR_Stream.i: Change swap_8 again, this time it compiles with -O2 and -O3, using the assembly instructions for full performance. * tests/CDR_Array_Test.cpp: Fixed several problems reported during the last night builds. Mostly template quirks and the ever annoying problems of Sun/CC 4.2 with static_casts * tests/CDR_File_Test.cpp: Don't use ?: operators when the arguments are of different types. Mon May 15 21:00:31 2000 Carlos O'Ryan * ace/CDR_Stream.i: The swap_8 operator was not working when debugging was disabled. Mon May 15 16:06:01 2000 Priyanka Gontla * ace/CORBA_macros.h: Added Support for Exception::_downcast () by modifying _narrow to _downcast (). Thanks to William Horn . Mon May 15 15:49:37 2000 Carlos O'Ryan * bin/run_all_list.pm: Add Connection_Purging to the list. Mon May 15 15:23:27 2000 Ossama Othman The following are primarily consistency related updates. * ace/LSOCK.i (ACE_LSOCK): Initialize "aux_handle_" member to ACE_INVALID_HANDLE in the base member initializer list. * ace/Thread_Manager.i (ACE_At_Thread_Exit): Initialize "next_" member to 0 in the base member initializer list. (ACE_Thread_Descriptor_Base): Initialize "next_" and "prev_" members to 0 in the base member initializer list. Mon May 15 15:14:41 2000 Carlos O'Ryan * ace/CDR_Stream.h: * ace/CDR_Stream.i: * ace/CDR_Stream.cpp: Cristian Ferretti has contributed a number of optimizations to the byte swapping code for CDR streams. The optimizations include loop unrolling for 32-bit and 64-bit architectures, use of especial assembly instructions for x86-based platforms and use of bit operations (instead of memory manipulation) for other processors. * tests/Makefile: * tests/Makefile.am: * tests/Makefile.bor: * tests/run_tests.bat: * tests/run_tests.lst: * tests/run_tests.vxworks: * tests/tests.dsw: * tests/CDR_Array_Test.cpp: * tests/CDR_Array_Test.dsp: * tests/CDR_Array_Test.icc: New test to verify that the array operations in the CDR classes actually work, this is specially critical because the new versions unroll loop, perform assembly instructions that work best when the alignment is right, etc. * tests/CDR_File_Test.cpp: The test was extended. Now we can save a file in one platform and load it (manually) in another platform, to verify that byte swapping actually works. Both tests were contributed by Cristian Ferretti , which is good because all this voodoo programming needs testing. The changes were tested using PA-RISC, Alphas, Sparcs and finally Pentiums in various forms and using several compilers. >>>>>>> 4.507 Mon May 15 14:01:23 2000 Ossama Othman * ace/OS.h: QNX Neutrino has the header, so include it. * ace/config-qnx-neutrino.h: QNX supports the {get,set}rlimit() functions. ACE's autoconf support detected this support. Mon May 15 12:32:05 2000 Ossama Othman * ace/Log_Record.cpp (print): Added a "%s" format specifier to the fprintf() call. This was needed to allow strings containing percent signs '%' to be printed. This problem was inadvertently introduced during some UNICODE related updates. The "%s" format specifier can handle UNICODE strings. Thanks to Edan Ayal for reporting this problem and providing a fix. Mon May 15 10:25:38 2000 Darrell Brunsch * bin/create_vt_dsps.pl: I got tired of creating the version tests for the ACE tests, so why not script it? * tests/version_tests/ACE_Init_Test.dsp: (removed) This test is tricky. It uses MFC, which gets complicated when also using the static version of ACE. Since this is the only test that does this, I just disabled it in the create_vt_dsps.pl. * tests/version_tests/Reactor_Exception_Test.dsp: (removed) * tests/version_tests/Sigset_Op_Test.dsp: (removed) These two were named differently than their parents in tests/, so they have been renamed. * tests/version_tests/Atomic_Op_Test.dsp: * tests/version_tests/Auto_IncDec_Test.dsp: * tests/version_tests/Barrier_Test.dsp: * tests/version_tests/Basic_Types_Test.dsp: * tests/version_tests/Buffer_Stream_Test.dsp: * tests/version_tests/CDR_File_Test.dsp: * tests/version_tests/CDR_Test.dsp: * tests/version_tests/Cache_Map_Manager_Test.dsp: * tests/version_tests/Cached_Accept_Conn_Test.dsp: * tests/version_tests/Cached_Conn_Test.dsp: * tests/version_tests/Capabilities_Test.dsp: * tests/version_tests/Collection_Test.dsp: * tests/version_tests/Conn_Test.dsp: * tests/version_tests/DLL_Test.dsp: * tests/version_tests/DLList_Test.dsp: * tests/version_tests/Dynamic_Priority_Test.dsp: * tests/version_tests/Enum_Interfaces_Test.dsp: * tests/version_tests/Env_Value_Test.dsp: * tests/version_tests/Future_Set_Test.dsp: * tests/version_tests/Future_Test.dsp: * tests/version_tests/Handle_Set_Test.dsp: * tests/version_tests/Hash_Map_Bucket_Iterator_Test.dsp: * tests/version_tests/Hash_Map_Manager_Test.dsp: * tests/version_tests/High_Res_Timer_Test.dsp: * tests/version_tests/IOStream_Test.dsp: * tests/version_tests/Lazy_Map_Manager_Test.dsp: * tests/version_tests/MM_Shared_Memory_Test.dsp: * tests/version_tests/MT_Reactor_Timer_Test.dsp: * tests/version_tests/MT_SOCK_Test.dsp: * tests/version_tests/Malloc_Test.dsp: * tests/version_tests/Map_Manager_Test.dsp: * tests/version_tests/Map_Test.dsp: * tests/version_tests/Mem_Map_Test.dsp: * tests/version_tests/Message_Block_Test.dsp: * tests/version_tests/Message_Queue_Notifications_Test.dsp: * tests/version_tests/Message_Queue_Test.dsp: * tests/version_tests/Naming_Test.dsp: * tests/version_tests/New_Fail_Test.dsp: * tests/version_tests/Notify_Performance_Test.dsp: * tests/version_tests/Object_Manager_Test.dsp: * tests/version_tests/OrdMultiSet_Test.dsp: * tests/version_tests/Pipe_Test.dsp: * tests/version_tests/Priority_Buffer_Test.dsp: * tests/version_tests/Priority_Reactor_Test.dsp: * tests/version_tests/Priority_Task_Test.dsp: * tests/version_tests/Process_Manager_Test.dsp: * tests/version_tests/Process_Mutex_Test.dsp: * tests/version_tests/Process_Strategy_Test.dsp: * tests/version_tests/RB_Tree_Test.dsp: * tests/version_tests/Reactor_Notify_Test.dsp: * tests/version_tests/Reactor_Performance_Test.dsp: * tests/version_tests/Reactor_Timer_Test.dsp: * tests/version_tests/Reactors_Test.dsp: * tests/version_tests/Reader_Writer_Test.dsp: * tests/version_tests/Recursive_Mutex_Test.dsp: * tests/version_tests/Reverse_Lock_Test.dsp: * tests/version_tests/SOCK_Connector_Test.dsp: * tests/version_tests/SOCK_Send_Recv_Test.dsp: * tests/version_tests/SOCK_Test.dsp: * tests/version_tests/SPIPE_Test.dsp: * tests/version_tests/SString_Test.dsp: * tests/version_tests/SV_Shared_Memory_Test.dsp: * tests/version_tests/Semaphore_Test.dsp: * tests/version_tests/Service_Config_Test.dsp: * tests/version_tests/Simple_Message_Block_Test.dsp: * tests/version_tests/Svc_Handler_Test.dsp: * tests/version_tests/TSS_Test.dsp: * tests/version_tests/Task_Test.dsp: * tests/version_tests/Thread_Manager_Test.dsp: * tests/version_tests/Thread_Mutex_Test.dsp: * tests/version_tests/Thread_Pool_Reactor_Test.dsp: * tests/version_tests/Thread_Pool_Test.dsp: * tests/version_tests/Time_Service_Test.dsp: * tests/version_tests/Time_Value_Test.dsp: * tests/version_tests/Timeprobe_Test.dsp: * tests/version_tests/Timer_Queue_Test.dsp: * tests/version_tests/Tokens_Test.dsp: * tests/version_tests/UPIPE_SAP_Test.dsp: * tests/version_tests/Upgradable_RW_Test.dsp: * tests/version_tests/version_tests.dsw: * tests/version_tests/Reactor_Exceptions_Test.dsp: (added) * tests/version_tests/Sigset_Ops_Test.dsp: (added) These files were regenerated. Mon May 15 12:28:32 2000 Aviad Eden * ace/Object_Manager.h: In the paragraph that describes the behavior of ::exit function (starting with the words "NOTE on the use of ::exit --"). The first sentence states that using ::exit "does not destroy static objects" while it should be "does not destroy automatic objects". Mon May 15 12:25:59 2000 David L. Levine * ace/OS.i (thr_join): removed comments about possible implementation using ::taskSafe ()/::taskUnsafe () on VxWorks. Join functionality is better implemented in the Thread_Manager. Thanks to Umar for asking about this comment. Mon May 15 09:09:49 2000 Darrell Brunsch * ace/Local_Name_Space_T.cpp: * ace/Remote_Name_Space.cpp: * netsvcs/lib/Name_Handler.cpp: Changed my use of ACE_Auto_Array_Ptr for ACE_USHORT16 to ACE_Auto_Basic_Array_Ptr. Thanks to Andy Gokhale for reporting this. Mon May 15 08:31:13 2000 Darrell Brunsch * ace/streams.h: Undid the commenting out of #include for ACE_USES_OLD_IOSTREAMS. It had previously been commented out because of a problem with Qt. A better solution would be to not include it only when ACE is used with Qt. This problem was showing up with Explicit_Event_Loop. Sun May 14 12:43:35 2000 Darrell Brunsch (On behalf of Christopher Kohlhoff ) * ace/Makefile.bor: * include/makeinclude/ace_flags.bor: Added new file, moved ACE_BUILD_DLL macro into ACE library's makefile. Thanks also to Mogens Hansen . * include/makeinclude/recurse.bor: Arguments like -i should now be propogated with makefile recursion Sun May 14 12:19:41 2000 Darrell Brunsch * bin/msvc_auto_compile.pl: Added a -TAO option to specify that the TAO subdirectory should be compiled. Sat May 13 19:05:23 2000 Darrell Brunsch * ace/SString.cpp: Forgot to add a base member initialization for the allocator in the new ACE_USHORT16 constructor for ACE_WString. Thanks to Chris Kohlhoff for noticeing this. Sat May 13 19:07:32 2000 Nanbor Wang * ace/config-kcc-common.h: Added ACE_HAS_STRING_CLASS. This fixed the IOStream_Test. Sat May 13 13:01:08 2000 Darrell Brunsch * tests/SString_Test.cpp: So yesterday I changed a type from ACE_USHORT16 to wchar_t. Rather, it should have been ACE_WSTRING_TYPE. Sat May 13 01:06:22 2000 Darrell Brunsch * ace/Local_Name_Space_T.cpp: * ace/Remote_Name_Space.cpp: SunCC 5 didn't like the template instantiations in the Local_Name_Space_T file, so I moved them to Remote_Name_Space.cpp. Fri May 12 17:48:17 2000 Darrell Brunsch * bin/generate_export_file.pl: Found a new way to write this script using map and a __DATA__ block. Fri May 12 17:52:22 2000 Nanbor Wang * ace/OS.cpp (ACE_Thread_Adapter::invoke): Reverted James' previous change for now. It's causing problem with MSVC. Fri May 12 15:04:58 2000 Carlos O'Ryan * bin/run_all_list.pm: * bin/auto_compile_win32.pl: Updated to include the new TAO test. Fri May 12 11:25:10 2000 Darrell Brunsch * ace/Basic_Types.h: Didn't understand at first why ACE_SIZEOF_WCHAR wasn't defined to just "sizeof (wchar_t)". So I changed it, but now I realize that this will not work if ACE_SIZEOF_WCHAR is used in a #if. Bleh. Since wchar_t is always different, I just defined it as 2 for WIN32 and 0 for others (so the tests/Basic_Types_Test will catch it). [Bug 560] * ace/ACE.cpp: Chris Kohlhoff reported that Borland didn't like "sizeof wchar_t", but adding parenthesis worked. Applied this patch, and changed the cast to an ACE_static_cast. [Bug 560] * ace/High_Res_Timer.cpp: Borland was giving some warnings here since a const method was calling this->global_scale_factor (), which is a static method. Changed it to ACE_High_Res_Timer::global_scale_factor () and things compiled cleanly. * ace/config-win32-borland.h: * ace/README: * ace/SString.cpp: * ace/SString.h: * ace/Local_Name_Space_T.cpp: * ace/Remote_Name_Space.cpp: * netsvcs/lib/Name_Handler.cpp: On Borland BCB 5, wchar_t is (correctly) a separate type than unsigned short, so all the implicit casting between the two in the ACE Name Space. So added a new macro, ACE_WSTRING_HAS_USHORT_SUPPORT, that enables another constructor for ACE_WString. Chris Kohlhoff also reported this problem and a solution, but unfortunately ACE_Name_Space requires that this type is 2 bytes so we couldn't just use ACE_WSTRING_TYPE here. Instead I added in both the new constructor and a ushort_rep method on ACE_WString. I changed the Name Space stuff to use this instead. BTW, old code shouldn't need to be changed on MSVC, just if you use BCB. [Bug 561] * tests/SString_Test.cpp: We were using ACE_USHORT16 as the single character type for ACE_WString. This has been changed to wchar_t. Thanks to Chris for this one also. [Bug 561] Fri May 12 10:12:05 2000 James Hu * ace/OS.cpp (ACE_Thread_Adapter::invoke): If the TSS instance of the ACE_Thread_Exit class fails to create, the application will crash. The new code will detect the failure, and use an instance created off the stack if it happens. This mimics how ACE does it in the case of platforms that do not support TSS. Thu May 11 18:07:53 2000 Chris Cleeland * ace/OS.i (malloc): Bug 566. * ace/OS.i (realloc): * ace/OS.i (calloc): * ace/OS.i (free): Use the new macros (below) instead of directly calling malloc-like functions, thereby allowing an installation to substitute an alternate mallocator for the global (see comment for OS.h below). * ace/OS.i (strdup): Changed the emulation of strdup() to use ACE_OS::malloc() rather than ::malloc(). * ace/OS.h: Added the four macros ACE_MALLOC_FUNC, ACE_CALLOC_FUNC, ACE_REALLOC_FUNC, and ACE_FREE_FUNC which default to the names of the global ::malloc, ::calloc, ::realloc and ::free. Using this, a site can define these in their config.h in order to substitute an alternate malloc-like allocator. Thu May 11 17:23:14 2000 Jeff Parsons * ace/ace_dll.dsp: Removed non-existent file Configuration.i from project. Thu May 11 15:21:34 2000 Darrell Brunsch * ace/OS.i (dlsym): I was checking for ACE_HAS_WIN32 instead of ACE_WIN32, so this wasn't doing what it was supposed to with ACE_USES_WCHAR turned on. Thu May 11 02:04:58 2000 Irfan Pyarali * ace/OS.h * ace/OS.cpp * ace/SOCK_Stream.h * ace/SOCK_Stream.i * ace/TLI_Stream.h * ace/TLI_Stream.i * ace/ACE.cpp * ace/ACE.h * ace/ACE.i In order to make the return values of recv_n() and send_n() match the return values of recv() and send(), the following changes were made to the interface: old interface: static ssize_t recv_n (ACE_HANDLE handle, void *buf, size_t len, const ACE_Time_Value *timeout = 0, int error_on_eof = 1); new interface: static ssize_t recv_n (ACE_HANDLE handle, void *buf, size_t len, const ACE_Time_Value *timeout = 0, size_t *bytes_transferred = 0); Return value are: - On complete transfer, is returned. - On timeout, -1 is returned, errno == ETIME. - On error, -1 is returned, errno is set to appropriate error. - On EOF, 0 is returned, errno is irrelevant. On partial transfers, i.e., if any data is transferred before timeout/error/EOF, will contain the number of bytes transferred. These return values now close match the return values from the non "_n" methods. Thanks to Douglas Schmidt, Chris Cleeland, Steve Huston, James Hu, and Rich Seibel for helping out! Thu May 11 01:59:10 2000 Irfan Pyarali * ace/Pipe.cpp: Reader and writer handles were being left open when there was an error in ACE_Pipe::open(). This fixes bug 549. Thanks to Rick Ohnemus for reporting this bug and providing patches. Wed May 10 18:36:58 2000 Carlos O'Ryan * THANKS: Add a new contributor * bin/msvc_auto_compile.pl: * bin/auto_compile_win32.pl: Upgraded to use the new libraries in orbsvcs. Tue May 9 20:02:41 2000 Darrell Brunsch * ace/Asynch_Acceptor.cpp: Was still including "Asynch_Acceptor.i" which has been removed. * apps/JAWS2/JAWS/Cache_Manager_T.cpp: Removed iostream.h include here. This is not good since ACE already includes it, and ACE might already include , which is incompatible with . * examples/Reactor/WFMO_Reactor/test_talker.cpp: Looks like the constructor to Proactor was changed, but this test didn't get changed also. Removed one of the arguments being passed to it. * websvcs/lib/websvcs_export.h: Regenerated it. It seems like I changed the websvcs library based on what I thought was in this file. This didn't work, since I was assuming that ACE_WEBSVCS_HAS_DLL was automatically defined (and older versions of these export files did not do that). * apps/JAWS/server/HTTP_Helpers.cpp: * examples/Shared_Malloc/test_malloc.cpp: Changed empty ;'s in if statements to {} to remove warnings. * bin/msvc_auto_compile.pl: Added a -u option that tells the script to pass the /USEENV flag to msdev when it runs. Added a -ACE option that tells the script just to compile the ACE directories. Changed -core to -CORE to be consistent with -ACE (and the upcoming -TAO). * apps/Gateway/Gateway/Gateway.dsp: * apps/Gateway/Gateway/gatewayd.dsp: * apps/Gateway/Peer/Peer.dsp: * apps/Gateway/Peer/peerd.dsp: * apps/JAWS/clients/Caching/Caching.dsp: * apps/JAWS/server/jaws.dsp: * apps/JAWS2/server.dsp: * apps/JAWS2/HTTPU/HTTPU.DSP: * apps/JAWS2/HTTPU/HTTPU.DSW: * apps/JAWS2/JAWS/jaws.dsp: * examples/ASX/Event_Server/Event_Server/Event_Server.dsp: * examples/ASX/Event_Server/Transceiver/transceiver.dsp: * examples/ASX/Message_Queue/Bounded_Buffer.dsp: * examples/ASX/Message_Queue/Buffer_Stream.dsp: * examples/ASX/Message_Queue/Priority_Buffer.dsp: * examples/ASX/UPIPE_Event_Server/UPIPE_Event_Server.dsp: * examples/Bounded_Packet_Relay/Bounded_Packet_Relay.dsp: * examples/Configuration/Test.dsp: * examples/Connection/blocking/SPIPE.dsp: * examples/Connection/blocking/acceptor.dsp: * examples/Connection/non_blocking/non_blocking.dsp: * examples/Connection/non_blocking/server.dsp: * examples/IPC_SAP/ATM_SAP/CPP_client.dsp: * examples/IPC_SAP/ATM_SAP/CPP_server.dsp: * examples/IPC_SAP/SOCK_SAP/CPP_inclient.dsp: * examples/IPC_SAP/SOCK_SAP/CPP_inserver.dsp: * examples/IPC_SAP/SOCK_SAP/CPP_memclient.dsp: * examples/IPC_SAP/SOCK_SAP/CPP_memserver.dsp: * examples/IPC_SAP/SOCK_SAP/C_inserver.dsp: * examples/IPC_SAP/SOCK_SAP/SOCK_SAP.dsp: * examples/Log_Msg/Callback.dsp: * examples/Log_Msg/Log_Msg.dsp: * examples/Log_Msg/Ostream.dsp: * examples/Logger/Acceptor-server/server_loggerd.dsp: * examples/Mem_Map/file-reverse/file_reverse.dsp: * examples/Naming/Naming.dsp: * examples/Naming/multiple_contexts.dsp: * examples/Naming/non_existent.dsp: * examples/OS/Process/Process.dsp: * examples/OS/Process/imore.dsp: * examples/QOS/client.dsp: * examples/QOS/server.dsp: * examples/Reactor/Dgram/CODgram.dsp: * examples/Reactor/Dgram/Dgram.dsp: * examples/Reactor/Misc/Misc.dsp: * examples/Reactor/Misc/demuxing.dsp: * examples/Reactor/Misc/early_timeouts.dsp: * examples/Reactor/Misc/notification.dsp: * examples/Reactor/Misc/reactors.dsp: * examples/Reactor/Misc/signals_1.dsp: * examples/Reactor/Misc/signals_2.dsp: * examples/Reactor/Ntalker/ntalker.dsp: * examples/Reactor/Proactor/post_completions.dsp: * examples/Reactor/Proactor/test_cancel.dsp: * examples/Reactor/Proactor/test_end_event_loop.dsp: * examples/Reactor/Proactor/test_multiple_loops.dsp: * examples/Reactor/Proactor/test_proactor.dsp: * examples/Reactor/Proactor/test_timeout.dsp: * examples/Reactor/WFMO_Reactor/Handle_Close.dsp: * examples/Registry/Registry.dsp: * examples/Registry/update.dsp: * examples/Service_Configurator/Misc/Timer.dsp: * examples/Service_Configurator/Misc/main.dsp: * examples/Shared_Malloc/malloc.dsp: * examples/Shared_Malloc/multiple_mallocs.dsp: * examples/Shared_Malloc/persistence.dsp: * examples/Shared_Malloc/position_independent_malloc.dsp: * examples/Web_Crawler/Web_Crawler.dsp: * performance-tests/Misc/basic_perf.dsp: * performance-tests/Misc/childbirth_time.dsp: * performance-tests/Misc/context_switch_time.dsp: * performance-tests/Misc/test_mutex.dsp: * performance-tests/Misc/test_naming.dsp: * performance-tests/Misc/test_singleton.dsp: * performance-tests/Server_Concurrency/Leader_Follower/Leader_Follower.dsp: * performance-tests/Server_Concurrency/Queue_Based_Workers/Queue_Based_Workers.dsp: * performance-tests/TCP/TCP.dsp: While testing the -ACE flag in msvc_auto_compile, I found that there were many dsps that were either creating precompiled headers, didn't have the correct include paths, or even weren't in the CRLF format. Fixed them up. * apps/JAWS/clients/Caching/testing.dsp: * performance-tests/Synch-Benchmarks/Synch_Tests.dsp: These project files didn't look like they are used anymore, so I removed them. Tue May 9 17:38:47 2000 Carlos O'Ryan * bin/auto_compile_win32.pl: Include the new library used in the RT CORBA tests. Tue May 9 09:01:24 2000 Darrell Brunsch * examples/Export/README: (added) * examples/Export/dll.cpp: (added) * examples/Export/dll.h: (added) * examples/Export/export_dll.dsp: (added) * examples/Export/export_test.dsw: (added) * examples/Export/run_test.pl: (added) * examples/Export/test.cpp: (added) * examples/Export/test.dsp: (added) * examples/Export/test_export.h: (added) The export example is an example of how to use the ACE_Export type macros for DLLs. Mon May 8 14:37:32 2000 Douglas C. Schmidt * ace/Task.h: Cleaned up the documentation so that it will work correctly with class2man. Thanks to Charlie Duke for reporting this. Mon May 08 22:56:28 2000 Carlos O'Ryan * ACE version 5.1.2 released. Mon May 8 11:02:49 2000 Darrell Brunsch * docs/CE-status.txt: I will not get a chance to update this before the beta, so I just put in a note mentioning that it is out of date and will be updated next time. Mon May 8 12:30:15 2000 Nanbor Wang * include/makeinclude/platform_sunos5_kcc.GNU: Added "--once_instantiation_per_object" flag for both compiler and linker to avoid some warnings about duplicate symbol definitions. Sun May 7 19:50:21 2000 Darrell Brunsch * include/makeinclude/platform_sunos5_sunc++.GNU: Undid Doug's change on "Wed May 3 18:07:16 2000". The fix wasn't working in our SUNCC 5 builds. Sat May 6 17:49:01 2000 Darrell Brunsch * ace/Log_Msg.h: * ace/Log_Msg.cpp: Changed the signature of log_priority_enabled to have both the char * and wchar_t * versions when using ACE_USES_WCHAR. The reason why this has to be done is because of ACE_HEX_DUMP. ACE_HEX_DUMP calls both log_priority_enabled and log_hexdump, and it doesn't make sense to change the signature of log_hexdump. If it were to take in a wchar_t buffer, it should print the entire wchar_t. But if we have a buffer that is a char *, then it doesn't make sense to convert it to a wchar_t * buffer, since it adds all those extra bytes that would show up with hexdump. And now that we have 3 versions of this method which do the same things, I changed the ones that is used by the macros to call the one that just takes in the priority. An extra function call, but if that is a problem, then they can be inlined. Sat May 6 19:33:49 2000 Nanbor Wang * include/makeinclude/platform_freebsd.GNU: Removed definition BIN_TRUE. It's no longer used. Thu May 4 14:53:45 2000 Darrell Brunsch * ace/config-all.h: * ace/config-win32-common.h: * bin/generate_export_file.pl: Changed the ACE_EXPORT_SINGLETON_DECLARE and ACE_IMPORT_SINGLETON_DECLARE to take in arguments, but this time it takes in 3, the singleton type, the class, and then the lock. So we have: ACE_EXPORT_SINGLETON_DECLARE (ACE_Singleton, foo, ACE_Null_Mutex); Thu May 4 13:59:58 2000 Darrell Brunsch * ace/config-all.h: * ace/config-win32-common.h: Added two new macros, ACE_EXPORT_SINGLETON_DECLARE and ACE_IMPORT_SINGLETON_DECLARE. They do the same thing as the *_DECLARATION macros except they do not take arguments. So instead of ACE_EXPORT_SINGLETON_DECLARATION (foo); you use ACE_EXPORT_SINGLETON_DECLARE foo; This was needed since foo may be a template, and if so, the comma that can be between multiple arguments causes problems. * bin/generate_export_file.pl: Now creates the above DECLARE macros in addition to the rest. Thu May 4 14:47:09 2000 Nanbor Wang * include/makeinclude/platform_freebsd.GNU: Defined BIN_TRUE as /usr/bin/true. Wed May 3 19:35:48 2000 Carlos O'Ryan * ace/Log_Msg.cpp: The implementation of the log_priority_enabled function did not match its declaration. Wed May 3 17:21:50 2000 Darrell Brunsch * ace/config-win32-common.h: After many reports of not having _MT defined (and then not quite knowing what to do about it), I felt we needed a bit more descriptive error and comment. * docs/ACE-FMM.html: * docs/ACE-bug-process.html: * docs/ACE-development-process.html: * docs/ACE-guidelines.html: * docs/ACE-lessons.html: * docs/ACE-porting.html: * docs/ACE-subsets.html: * docs/exceptions.html: * docs/index.html: (added) * docs/usage-bugzilla.html: Added an index for the files in this directory. Added backlinks to the other files. Wed May 3 18:07:16 2000 Douglas C. Schmidt * ace/Malloc_T (memory_pool): Found another bug with SunC++ 5.0... Moved the ACE_Allocator_Adapter::protect() into the Malloc_T.cpp file. Wed May 3 17:16:12 2000 Ossama Othman * ace/Log_Msg.h (log_priority_enabled): Corrected use of "ASYS_TCHAR." "ACE_TCHAR" should be used instead. Wed May 3 18:07:16 2000 Douglas C. Schmidt * ace/Log_Msg: Added the new log_priority_enabled() method. Thanks to Ossama for reporting this ;-). * include/makeinclude/platform_sunos5_sunc++.GNU (CC_VERSION): The keywords to check if the version if greater than 5 is "C++" on Solaris, not "Compilers." Thanks to Rick Weisner for reporting this. Wed May 3 15:08:03 2000 Nanbor Wang * include/makeinclude/platform_freebsd.GNU: Changed to set versioned_so only when building on version 2 of FreeBSD. Thanks to Henrik Kai for pointing this out. Wed May 3 12:31:32 2000 Ossama Othman * ace/Makefile.am (INLINE_FILES): Removed deprecated inline files from the list. Wed May 3 11:59:14 2000 Carlos O'Ryan * include/makeinclude/macros.GNU: * include/makeinclude/rules.common.GNU: * include/makeinclude/rules.local.GNU: New target that recusively builds all the IDL generated files. Wed May 3 11:43:05 2000 Douglas C. Schmidt * ace/Log_Msg.h: Only call set() in the ACE_{ERROR,DEBUG} macros if the log_priority_enabled() is non-0, which avoids making unecessary strcpy() calls. Thanks to Ganesh Pai for reporting this. * ace/Timer_Queue_Adapters (schedule): Make sure to pass the act to the schedule() method. Also, updated the header file so that it explains that interval timers aren't implemented. Thanks to Umar Syyid for reporting these. Wed May 3 09:49:57 2000 Jeff Parsons * ace/Caching_Utility_T.cpp: * ace/Map.cpp: * ace/Pair.cpp: * ace/Svc_Handler.cpp: * ace/Win32_Asynch_IO.cpp: * ace/Win32_Proactor.cpp: * ace/ace_dll.dsp: * ace/ace_lib.dsp: Removed inclusion of non-existent .i files from corresponding .cpp files and from the project files. Tue May 2 19:33:57 2000 Douglas C. Schmidt * Updated all the dependencies. * ace: Removed all the following files because they were empty and yet were being #included into various other *.h files, which slowed down compilation unnnecessarily! Thanks to Espen Harlinn for reporting this. * ace/Acceptor.i * ace/WIN32_Proactor.i: * ace/WIN32_Asynch_IO.i: * ace/Token_Invariants.i: * ace/TLI_Acceptor.i: * ace/Svc_Handler.i: * ace/Proactor.i: * ace/Stream_Modules.i: * ace/Select_Reactor.i: * ace/Map.i: * ace/Priority_Reactor.i: * ace/Pair.i: * ace/Hash_Map_Manager.i: * ace/LSOCK_Acceptor.i * ace/CORBA_Ref.i: * ace/Configuration.i: * ace/Connector.i: * ace/Cleanup_Strategies_T.i; * ace/SPIPE_Acceptor.i: * ace/Trace.i: * ace/Log_Msg.i: * ace/IO_Cntl_Msg.i: * ace/Dynamic_Service.i: * ace/Caching_Utility_T.i: * ace/Cached_Connect_Strategy_T.i: * ace/Asynch_IO.i: * ace/Asynch_Acceptor.i: * ace/OS.i (readdir_r): Apparently the GNU compiler on DEC UNIX defines a macro for readdir_r() that was breaking things. Therefore, we #ifdef for that! Thanks to Jean-Marc Strauss for reporting this. Tue May 2 12:48:00 2000 Carlos O'Ryan * bin/g++dep: Use `pwd` instead of $PWD to get the currenct directory because some shell don't get that one right. Tue May 02 13:51:21 2000 David L. Levine * bin/create_ace_build: updated comments at top to reflect the fact that dead symlinks are removed when run on an existing build tree. Tue May 2 10:24:10 2000 Darrell Brunsch * bin/auto_compile_win32.pl: Fixed a couple of release configurations that were out of date. Tue May 2 10:05:21 2000 Darrell Brunsch * websvcs/lib/URL_Addr.cpp: * websvcs/lib/URL_Addr.h: * websvcs/lib/URL_Addr.i: * websvcs/lib/websvcs.dsp: The changes to the new wchar style wasn't completely correct, and I missed quite a few LPCTSTRs in the .i file. Also corrected my earlier attempt at doing the export stuff the "right way". Also changed the use of the variable passwd to password. passwd is also used as a structure so it confused MSVC when used in the FTP class constructor Tue May 2 09:34:31 2000 Steve Huston * tests/SOCK_Send_Recv_Test.cpp: Fix signed/unsigned warnings. Mon May 1 16:51:07 2000 Darrell Brunsch * bin/msvc_auto_compile.pl: Now gets the current directory for the default of ACE_ROOT instead of using ".". Also only tries compiling files ending with dsp, not just ones with .dsp in their name (like *.dsp.bak). Finally, added a print_status options (-s) that will output status messages to STDERR, so you can see how much far it has progressed when you are redirecting stdout to a file. Mon May 01 12:41:39 2000 Irfan Pyarali * ace/Hash_Map_Manager_T.cpp (close_i): Restored freeing of the table memory which had been mistakenly removed. Thanks to David for pointing this out. Mon May 1 10:27:48 2000 Darrell Brunsch * bin/auto_compile_win32.pl: Some minor changes that should make the Win32 builds clean ( which I want to see once before bugging Nanbor to switch to my script :-) ) Mon May 01 02:06:02 2000 Nanbor Wang * ace/Malloc_T.cpp (avail_chunks): Changed to use do-while loop to go over all freelist when calculating the avail_chunks to make sure all nodes in the freelist are accounted for. doesn't always point to the anchoring Malloc_Header in the control block. Thanks to Ivan Murphy for reporting the problem. Also we must reduce the header size count by one when calculating the avail_chunks because each returning allocated memory chunk takes at least two Malloc_Header's. This change made the result of more realistic. * ace/Malloc.h: Added more documentation explaining how Malloc_T works. Sun Apr 30 23:20:00 2000 Darrell Brunsch * ace/SString.h: SunCC 5 had problems with ACE_TString when it was typdefed, but not when it was #defined. * ace/ace_wchar.h: Noticed I was including tchar.h still, which is no longer necessary since ACE's use of wchar_t is separate from tchar.h's. Sat Apr 29 20:02:39 2000 Ossama Othman * bin/autoconf_compile (BUILD_LIST): Remove TAO from the build list. It's autoconf support hasn't been fully integrated yet. Sat Apr 29 19:45:41 2000 Ossama Othman * netsvcs/lib/Log_Message_Receiver.cpp (attach, detach): Fixed warning that occured when ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES was not defined. Use ACE_GUARD{_RETURN} macro instead of naked ACE_Guard. Sat Apr 29 19:17:25 2000 Ossama Othman * ace-dll.icc: * ace_dll.dsp: * ace_lib.dsp: These files still referred to the deprecated `inc_user_config.h' header. The header is now called `config-all.h'. Sat Apr 29 19:09:00 2000 Ossama Othman * ace/QoS_Manager.h: Moved inclusion of one of the ACE headers prior to the check for ACE_LACKS_PRAGMA_ONCE. The definition of ACE_LACKS_PRAGMA_ONCE wasn't pulled before the check, so it ended up being defined twice. Sat Apr 29 16:15:29 2000 Ossama Othman * bin/autoconf_compile: * bin/autoconf_compile_wrapper: The ACE+autoconf counterparts to the auto_compile* scripts. These scripts are used to run automatic builds of the ACE's autoconf support. Sat Apr 29 15:59:53 2000 Ossama Othman * ace/Makefile.am (HEADER_FILES): Removed `inc_user_config.h' from the list of headers. It no longer exists. Added `config-all.h', `ACE_export.h' and `svc_export.h' to the list of headers. Sat Apr 29 17:13:55 2000 Vishal Kachroo * ace/Makefile.am: Added the SOCK_Dgram_Mcast_QoS.{cpp,h,i} Sat Apr 29 14:49:13 2000 Darrell Brunsch * examples/DLL/Newsweek.dsp: * examples/Threads/barrier1.dsp: * examples/Threads/barrier2.dsp: * examples/Threads/cancel.dsp: * examples/Threads/future1.dsp: * examples/Threads/future2.dsp: * examples/Threads/manual_event.dsp: * examples/Threads/process_mutex.dsp: * examples/Threads/process_semaphore.dsp: * examples/Threads/reader_writer.dsp: * examples/Threads/recursive_mutex.dsp: * examples/Threads/task_five.dsp: * examples/Threads/task_four.dsp: * examples/Threads/task_one.dsp: * examples/Threads/task_three.dsp: * examples/Threads/task_two.dsp: * examples/Threads/test.dsp: * examples/Threads/thread_manager.dsp: * examples/Threads/thread_pool.dsp: * examples/Threads/thread_specific.dsp: * examples/Threads/token.dsp: * examples/Threads/tss1.dsp: * examples/Threads/tss2.dsp: * examples/Timer_Queue/Async_Timer_Queue_Test.dsp: * examples/Timer_Queue/Reactor_Timer_Queue_Test.dsp: * examples/Timer_Queue/Thread_Timer_Queue_Test.dsp: * examples/Web_Crawler/Web_Crawler.dsp: * performance-tests/Synch-Benchmarks/synch_driver.dsp: * performance-tests/Synch-Benchmarks/Base_Test/Base_Test.dsp: * performance-tests/Synch-Benchmarks/Perf_Test/Perf_Test.dsp: * performance-tests/Synch-Benchmarks/Synch_Lib/Synch_Lib.dsp: * websvcs/lib/websvcs.dsp: * websvcs/tests/Test_URL_Addr.dsp: I started to test out my msvc_auto_compile.pl script and after testing it for the whole thing, found out that I soon ran out of disk space. By the time I ran out of space, the PCH files made up 3 GB of disk. So I removed them from these projects. Sat Apr 29 14:15:12 2000 Darrell Brunsch * bin/clean_dsp.pl: Was still some bugs in this script. In general, beware of using it. There is no guarantess that it does or ever will work. * ace/ace_dll.dsp: * ace/ace_lib.dsp: Having said that, I went and used it on these project files anyway. Reduced their size by a good 50%. * ace/ace_dll_ce.dsp: Made the x86 emulation release configuration build correctly by ingoring default libraries. Also cleaned this dsp, which had an improvement of 98%. Sat Apr 29 13:20:11 2000 Darrell Brunsch * apps/drwho/PMS_All.cpp: * apps/drwho/PMS_Ruser.cpp: Was still using some ACE::strecpy, changed to ACE_OS::strecpy. Fri Apr 28 21:30:46 2000 Darrell Brunsch * bin/msvc_auto_compile.pl: Fixed the build core logic to work correctly when more than one configuration is specified. * bin/vc_filter.pl: Now ignores the LINK4089 warnings. We haven't quite figured out how to fix them yet. Fri Apr 28 21:11:32 2000 Darrell Brunsch * bin/clean_dsp.pl: (added) This script should clean out excess baggage from DSP files. Fri Apr 28 13:11:20 2000 Ossama Othman * include/makeinclude/platform_linux_lxpthread.GNU: * include/makeinclude/platform_linux_lxpthreads.GNU: Renamed `platform_linux_lxpthread.GNU' to platform_linux_lxpthreads.GNU to be consistent with the name of its corresponding config header `config-linux-lxpthreads.h'. Thanks to Ken Weinert for reporting this. `platform_linux_lxpthread.GNU' now includes the newly renamed file for backward compatibility. Fri Apr 28 11:54:21 2000 Douglas C. Schmidt * ace/SString.cpp: Fixed the delimiter_replace() method so that it actually does what it's comment implies... Thanks to Martin Krumpolec for reporting this. Thu Apr 27 18:19:19 2000 James Hu * ace/Dirent.i: Added checks to see if dirp_ is initialized before calling into ACE_OS. Thu Apr 27 16:53:49 2000 Irfan Pyarali * ace/Hash_Map_Manager_T.cpp (unbind_all_i): Added new method unbind_all() for removing all the entries in one shot. Thanks to Boris Sukholitko for providing this enhancement. * tests/Hash_Map_Manager_Test.cpp: Added test for unbind_all(). Thu Apr 27 14:17:52 2000 Darrell Brunsch * ace/OS.i: isatty (): Messed up on my CE change, so the version that takes an int was hidden by a ACE_WIN32 block. This has been moved outside again. * ace/OS.cpp: Weird, somehow part of a section that should have been removed with the CE changes was still present. Removed again. Thu Apr 27 13:08:00 2000 Darrell Brunsch * bin/msvc_auto_compile.pl: Changed the code style and made it consistent. Also changed the core build to build all of the orbsvcs and do the static builds in the right order. * ace/OS.cpp: * ace/OS.i: For some reason, I had trouble with the libraries when the ACE_Cleanup destructor was in the .i file. So I moved it to the .cpp file instead. * ace/ace_dll.dsp: Was defining ACE_ACE_HAS_DLL=1, which is #1, not needed and, #2, the wrong macro name. * ace/ace_lib.dsp: Changed the static configs to be of type Win32 Static Release/ Debug instead of Win32 Release/Debug. * apps/gperf/src/gperf.dsp: * apps/gperf/src/gperf_lib.dsp: Added Win32 Static Release/Debug configs. Thu Apr 27 14:32:45 2000 Douglas C. Schmidt * ACE-INSTALL (make): Updated the documentation. Thanks to Ken Weinert for reporting this. Thu Apr 27 12:41:42 2000 James C. Hu * ace/OS.i: * ace/OS.cpp: * ace/config-freebsd-pthread.h: * ace/README: Removed ACE_HAS_TIME_R in favor of using existing mechanism of ACE_HAS_REENTRANT_FUNCTIONS, and then adding ACE_LACKS_NETDB_REENTRANT_FUNCTIONS and also ACE_LACKS_PWD_REENTRANT_FUNCTIONS. Created a new lacks called ACE_LACKS_RAND_REENTRANT_FUNCTIONS to match the previous two. FreeBSD can now use its native *time_r functions. Thu Apr 27 10:55:11 2000 Darrell Brunsch These changes bring the Windows CE port up to date. It currently supports Windows CE 2.11 on the H/PC Pro. I am looking into the 2.11 P/PC port, but there are other problems with it still. Hopefully the WinCE 3.0 SDK will be more mature. * ace/ace_dll_ce.dsp: (added) * ace/ace_ce_dll.dsp: (removed) * ace/ace_ce.dsw: Created a new dsp file from scratch from CE to see how the toolkit sets up the projects. Removed the old one. * ace/ACE.cpp: format_hexdump (): Changed usage of isprint to ACE_OS::ace_isprint. get_ip_interfaces (): Changed use of deprecated ACE_TEXT_STRING to ACE_TString. Also added an ACE_TEXT_CHAR_TO_TCHAR to a use of the ACE_INET_Addr constructor. * ace/ARGV.cpp: create_buf_from_queue (): We were not adjusting the size of a ACE_TCHAR buffer by sizeof ACE_TCHAR when we did a memcopy. Thanks to Valery Arkhangorodsky for reporting this. * ace/Memory_Pool.cpp: seh_selector (): Changed use of LPEXCEPTION_POINTERS to EXCEPTION_POINTERS * since it seems like that definition is missing in some WinCE configs. * ace/ace_wchar.h: Added deprecated definition of ACE_TEXT_STRING. convert (): Changed the conversions from CharToOem to MultiByteToWideChar, since it is more widely supported in Win32. Also removed the loading of user32.lib since it was only needed for CharToOem. * ace/config-win32-common.h: Changed the _MT check so it doesn't do anything on CE. Some CE targets do not have the Multithreaded DLL generation option. * ace/config-WinCE.h: Changed ACE_DEFAULT_LD_SEARCH_PATH to use ACE_TEXT. Added a define for ACE_HAS_WCHAR and a check to always define ACE_USES_WCHAR. Commented out the ACE_HAS_MFC check. Defined FILE, since it seems to be missing from CE 2.11 H/PC Pro. Added a definition for EXCEPTION_ACCESS_VIOLATION that was in older SDK's. Removed some UNDER_CE < 2.11 defines. < 2.11 CE will not be supported anymore. Removed definition of is_print, since it was moved into ACE_OS. Added a definition for the operator placement new, which is missing when MFC isn't used. * ace/OS.h: Enabled is_atty for Windows CE. Added ace_isprint and made ace_isspace an ACE_TCHAR method. * ace/OS.i: chdir (): NOTSUP on CE 2.11 tempnam (): Also NOTSUP on CE 2.11 abort (): changed ::exit to exit to get it to compile. ace_isspace (): Changed to use ACE_TCHAR, but also made it NOTSUP on CE 2.11. ace_isprint (): Added, but NOTSUP on CE 2.11. sema_init (): Needed to cast an void *arg to ACE_mutexattr_t. dlsym (): Changed the way ACE declares symbolname so it uses the right one on Win32 (WinNT always uses char *, CE always uses wchar_t *). The function still takes in ACE_TCHAR * though. Thanks to Jeff Greif for reporting this. Removed a few global function definitions that were just for CE (like fwrite, fread, getc, etc.). These are either supported in newer CE's or is disabled in the ACE_OS methods. is_atty (): Enabled on CE. * ace/OS.cpp: Enabled fopen on CE by using _wfopen (but not sure if this will work correctly, since on other Win32 platforms we have a lot more stuff. Enabled several printf methods on CE. open (): Removed the use of FILE_SHARE_DELETE on CE. * ace/Service_Config.i: initialize (): Added an ACE_TEXT_CHAR_TO_TCHAR and replaced an ACE_WIDE_STRING with it also. * ace/Svc_Conf.h: * ace/Svc_Conf.y: * ace/Svc_Conf_y.cpp: ace_yyerror (): Takes an ACE_TCHAR * instead of char * now. Thanks to Valery Arkhangorodsky for also reporting this. * ace/Svc_Conf.l: * ace/Svc_Conf_l.cpp: Changed to use ACE_OS::isatty () and ACE_OS::ace_isprint. Thu Apr 27 11:49:52 2000 Douglas C. Schmidt * ace/OS.i (memchr): Do not cast away constness when emulating memchr(). Thanks to Rick Ohnemus for reporting this. * ace/Select_Reactor_Base.cpp (open): The notification pipe handlers created by the ACE_Select_Reactor_Notify::open were being left open after fork() and exec(). Thanks to Rick Ohnemus for reporting this. Wed Apr 26 23:47:31 2000 Douglas C. Schmidt * ace/Process_Manager.cpp (open): Make sure that the dummy I/O handle is not inherited by child processes. Thanks to Rick Ohnemus for reporting this. Wed Apr 26 20:32:59 2000 James C. Hu * ace/OS.cpp: * ace/OS.i: * ace/README: * ace/config-freebsd-pthread.h: Added a new define ACE_HAS_TIME_R. FreeBSD supports *time_r() calls, but not gethostbyname_r, so a new feature specification was needed to get these functions into ACE_OS. Wed Apr 26 12:21:16 2000 Steve Huston * ace/ACE.cpp (send_n_i (ACE_HANDLE, const void *, size_t, int) and send_n_i (ACE_HANDLE, const void *, size_t): If the send fails with EWOULDBLOCK, wait for the handle to become writeable again before retrying the send. Thanks to Edan Ayal for reporting this. * tests/SOCK_Send_Recv_Test.cpp: Added test 3 for send_n to verify fix for writing to nonblocking handle. Wed Apr 26 08:43:21 2000 Darrell Brunsch * apps/drwho/PMC_Flo.cpp: * apps/drwho/PMC_Usr.cpp: * apps/drwho/PMS_All.cpp: * apps/drwho/PMS_Flo.cpp: * apps/drwho/PMS_Ruser.cpp: * apps/drwho/PMS_Usr.cpp: Was still using ACE::strecpy, changed to ACE_OS::strecpy. Tue Apr 25 15:11:41 2000 Carlos O'Ryan * THANKS: Add new member to the list. Tue Apr 25 11:35:07 2000 Darrell Brunsch * ace/Local_Name_Space.cpp: The hash function was using the wrong length of the USHORT16 string representation. The len_ actually is the length in bytes, not characters. Tue Apr 25 08:57:59 2000 Darrell Brunsch * ASNMP/tests/test_config.h: Was using XXX_A and XXX_W macros which really do not make sense anymore. Removed them and replaced with just the XXX macro which uses ACE_TEXT. * examples/Naming/test_multiple_contexts.cpp: * examples/Naming/test_non_existent.cpp: * examples/Naming/test_writers.cpp: * performance-tests/Misc/test_naming.cpp: * tests/Naming_Test.cpp: * tests/SString_Test.cpp: All of these were still being disabled when ACE_HAS_WCHAR wasn't defined. Since the naming stuff was changed to work without ACE_HAS_WCHAR, these were reenabled. Tue Apr 25 00:02:08 2000 Douglas C. Schmidt * ace/Log_Msg.h (ACE_Log_Msg): Split msg_ostream() into two functions, one of which allows the delete_ostream_ flag to be reset and the other that doesn't. Thanks to Boris Sukholitko for reporting this. * ace/Message_Block.i (replace_data_block): If a data block is replaced with a NULL pointer then don't bother doing certain operations! Thanks to Boris Sukholitko for reporting this. * ace/OS.i (dlerror): Changed sizeof buf to sizeof buf / sizeof buf[0] to avoid over-allocating a buffer in the ACE_TEXT_FormateMessage() function. Thanks to Valery Arkhangorodsky for reporting this. * ace/Service_Repository.cpp: The fini() method was claiming it was the close() method. Likewise, changed the close() method so that it keeps decrementing the current_size each time through the look to allow checking the respository size or doing other work from inside the fini() call. Thanks to Valery Arkhangorodsky for reporting this. Mon Apr 24 17:44:21 2000 Darrell Brunsch * ace/Object_Manager.cpp: Ai Carumba! I disabled some stuff here a while back when I first disabled the Naming Service, but forgot to enable it again once I fixed that. Mon Apr 24 16:44:22 2000 Darrell Brunsch * ace/SString.i: A couple of compilers were having problems with some casting I was doing in a const hash method. Changed the types of casts to hopefully make the compilers happy. Mon Apr 24 10:04:51 2000 Darrell Brunsch * ace/OS.cpp: Another problem with a missing parenthesis. Mon Apr 24 09:15:03 2000 Darrell Brunsch * ace/OS.i: Forgot a couple of ')'s that showed up on Lynx builds. Also, ACE_const_char doesn't exist, ACE_const_cast does. Sun Apr 23 19:51:41 2000 Darrell Brunsch * ace/ACE.cpp: * ace/Naming_Context.cpp: * ace/SOCK_Dgram_Mcast_QoS.cpp: Just tried the ACE_USES_WCHAR build and there were a couple of things that needed updating. Mainly some missing ACE_TEXT's or char's used instead of ACE_TCHAR's. * tests/Process_Mutex_Test.cpp: Was still using an old ACE_DEFAULT_MUTEX_A macro (updated to ACE_DEFAULT_MUTEX). * ace/ace_lib.dsp: Added "static" to the config names (Win32 Debug => Win32 Static Debug) so it is easier for the msvc_auto_compile.pl script to figure out which is which. Sun Apr 23 18:14:33 2000 Darrell Brunsch * ace/ace_wchar.h: Added compatibility for all the old ASYS_* macros by default. But no part of ACE/TAO should still use them anymore. This compatibility can be turned off by defining ACE_ONLY_LATEST_AND_GREATEST. * ace/SString.cpp: * ace/SString.h: * ace/SString.i: * ace/Local_Name_Space.cpp: * ace/Local_Name_Space.h: * ace/Local_Name_Space_T.h: * ace/Name_Space.cpp: * ace/Name_Space.h: * ace/Naming_Context.cpp: * ace/Naming_Context.h: * ace/Remote_Name_Space.cpp: * ace/Remote_Name_Space.h: Found a better way of support for the ACE_Name_Space classes when there isn't a wchar_t. We now define the ACE_WString to internally use a type called ACE_WSTRING_TYPE, which is defined to wchar_t unless ACE_USES_WCHAR is not defined (in which case it is defined to ACE_USHORT16). Sun Apr 23 14:27:11 2000 Darrell Brunsch * ace/CLASSIX/CLASSIX_Port.cpp: * tests/IOStream_Test.cpp: * tests/SOCK_Connector_Test.cpp: Found some old ASYS macros still hanging around in code that wasn't enabled on NT. Sat Apr 22 22:01:15 2000 Darrell Brunsch * ace/Local_Name_Space_T.cpp: * ace/Naming_Context.cpp: Fixed some wchar related changes. Sat Apr 22 20:53:11 2000 Darrell Brunsch This is my first checkin of my Unicode changes. They should be mostly harmless, since most platforms and build do not use Unicode stuff, in which these changes *should* result in the exact same behavior as before. But, if Unicode was being used, then chances are it is not going to work without a few changes. A summary of the changes are: - Standardized wide char support to the following macros: ACE_HAS_WCHAR - if not defined, ACE will not use the type wchar_t or provide any of the functions that use it. ACE_USES_WCHAR - if defined, ACE will use wchar_t instead of char for its strings (but not its buffers). This support has been mostly completed, but there are still some loose ends that need to be cleaned up. Note also that even if ACE_USES_WCHAR is defined or not, both wide and narrow versions of the string operations will be available. - Removed all the ASYS_* macros (besides ASYS_INLINE). So all code using ASYS_TEXT and ASYS_TCHAR should now use ACE_TEXT and ACE_TCHAR. And unlike their predecessers, these *will* turn into wide character versions when ACE_USES_WCHAR is defined. - Removed the macros ACE_HAS_WCHAR_TYPEDEFS_USHORT and ACE_HAS_WCHAR_TYPEDEFS_CHAR since ACE will not depend on what wchar_t defaults to. - Messed around with Windows CE support, most likely it broke it even more. I've halted my work on Windows CE until after this change, so I'll be fixing it up in upcoming checkins. - Since ACE_WString was changed, everything using it will now not be available when ACE_HAS_WCHAR is not defined. The motivation for this change was that the Unicode support was a mess and was very unintuitive. Since I was given the job of maintaining it (since I'm doing Windows CE stuff now), I decided to fix it instead of try to figure out what was currently happening. A consistent design is much easier to explain and maintain. * ace/ACE.h: * ace/ACE.i: * ace/ACE.cpp: * ace/ARGV.cpp: Removed ACE's strecpy since all it did was call ACE_OS's strecpy. * ace/ace_wchar.h: (added) Moved all the unicode specific stuff here. * ace/SString.cpp: * ace/SString.h: * ace/SString.i: ACE_WString used to use ACE_USHORT16 instead of wchar_t. I changed it so it does, since it will be more useful and intuitive this way. * ace/Log_Record.cpp: We were using ACE_OS::fwrite to print the string. This didn't work when the string was wchar_t, so this was changed to ACE_OS::fprintf instead. * TODO: * acconfig.h: * configure.in: * ace/ACE.cpp: * ace/ACE.h: * ace/ACE.i: * ace/ARGV.cpp: * ace/ARGV.h: * ace/ARGV.i: * ace/ATM_Addr.cpp: * ace/ATM_Addr.h: * ace/ATM_Connector.i: * ace/ATM_QoS.cpp: * ace/Acceptor.cpp: * ace/Acceptor.h: * ace/Activation_Queue.cpp: * ace/Addr.cpp: * ace/Arg_Shifter.cpp: * ace/Arg_Shifter.h: * ace/Asynch_Acceptor.cpp: * ace/Asynch_IO.cpp: * ace/Based_Pointer_T.cpp: * ace/Basic_Types.h: * ace/CORBA_Handler.cpp: * ace/Cache_Map_Manager_T.cpp: * ace/Cached_Connect_Strategy_T.cpp: * ace/Caching_Strategies_T.i: * ace/Capabilities.cpp: * ace/Capabilities.h: * ace/Capabilities.i: * ace/Configuration.cpp: * ace/Configuration.h: * ace/Connector.cpp: * ace/Connector.h: * ace/Containers_T.cpp: * ace/DEV_Addr.cpp: * ace/DEV_Addr.h: * ace/DEV_Addr.i: * ace/DEV_Connector.i: * ace/DLL.cpp: * ace/DLL.h: * ace/Dirent.h: * ace/Dirent.i: * ace/Dynamic_Service.cpp: * ace/Dynamic_Service.h: * ace/Env_Value_T.h: * ace/Env_Value_T.i: * ace/FIFO.cpp: * ace/FIFO.h: * ace/FIFO.i: * ace/FIFO_Recv.cpp: * ace/FIFO_Recv.h: * ace/FIFO_Recv_Msg.cpp: * ace/FIFO_Recv_Msg.h: * ace/FIFO_Send.cpp: * ace/FIFO_Send.h: * ace/FIFO_Send_Msg.cpp: * ace/FIFO_Send_Msg.h: * ace/FILE_Addr.cpp: * ace/FILE_Addr.h: * ace/FILE_Addr.i: * ace/FILE_Connector.cpp: * ace/FILE_Connector.i: * ace/Filecache.cpp: * ace/Filecache.h: * ace/Functor.h: * ace/Functor.i: * ace/Future.cpp: * ace/Get_Opt.cpp: * ace/Get_Opt.h: * ace/Handle_Set.cpp: * ace/Hash_Map_Manager_T.cpp: * ace/Hash_Map_Manager_T.i: * ace/High_Res_Timer.cpp: * ace/High_Res_Timer.h: * ace/INET_Addr.cpp: * ace/INET_Addr.h: * ace/INET_Addr.i: * ace/IO_SAP.cpp: * ace/IPC_SAP.cpp: * ace/LSOCK.cpp: * ace/LSOCK_CODgram.cpp: * ace/LSOCK_Connector.cpp: * ace/LSOCK_Dgram.cpp: * ace/Local_Name_Space.cpp: * ace/Local_Name_Space.h: * ace/Local_Name_Space_T.cpp: * ace/Local_Name_Space_T.h: * ace/Local_Tokens.cpp: * ace/Local_Tokens.h: * ace/Local_Tokens.i: * ace/Log_Msg.cpp: * ace/Log_Msg.h: * ace/Log_Record.cpp: * ace/Log_Record.h: * ace/Log_Record.i: * ace/MEM_Acceptor.cpp: * ace/MEM_Acceptor.h: * ace/MEM_Acceptor.i: * ace/MEM_Addr.cpp: * ace/MEM_Addr.h: * ace/MEM_Addr.i: * ace/MEM_Connector.cpp: * ace/MEM_SAP.cpp: * ace/MEM_SAP.h: * ace/Malloc.cpp: * ace/Malloc_T.cpp: * ace/Malloc_T.h: * ace/Malloc_T.i: * ace/Map_Manager.cpp: * ace/Map_Manager.i: * ace/Mem_Map.cpp: * ace/Mem_Map.h: * ace/Mem_Map.i: * ace/Memory_Pool.cpp: * ace/Memory_Pool.h: * ace/Message_Block.cpp: * ace/Message_Queue.cpp: * ace/Message_Queue_T.cpp: * ace/Module.cpp: * ace/Module.h: * ace/Module.i: * ace/NT_Service.cpp: * ace/NT_Service.h: * ace/NT_Service.i: * ace/Name_Proxy.cpp: * ace/Name_Request_Reply.cpp: * ace/Name_Space.cpp: * ace/Name_Space.h: * ace/Naming_Context.cpp: * ace/Naming_Context.h: * ace/OS.cpp: * ace/OS.h: * ace/OS.i: * ace/Object_Manager.cpp: * ace/Obstack.cpp: * ace/Obstack.h: * ace/POSIX_Asynch_IO.cpp: * ace/Parse_Node.cpp: * ace/Parse_Node.h: * ace/Pipe.cpp: * ace/Proactor.cpp: * ace/Process.cpp: * ace/Process.h: * ace/Process.i: * ace/Process_Manager.cpp: * ace/QoS_Manager.cpp: * ace/QoS_Session_Factory.cpp: * ace/QoS_Session_Impl.cpp: * ace/RB_Tree.cpp: * ace/RB_Tree.i: * ace/README: * ace/Read_Buffer.cpp: * ace/Registry.cpp: * ace/Registry.h: * ace/Registry_Name_Space.cpp: * ace/Remote_Name_Space.cpp: * ace/Remote_Name_Space.h: * ace/Remote_Tokens.cpp: * ace/Remote_Tokens.h: * ace/Remote_Tokens.i: * ace/SOCK.cpp: * ace/SOCK_Acceptor.cpp: * ace/SOCK_CODgram.cpp: * ace/SOCK_Connector.cpp: * ace/SOCK_Dgram.cpp: * ace/SOCK_Dgram_Bcast.cpp: * ace/SOCK_Dgram_Bcast.h: * ace/SOCK_Dgram_Mcast.cpp: * ace/SOCK_Dgram_Mcast.h: * ace/SOCK_Dgram_Mcast_QoS.cpp: * ace/SOCK_Dgram_Mcast_QoS.h: * ace/SPIPE_Acceptor.cpp: * ace/SPIPE_Addr.cpp: * ace/SPIPE_Addr.h: * ace/SPIPE_Addr.i: * ace/SPIPE_Connector.cpp: * ace/SString.cpp: * ace/SString.h: * ace/SString.i: * ace/SV_Message_Queue.cpp: * ace/SV_Semaphore_Complex.cpp: * ace/SV_Semaphore_Simple.cpp: * ace/SV_Shared_Memory.cpp: * ace/Select_Reactor_Base.cpp: * ace/Select_Reactor_T.cpp: * ace/Service_Config.cpp: * ace/Service_Config.h: * ace/Service_Config.i: * ace/Service_Manager.cpp: * ace/Service_Manager.h: * ace/Service_Object.cpp: * ace/Service_Object.h: * ace/Service_Object.i: * ace/Service_Repository.cpp: * ace/Service_Repository.h: * ace/Service_Types.cpp: * ace/Service_Types.h: * ace/Service_Types.i: * ace/Shared_Memory_MM.cpp: * ace/Shared_Memory_MM.h: * ace/Shared_Memory_MM.i: * ace/Shared_Object.cpp: * ace/Shared_Object.h: * ace/Singleton.cpp: * ace/Stats.cpp: * ace/Stats.h: * ace/Stats.i: * ace/Strategies_T.cpp: * ace/Strategies_T.i: * ace/Stream.cpp: * ace/Stream.h: * ace/Stream_Modules.cpp: * ace/Stream_Modules.h: * ace/Svc_Conf.h: * ace/Svc_Conf.l: * ace/Svc_Conf.y: * ace/Svc_Conf_l.cpp: * ace/Svc_Conf_y.cpp: * ace/Svc_Handler.cpp: * ace/Svc_Handler.h: * ace/Synch.cpp: * ace/Synch.h: * ace/Synch.i: * ace/Synch_T.cpp: * ace/Synch_T.h: * ace/Synch_T.i: * ace/System_Time.cpp: * ace/System_Time.h: * ace/TLI.cpp: * ace/TLI_Acceptor.cpp: * ace/TLI_Connector.i: * ace/TP_Reactor.cpp: * ace/TP_Reactor.i: * ace/Task_T.cpp: * ace/Task_T.h: * ace/Template_Instantiations.cpp: * ace/Thread_Manager.cpp: * ace/Time_Request_Reply.cpp: * ace/Timeprobe_T.cpp: * ace/Timer_Hash_T.cpp: * ace/Timer_Heap_T.cpp: * ace/Timer_List_T.cpp: * ace/Timer_Queue_Adapters.cpp: * ace/Timer_Queue_T.cpp: * ace/Timer_Wheel_T.cpp: * ace/Token.cpp: * ace/Token.h: * ace/Token_Collection.cpp: * ace/Token_Collection.h: * ace/Token_Collection.i: * ace/Token_Invariants.cpp: * ace/Token_Invariants.h: * ace/Token_Manager.cpp: * ace/Token_Manager.h: * ace/Token_Request_Reply.cpp: * ace/Token_Request_Reply.h: * ace/Token_Request_Reply.i: * ace/Trace.cpp: * ace/Trace.h: * ace/UPIPE_Acceptor.cpp: * ace/UPIPE_Connector.cpp: * ace/UPIPE_Connector.i: * ace/WFMO_Reactor.cpp: * ace/WFMO_Reactor.i: * ace/WIN32_Asynch_IO.cpp: * ace/WIN32_Proactor.cpp: * ace/XTI_ATM_Mcast.i: * ace/config-WinCE.h: * ace/config-all.h: * ace/config-ghs-common.h: * ace/config-tandem.h: * ace/config-win32-borland.h: * ace/config-win32-common.h: * ace/config-win32-msvc.h: * ace/config-win32-visualage.h: * ace/CLASSIX/CLASSIX_CLD_Connector.cpp: * ace/CLASSIX/CLASSIX_CO_Acceptor.cpp: * ace/CLASSIX/CLASSIX_Port.cpp: * ace/CLASSIX/CLASSIX_Port.h: * ace/CLASSIX/CLASSIX_Select_Reactor.cpp: * apps/Gateway/Gateway/Options.cpp: * apps/JAWS/PROTOTYPE/JAWS/JAWS.h: * bin/envinfo.cpp: * docs/ACE-guidelines.html: * docs/tutorials/Chap_3/mm.cpp: * examples/Connection/blocking/SPIPE-acceptor.cpp: * examples/Connection/blocking/SPIPE-acceptor.h: * examples/Connection/blocking/SPIPE-connector.cpp: * examples/Connection/blocking/SPIPE-connector.h: * examples/Connection/non_blocking/test_lsock_acceptor.cpp: * examples/Connection/non_blocking/test_lsock_connector.cpp: * examples/IPC_SAP/ATM_SAP/CPP-client.cpp: * examples/IPC_SAP/ATM_SAP/CPP-server.cpp: * examples/IPC_SAP/SOCK_SAP/CPP-inclient.cpp: * examples/IPC_SAP/SOCK_SAP/CPP-inserver-fancy.cpp: * examples/IPC_SAP/SOCK_SAP/CPP-inserver.cpp: * examples/IPC_SAP/UPIPE_SAP/ex3.cpp: * examples/Naming/test_multiple_contexts.cpp: * examples/Naming/test_non_existent.cpp: * examples/Naming/test_writers.cpp: * examples/Reactor/WFMO_Reactor/test_console_input.cpp: * examples/Reactor/WFMO_Reactor/test_directory_changes.cpp: * examples/Reactor/WFMO_Reactor/test_handle_close.cpp: * examples/Reactor/WFMO_Reactor/test_registry_changes.cpp: * examples/Registry/test_registry_iterator.cpp: * examples/Service_Configurator/Misc/Timer_Service.cpp: * examples/Service_Configurator/Misc/Timer_Service.h: * examples/Service_Configurator/Misc/main.cpp: * examples/Service_Configurator/Misc/main.dsp: * examples/Web_Crawler/Options.cpp: * examples/Web_Crawler/Options.h: * examples/Web_Crawler/URL_Addr.cpp: * examples/Web_Crawler/URL_Addr.h: * netsvcs/clients/Logger/indirect_logging.cpp: * netsvcs/clients/Naming/Client/main.cpp: * netsvcs/lib/Logging_Strategy.cpp: * netsvcs/lib/TS_Clerk_Handler.cpp: * netsvcs/lib/TS_Clerk_Handler.h: * performance-tests/Misc/test_naming.cpp: * performance-tests/Server_Concurrency/Leader_Follower/leader_follower.cpp: * performance-tests/Server_Concurrency/Queue_Based_Workers/workers.cpp: * performance-tests/TCP/tcp_test.cpp: * tests/ACE_Init_Test.dsp: * tests/ARGV_Test.cpp: * tests/Atomic_Op_Test.cpp: * tests/Auto_IncDec_Test.cpp: * tests/Barrier_Test.cpp: * tests/Basic_Types_Test.cpp: * tests/Buffer_Stream_Test.cpp: * tests/CDR_File_Test.cpp: * tests/CDR_Test.cpp: * tests/Cache_Map_Manager_Test.cpp: * tests/Cached_Accept_Conn_Test.cpp: * tests/Cached_Conn_Test.cpp: * tests/Capabilities_Test.cpp: * tests/Collection_Test.cpp: * tests/Conn_Test.cpp: * tests/DLL_Test.cpp: * tests/DLL_Test.h: * tests/DLList_Test.cpp: * tests/Dynamic_Priority_Test.cpp: * tests/Enum_Interfaces_Test.cpp: * tests/Env_Value_Test.cpp: * tests/FlReactor_Test.cpp: * tests/Future_Set_Test.cpp: * tests/Future_Test.cpp: * tests/Handle_Set_Test.cpp: * tests/Hash_Map_Bucket_Iterator_Test.cpp: * tests/Hash_Map_Manager_Test.cpp: * tests/High_Res_Timer_Test.cpp: * tests/IOStream_Test.cpp: * tests/Lazy_Map_Manager_Test.cpp: * tests/Log_Msg_Test.cpp: * tests/MM_Shared_Memory_Test.cpp: * tests/MT_Reactor_Timer_Test.cpp: * tests/MT_SOCK_Test.cpp: * tests/Malloc_Test.cpp: * tests/Map_Manager_Test.cpp: * tests/Map_Test.cpp: * tests/Mem_Map_Test.cpp: * tests/Message_Block_Test.cpp: * tests/Message_Queue_Notifications_Test.cpp: * tests/Message_Queue_Test.cpp: * tests/Naming_Test.cpp: * tests/New_Fail_Test.cpp: * tests/Notify_Performance_Test.cpp: * tests/Object_Manager_Test.cpp: * tests/OrdMultiSet_Test.cpp: * tests/Pipe_Test.cpp: * tests/Priority_Buffer_Test.cpp: * tests/Priority_Reactor_Test.cpp: * tests/Priority_Task_Test.cpp: * tests/Process_Manager_Test.cpp: * tests/Process_Mutex_Test.cpp: * tests/Process_Strategy_Test.cpp: * tests/Process_Strategy_Test.h: * tests/RB_Tree_Test.cpp: * tests/Reactor_Exceptions_Test.cpp: * tests/Reactor_Notify_Test.cpp: * tests/Reactor_Performance_Test.cpp: * tests/Reactor_Timer_Test.cpp: * tests/Reactors_Test.cpp: * tests/Reader_Writer_Test.cpp: * tests/Recursive_Mutex_Test.cpp: * tests/Reverse_Lock_Test.cpp: * tests/SOCK_Connector_Test.cpp: * tests/SOCK_Send_Recv_Test.cpp: * tests/SOCK_Test.cpp: * tests/SPIPE_Test.cpp: * tests/SString_Test.cpp: * tests/SV_Shared_Memory_Test.cpp: * tests/Semaphore_Test.cpp: * tests/Service_Config_Test.cpp: * tests/Signal_Test.cpp: * tests/Sigset_Ops_Test.cpp: * tests/Simple_Message_Block_Test.cpp: * tests/Svc_Handler_Test.cpp: * tests/TSS_Test.cpp: * tests/Task_Test.cpp: * tests/Thread_Manager_Test.cpp: * tests/Thread_Mutex_Test.cpp: * tests/Thread_Pool_Reactor_Test.cpp: * tests/Thread_Pool_Test.cpp: * tests/Time_Service_Test.cpp: * tests/Time_Value_Test.cpp: * tests/Timeprobe_Test.cpp: * tests/Timer_Queue_Test.cpp: * tests/TkReactor_Test.cpp: * tests/Tokens_Test.cpp: * tests/UPIPE_SAP_Test.cpp: * tests/Upgradable_RW_Test.cpp: * tests/XtReactor_Test.cpp: * tests/test_config.h: * websvcs/lib/URL_Addr.cpp: * websvcs/lib/URL_Addr.h: * websvcs/lib/URL_Addr.i: * websvcs/tests/Test_URL_Addr.cpp: Made all the appropriate changes to support the new wide char policy. Most changes were macro changes, changing ASYS_* to ACE_*, changing char's to ACE_TCHAR's, adding in ACE_TEXT ()'s when necessary, etc. Sat Apr 22 18:41:06 2000 Vishal Kachroo * ace/SOCK_Dgram_Mcast.h: * ace/SOCK_Dgram_Mcast.cpp: * ace/SOCK_Dgram_Mcast.i: Removed the QoS enabled overloaded methods. * ace/SOCK_Dgram_Mcast_QoS.h: * ace/SOCK_Dgram_Mcast_QoS.cpp: * ace/SOCK_Dgram_Mcast_QoS.i: Added this new class that derives from ACE_SOCK_Dgram_Mcast and handles all the QoS functionality that was being done by the latter. * ace/ace_dll.dsp: * ace/ace_lib.dsp: Added the ace/SOCK_Dgram_Mcast_QoS.{cpp,i,h} Fri Apr 21 10:23:19 2000 Darrell Brunsch * bin/msvc_auto_compile.pl: Removed all chdir's and fixed a bug with specifying multiple -dir's. Fri Apr 21 09:13:20 2000 Carlos O'Ryan * websvcs/lib/URL_Addr.cpp: The URL schemes are supposed to be case insensitive, thanks to Paul Carreiro for pointing this out. Thu Apr 20 21:05:42 2000 Darrell Brunsch * bin/msvc_auto_compile.pl: Added a -core for only the core libraries. Also fixed a problem with specifying incorrect directories and the -DLL/-Debug/etc. macros. Thu Apr 20 18:11:48 2000 Darrell Brunsch * examples/DLL/Main.dsp: * examples/DLL/Newsweek.dsp: * examples/DLL/Today.dsp * examples/Configuration/Configuration.dsw: * examples/Bounded_Packet_Relay/Bounded_Packet_Relay.dsp: * examples/Configuration/Test.dsp: * examples/IPC_SAP/ATM_SAP/ATM_SAP.dsw: * examples/IPC_SAP/ATM_SAP/CPP_client.dsp: * examples/IPC_SAP/ATM_SAP/CPP_server.dsp: * examples/IPC_SAP/SOCK_SAP/CPP_memclient.dsp: * examples/Mem_Map/file-reverse/file_reverse.dsp: * examples/NT_Service/NT_Service.dsp: * examples/NT_Service/NT_Service.dsw: * examples/OS/Process/Process.dsp: * examples/OS/Process/imore.dsp: * examples/QOS/client.dsp: * examples/QOS/server.dsp: * examples/Reactor/Misc/demuxing.dsp: * examples/Reactor/Multicast/client.dsp: * examples/Reactor/Multicast/server.dsp: * examples/Service_Configurator/Misc/Timer.dsp: * examples/Service_Configurator/Misc/main.dsp: * examples/Timer_Queue/Async_Timer_Queue_Test.dsp: * examples/Timer_Queue/Reactor_Timer_Queue_Test.dsp: * examples/Timer_Queue/Thread_Timer_Queue_Test.dsp: * examples/Timer_Queue/Timer_Queue.dsw: * examples/Web_Crawler/Web_Crawler.dsp: Fixed miscellaneous problems with these projects and workspaces. Some projects were missing from workspaces or listed incorrectly. Many project didn't have the correct include paths or definitions. * examples/Reactor/Proactor/post_completion.dsp: (removed) There was already a post_completions.dsp that was being used. * examples/OS/Process/imore.cpp: * examples/OS/Process/process.cpp: Changed the type of the variables used with Process::wait from int to ACE_exitcode. * examples/Reactor/WFMO_Reactor/test_abandoned.cpp: * examples/Reactor/WFMO_Reactor/test_apc.cpp: Missing parentheses. * Synch-Benchmarks/Synch_Lib/Synch_Lib.dsp: Changed the name of the project so win32_auto_compile.pl works with it properly. * bin/msvc_auto_compile.pl: (added) This is a new script for autocompiling with MSVC 6. Eventually this should replace auto_compile_win32.pl. It still needs more directories added to it and tested before we put it into production * bin/vc_filter.pl: Updated to properly color code output from msvc_auto_compile.pl also. Thu Apr 20 09:50:49 2000 Carlos O'Ryan * ace/RB_Tree.h: * ace/RB_Tree.i: Fixed implementation of the end() method. It should return a singular iterator that is different from all valid iterator, not an iterator pointing to the last element in the collection. Thu Apr 20 08:53:31 2000 Carlos O'Ryan * ace/CDR_Stream.i: Fixed problem in the align_write_ptr() method. It was optimized for the case where there was enough room in the current buffer, but the optimization broke with a previous fix from Feb 29. Thu Apr 20 08:40:00 2000 Chris Gill * examples/Bounded_Packet_Relay/BPR_Drivers_T.h, examples/Bounded_Packet_Relay/Thread_Bounded_Packet_Relay.cpp: Fixed warnings from g++ Wed Apr 19 21:53:52 2000 Douglas C. Schmidt * examples/Bounded_Packet_Relay: Added some missing template instantiations and other assorted problems. Thanks to Aoxiang Xu for reporting these. Wed Apr 19 07:04:13 2000 Douglas C. Schmidt * ace/Containers_T.cpp (copy_nodes): insert_head() should have been insert_tail(). Thanks to Umar Syyid for clarifying this. Also, added some comments to explain what's going on in insert_tail() since the code was somewhat non-intuitive ;-). Wed Apr 19 15:00:44 2000 Carlos O'Ryan * apps/Makefile: * apps/drwho/Makefile: * performance-tests/Makefile: * performance-tests/Server_Concurrency/Leader_Follower/Makefile: * performance-tests/Server_Concurrency/Queue_Based_Workers/Makefile: More Makefiles that were not in the default compilation path, added them and update dependencies. * bin/Makefile: * examples/Bounded_Packet_Relay/Makefile: * examples/QOS/Makefile: * performance-tests/RPC/Makefile: * performance-tests/Synch-Benchmarks/Base_Test/Makefile: * performance-tests/Synch-Benchmarks/Perf_Test/Makefile: * performance-tests/Synch-Benchmarks/Synch_Lib/Makefile: * ASNMP/asnmp/Makefile: * ASNMP/examples/get/Makefile: * ASNMP/examples/next/Makefile: * ASNMP/examples/set/Makefile: * ASNMP/examples/trap/Makefile: * ASNMP/examples/walk/Makefile: * ASNMP/tests/Makefile: Just updated dependencies. More fixes are needed to put them in the normal compilation path. * performance-tests/Server_Concurrency/Queue_Based_Workers/workers.cpp: * performance-tests/Server_Concurrency/Leader_Follower/leader_follower.cpp: They wouldn't compile on platforms that lack context switch counters in rusage. Conditionally compile that code to avoid the problem. Wed Apr 19 14:09:29 2000 Darrell Brunsch * etc/Svc_Conf_l.cpp.diff: Fixed the diff so it generates the correct Svc_Conf_l.cpp. Wed Apr 19 12:48:21 2000 Balachandran Natarajan * ace/ACE.cpp: Added a missing pointer in the signature of ACE::t_rcv_n_i (). Wed Apr 19 10:11:23 2000 Darrell Brunsch * tests/Atomic_Op_Test.dsp: * tests/Auto_IncDec_Test.dsp: * tests/Barrier_Test.dsp: * tests/Basic_Types_Test.dsp: * tests/Buffer_Stream_Test.dsp: * tests/CDR_File_Test.dsp: * tests/CDR_Test.dsp: * tests/Cache_Map_Manager_Test.dsp: * tests/Cached_Accept_Conn_Test.dsp: * tests/Cached_Conn_Test.dsp: * tests/Capabilities_Test.dsp: * tests/Collection_Test.dsp: * tests/Conn_Test.dsp: * tests/DLList_Test.dsp: * tests/Dynamic_Priority_Test.dsp: * tests/Enum_Interfaces_Test.dsp: * tests/Env_Value_Test.dsp: * tests/Future_Set_Test.dsp: * tests/Future_Test.dsp: * tests/Handle_Set_Test.dsp: * tests/Hash_Map_Bucket_Iterator_Test.dsp: * tests/Hash_Map_Manager_Test.dsp: * tests/High_Res_Timer_Test.dsp: * tests/IOStream_Test.dsp: * tests/Lazy_Map_Manager_Test.dsp: * tests/MM_Shared_Memory_Test.dsp: * tests/MT_Reactor_Timer_Test.dsp: * tests/MT_SOCK_Test.dsp: * tests/Malloc_Test.dsp: * tests/Map_Manager_Test.dsp: * tests/Map_Test.dsp: * tests/Mem_Map_Test.dsp: * tests/Message_Block_Test.dsp: * tests/Message_Queue_Notifications_Test.dsp: * tests/Message_Queue_Test.dsp: * tests/Naming_Test.dsp: * tests/New_Fail_Test.dsp: * tests/Notify_Performance_Test.dsp: * tests/Object_Manager_Test.dsp: * tests/OrdMultiSet_Test.dsp: * tests/Pipe_Test.dsp: * tests/Priority_Buffer_Test.dsp: * tests/Priority_Reactor_Test.dsp: * tests/Priority_Task_Test.dsp: * tests/Process_Manager_Test.dsp: * tests/Process_Mutex_Test.dsp: * tests/Process_Strategy_Test.dsp: * tests/RB_Tree_Test.dsp: * tests/Reactor_Exceptions_Test.dsp: * tests/Reactor_Notify_Test.dsp: * tests/Reactor_Performance_Test.dsp: * tests/Reactor_Timer_Test.dsp: * tests/Reactors_Test.dsp: * tests/Reader_Writer_Test.dsp: * tests/Recursive_Mutex_Test.dsp: * tests/Reverse_Lock_Test.dsp: * tests/SOCK_Connector_Test.dsp: * tests/SOCK_Send_Recv_Test.dsp: * tests/SOCK_Test.dsp: * tests/SPIPE_Test.dsp: * tests/SString_Test.dsp: * tests/SV_Shared_Memory_Test.dsp: * tests/Semaphore_Test.dsp: * tests/Service_Config_Test.dsp: * tests/Sigset_Ops_Test.dsp: * tests/Simple_Message_Block_Test.dsp: * tests/Svc_Handler_Test.dsp: * tests/TSS_Test.dsp: * tests/Task_Test.dsp: * tests/Thread_Manager_Test.dsp: * tests/Thread_Mutex_Test.dsp: * tests/Thread_Pool_Reactor_Test.dsp: * tests/Thread_Pool_Test.dsp: * tests/Time_Service_Test.dsp: * tests/Time_Value_Test.dsp: * tests/Timeprobe_Test.dsp: * tests/Timer_Queue_Test.dsp: * tests/Tokens_Test.dsp: * tests/UPIPE_SAP_Test.dsp: * tests/Upgradable_RW_Test.dsp: * tests/pharlap/Atomic_Op_Test.dsp: (added) * tests/pharlap/Auto_IncDec_Test.dsp: (added) * tests/pharlap/Barrier_Test.dsp: (added) * tests/pharlap/Basic_Types_Test.dsp: (added) * tests/pharlap/Buffer_Stream_Test.dsp: (added) * tests/pharlap/CDR_File_Test.dsp: (added) * tests/pharlap/CDR_Test.dsp: (added) * tests/pharlap/Cache_Map_Manager_Test.dsp: (added) * tests/pharlap/Cached_Accept_Conn_Test.dsp: (added) * tests/pharlap/Cached_Conn_Test.dsp: (added) * tests/pharlap/Capabilities_Test.dsp: (added) * tests/pharlap/Collection_Test.dsp: (added) * tests/pharlap/Conn_Test.dsp: (added) * tests/pharlap/DLList_Test.dsp: (added) * tests/pharlap/Dynamic_Priority_Test.dsp: (added) * tests/pharlap/Enum_Interfaces_Test.dsp: (added) * tests/pharlap/Env_Value_Test.dsp: (added) * tests/pharlap/Future_Set_Test.dsp: (added) * tests/pharlap/Future_Test.dsp: (added) * tests/pharlap/Handle_Set_Test.dsp: (added) * tests/pharlap/Hash_Map_Bucket_Iterator_Test.dsp: (added) * tests/pharlap/Hash_Map_Manager_Test.dsp: (added) * tests/pharlap/High_Res_Timer_Test.dsp: (added) * tests/pharlap/IOStream_Test.dsp: (added) * tests/pharlap/Lazy_Map_Manager_Test.dsp: (added) * tests/pharlap/MM_Shared_Memory_Test.dsp: (added) * tests/pharlap/MT_Reactor_Timer_Test.dsp: (added) * tests/pharlap/MT_SOCK_Test.dsp: (added) * tests/pharlap/Malloc_Test.dsp: (added) * tests/pharlap/Map_Manager_Test.dsp: (added) * tests/pharlap/Map_Test.dsp: (added) * tests/pharlap/Mem_Map_Test.dsp: (added) * tests/pharlap/Message_Block_Test.dsp: (added) * tests/pharlap/Message_Queue_Notifications_Test.dsp: (added) * tests/pharlap/Message_Queue_Test.dsp: (added) * tests/pharlap/Naming_Test.dsp: (added) * tests/pharlap/New_Fail_Test.dsp: (added) * tests/pharlap/Notify_Performance_Test.dsp: (added) * tests/pharlap/Object_Manager_Test.dsp: (added) * tests/pharlap/OrdMultiSet_Test.dsp: (added) * tests/pharlap/Pipe_Test.dsp: (added) * tests/pharlap/Priority_Buffer_Test.dsp: (added) * tests/pharlap/Priority_Reactor_Test.dsp: (added) * tests/pharlap/Priority_Task_Test.dsp: (added) * tests/pharlap/Process_Manager_Test.dsp: (added) * tests/pharlap/Process_Mutex_Test.dsp: (added) * tests/pharlap/Process_Strategy_Test.dsp: (added) * tests/pharlap/RB_Tree_Test.dsp: (added) * tests/pharlap/Reactor_Exceptions_Test.dsp: (added) * tests/pharlap/Reactor_Notify_Test.dsp: (added) * tests/pharlap/Reactor_Performance_Test.dsp: (added) * tests/pharlap/Reactor_Timer_Test.dsp: (added) * tests/pharlap/Reactors_Test.dsp: (added) * tests/pharlap/Reader_Writer_Test.dsp: (added) * tests/pharlap/Recursive_Mutex_Test.dsp: (added) * tests/pharlap/Reverse_Lock_Test.dsp: (added) * tests/pharlap/SOCK_Connector_Test.dsp: (added) * tests/pharlap/SOCK_Send_Recv_Test.dsp: (added) * tests/pharlap/SOCK_Test.dsp: (added) * tests/pharlap/SPIPE_Test.dsp: (added) * tests/pharlap/SString_Test.dsp: (added) * tests/pharlap/SV_Shared_Memory_Test.dsp: (added) * tests/pharlap/Semaphore_Test.dsp: (added) * tests/pharlap/Service_Config_Test.dsp: (added) * tests/pharlap/Sigset_Ops_Test.dsp: (added) * tests/pharlap/Simple_Message_Block_Test.dsp: (added) * tests/pharlap/Svc_Handler_Test.dsp: (added) * tests/pharlap/TSS_Test.dsp: (added) * tests/pharlap/Task_Test.dsp: (added) * tests/pharlap/Thread_Manager_Test.dsp: (added) * tests/pharlap/Thread_Mutex_Test.dsp: (added) * tests/pharlap/Thread_Pool_Reactor_Test.dsp: (added) * tests/pharlap/Thread_Pool_Test.dsp: (added) * tests/pharlap/Time_Service_Test.dsp: (added) * tests/pharlap/Time_Value_Test.dsp: (added) * tests/pharlap/Timeprobe_Test.dsp: (added) * tests/pharlap/Timer_Queue_Test.dsp: (added) * tests/pharlap/Tokens_Test.dsp: (added) * tests/pharlap/UPIPE_SAP_Test.dsp: (added) * tests/pharlap/Upgradable_RW_Test.dsp: (added) * tests/pharlap/pharlap_tests.dsw: (added) Moved all the pharlap configurations to their own dsp files in their own subdirectory. This was done so those of us who don't have pharlap can load tests.dsw and do a select all in the Build All window and only get the relavant builds. * tests/run_pharlap_tests.bat: (removed) * tests/pharlap/run_pharlap_tests.bat: (added) Moved this file to the pharlap directory also. Wed Apr 19 10:03:10 2000 Carlos O'Ryan * ace/SOCK_Stream.i: The new flag was present but not used in several methods, just forward them to the ACE::xxx() operation. Wed Apr 19 08:18:30 2000 Carlos O'Ryan * */Makefile: Updated all the dependencies Wed Apr 19 09:44:14 2000 Jeff Parsons * ace/Log_Msg.cpp: Changed the signature of a (WIN32-specific) call to send_n, to resolve a function overload ambiguity on NT. Wed Apr 19 00:00:29 2000 Irfan Pyarali * ace: There are two general use cases of the _n() methods: (1) The method keeps looping, until all the data has been transmitted, or until timeout occurs, or until the handle is closed. This use case occurs when one does not know how much data is coming across in the case of a recv(), or one wants to know exactly how much data was sent in the case of a send(). And one don't want to treat a premature eof as an error but wants to know the exact number of bytes that have been transferred so far. (2) In other cases when one knows exactly how much data is coming across in the case of recv(), or how much data needs to be transmitted in the case of a send(). Premature closing of the handle is usually an error. By adding an additional parameter to all the _n() methods, the above two use cases can be distinguished. The following files were modified: - OS - ACE - SOCK_Stream - TLI_Stream The other IO classes such as FIFO, MEM_IO, PIPE, etc., should also include this change. However, they should first get fixed with respect to timeouts. If comes before timeouts, ordering of the parameters will get messed up. Thanks to Steffen Winther Sorensen for reporting this second use of the _n() methods. * ace/OS.h: t_snd() interface was fixed. The buffer parameter should be const. * ace/ACE: Added support for TLI I/O functions to the ACE class. Tue Apr 18 19:08:37 2000 Darrell Brunsch * ace/config-all.h: (added) * ace/inc_user_config.h: (removed) * ace/Codeset_IBM1047.h: * ace/NT_Service.h: * ace/config-win32-common.h: * ace/OS.h: Started moving several of the macros from OS.h to config-all.h. The plan is to eventually split up OS.h, and config-all is a place where the macros (which are not specific to any part of ACE_OS) can go. config-all.h also ate inc_user_config.h. * ASNMP/agent/main.cpp: * ace/iosfwd.h: * ace/streams.h: * apps/JAWS/PROTOTYPE/JAWS/Assoc_Array.cpp: * tests/OrdMultiSet_Test.cpp: * tests/Time_Value_Test.cpp: * tests/test_config.h: Since inc_user_config.h was eaten, needed to change includes of it to config-all.h. * bin/generate_export_file.pl: (added) * bin/GenExportH.BAT: (removed) Replaced the batch file with a perl file so - people can generate on other platforms - it can generate Word_export and WORD_BUILD_DLL (the batch file couldn't change the case of the key) * ace/ACE_export.h: (added) * ace/svc_export.h: (added) Took the existing ACE_Export and ACE_Svc_Export macro and moved them to separate files. Also tested out the new generate_export_file.pl. * ace/ACE.cpp: * ace/ARGV.cpp: * ace/ATM_Acceptor.cpp: * ace/ATM_Addr.cpp: * ace/ATM_Connector.cpp: * ace/ATM_Params.cpp: * ace/ATM_QoS.cpp: * ace/ATM_Stream.cpp: * ace/Acceptor.cpp: * ace/Activation_Queue.cpp: * ace/Active_Map_Manager.cpp: * ace/Addr.cpp: * ace/Arg_Shifter.cpp: * ace/Asynch_Acceptor.cpp: * ace/Asynch_IO.cpp: * ace/Asynch_IO_Impl.cpp: * ace/Auto_IncDec_T.cpp: * ace/Auto_Ptr.cpp: * ace/Based_Pointer_Repository.cpp: * ace/Based_Pointer_T.cpp: * ace/Basic_Types.cpp: * ace/CDR_Stream.cpp: * ace/CORBA_Handler.cpp: * ace/CORBA_Ref.cpp: * ace/Cache_Map_Manager_T.cpp: * ace/Cached_Connect_Strategy_T.cpp: * ace/Capabilities.cpp: * ace/Cleanup_Strategies_T.cpp: * ace/Configuration.cpp: * ace/Connector.cpp: * ace/Containers.cpp: * ace/Containers_T.cpp: * ace/DEV.cpp: * ace/DEV_Addr.cpp: * ace/DEV_Connector.cpp: * ace/DEV_IO.cpp: * ace/DLL.cpp: * ace/Date_Time.cpp: * ace/Dirent.cpp: * ace/Dump.cpp: * ace/Dynamic.cpp: * ace/Dynamic_Service.cpp: * ace/Event_Handler.cpp: * ace/Event_Handler_T.cpp: * ace/FIFO.cpp: * ace/FIFO_Recv.cpp: * ace/FIFO_Recv_Msg.cpp: * ace/FIFO_Send.cpp: * ace/FIFO_Send_Msg.cpp: * ace/FILE.cpp: * ace/FILE_Addr.cpp: * ace/FILE_Connector.cpp: * ace/FILE_IO.cpp: * ace/Filecache.cpp: * ace/FlReactor.cpp: * ace/Functor.cpp: * ace/Functor_T.cpp: * ace/Future.cpp: * ace/Future_Set.cpp: * ace/Get_Opt.cpp: * ace/Handle_Set.cpp: * ace/Hash_Cache_Map_Manager_T.cpp: * ace/Hash_Map_Manager.cpp: * ace/High_Res_Timer.cpp: * ace/INET_Addr.cpp: * ace/IOStream.cpp: * ace/IOStream_T.cpp: * ace/IO_SAP.cpp: * ace/IPC_SAP.cpp: * ace/LSOCK.cpp: * ace/LSOCK_Acceptor.cpp: * ace/LSOCK_CODgram.cpp: * ace/LSOCK_Connector.cpp: * ace/LSOCK_Dgram.cpp: * ace/LSOCK_Stream.cpp: * ace/Local_Name_Space.cpp: * ace/Local_Name_Space_T.cpp: * ace/Local_Tokens.cpp: * ace/Log_Msg.cpp: * ace/Log_Record.cpp: * ace/MEM_Acceptor.cpp: * ace/MEM_Addr.cpp: * ace/MEM_Connector.cpp: * ace/MEM_IO.cpp: * ace/MEM_SAP.cpp: * ace/MEM_Stream.cpp: * ace/Malloc.cpp: * ace/Malloc_T.cpp: * ace/Managed_Object.cpp: * ace/Map.cpp: * ace/Map_Manager.cpp: * ace/Mem_Map.cpp: * ace/Memory_Pool.cpp: * ace/Message_Block.cpp: * ace/Message_Block_T.cpp: * ace/Message_Queue.cpp: * ace/Message_Queue_T.cpp: * ace/Method_Request.cpp: * ace/Module.cpp: * ace/Msg_WFMO_Reactor.cpp: * ace/Multiplexor.cpp: * ace/NT_Service.cpp: * ace/Name_Proxy.cpp: * ace/Name_Request_Reply.cpp: * ace/Name_Space.cpp: * ace/Naming_Context.cpp: * ace/OS.cpp: * ace/Object_Manager.cpp: * ace/Obstack.cpp: * ace/POSIX_Proactor.cpp: * ace/Pair.cpp: * ace/Parse_Node.cpp: * ace/Pipe.cpp: * ace/Priority_Reactor.cpp: * ace/Proactor.cpp: * ace/Process.cpp: * ace/Process_Manager.cpp: * ace/Profile_Timer.cpp: * ace/QoS_Manager.cpp: * ace/QoS_Session_Factory.cpp: * ace/QoS_Session_Impl.cpp: * ace/Reactor.cpp: * ace/Read_Buffer.cpp: * ace/Registry.cpp: * ace/Registry_Name_Space.cpp: * ace/Remote_Name_Space.cpp: * ace/Remote_Tokens.cpp: * ace/SOCK.cpp: * ace/SOCK_Acceptor.cpp: * ace/SOCK_CODgram.cpp: * ace/SOCK_Connector.cpp: * ace/SOCK_Dgram.cpp: * ace/SOCK_Dgram_Bcast.cpp: * ace/SOCK_Dgram_Mcast.cpp: * ace/SOCK_IO.cpp: * ace/SOCK_Stream.cpp: * ace/SPIPE.cpp: * ace/SPIPE_Acceptor.cpp: * ace/SPIPE_Addr.cpp: * ace/SPIPE_Connector.cpp: * ace/SPIPE_Stream.cpp: * ace/SString.cpp: * ace/SV_Message.cpp: * ace/SV_Message_Queue.cpp: * ace/SV_Semaphore_Complex.cpp: * ace/SV_Semaphore_Simple.cpp: * ace/SV_Shared_Memory.cpp: * ace/Sched_Params.cpp: * ace/Select_Reactor.cpp: * ace/Select_Reactor_Base.cpp: * ace/Select_Reactor_T.cpp: * ace/Service_Config.cpp: * ace/Service_Manager.cpp: * ace/Service_Object.cpp: * ace/Service_Repository.cpp: * ace/Service_Types.cpp: * ace/Shared_Memory.cpp: * ace/Shared_Memory_MM.cpp: * ace/Shared_Memory_SV.cpp: * ace/Shared_Object.cpp: * ace/Signal.cpp: * ace/Singleton.cpp: * ace/Stats.cpp: * ace/Strategies.cpp: * ace/Strategies_T.cpp: * ace/Stream.cpp: * ace/Stream_Modules.cpp: * ace/Svc_Conf.y: * ace/Svc_Conf_l.cpp: * ace/Svc_Conf_y.cpp: * ace/Svc_Handler.cpp: * ace/Synch.cpp: * ace/Synch_Options.cpp: * ace/Synch_T.cpp: * ace/System_Time.cpp: * ace/TLI.cpp: * ace/TLI_Acceptor.cpp: * ace/TLI_Connector.cpp: * ace/TLI_Stream.cpp: * ace/TP_Reactor.cpp: * ace/TTY_IO.cpp: * ace/Task.cpp: * ace/Task_T.cpp: * ace/Thread.cpp: * ace/Thread_Manager.cpp: * ace/Time_Request_Reply.cpp: * ace/Timeprobe.cpp: * ace/Timer_Hash.cpp: * ace/Timer_Hash_T.cpp: * ace/Timer_Heap.cpp: * ace/Timer_Heap_T.cpp: * ace/Timer_List.cpp: * ace/Timer_List_T.cpp: * ace/Timer_Queue.cpp: * ace/Timer_Queue_Adapters.cpp: * ace/Timer_Queue_T.cpp: * ace/Timer_Wheel.cpp: * ace/Timer_Wheel_T.cpp: * ace/TkReactor.cpp: * ace/Token.cpp: * ace/Token_Collection.cpp: * ace/Token_Invariants.cpp: * ace/Token_Manager.cpp: * ace/Token_Request_Reply.cpp: * ace/Trace.cpp: * ace/Typed_SV_Message.cpp: * ace/Typed_SV_Message_Queue.cpp: * ace/UNIX_Addr.cpp: * ace/UPIPE_Acceptor.cpp: * ace/UPIPE_Connector.cpp: * ace/UPIPE_Stream.cpp: * ace/WFMO_Reactor.cpp: * ace/WIN32_Asynch_IO.cpp: * ace/WIN32_Proactor.cpp: * ace/XTI_ATM_Mcast.cpp: * ace/XtReactor.cpp: * include/makeinclude/ace_flags.bor: * ace/ace_dll.dsp: * ace/ace_lib.dsp: The definition of ACE_BUILD_DLL was moved from the .cpp files to the project files - so it is now handled like most of the other libraries in ACE and TAO. Tue Apr 18 21:32:21 2000 Douglas C. Schmidt * ace/OS.i (sema_init): Fixed another problem that required a cast to ACE_mutexattr_t *. Thanks to Priyanka for reporting this. Tue Apr 18 19:39:41 2000 Douglas C. Schmidt * ace/Synch.cpp, * ace/OS.cpp: Added a cast to ACE_mutexattr_t *. Thanks to Darrell for pointing this out. Tue Apr 18 15:18:53 2000 Douglas C. Schmidt * ace/OS.h, * ace/OS.i, * ace/Synch.h, * ace/Synch.cpp: Updated the ACE_OS::*mutex_init() methods (and the corresponding ACE_Thread_Mutex, ACE_Mutex, and ACE_Recursive_Thread_Mutex classes) so that they now take an optional ACE_mutexattr_t * rather than just a void *. This is nice because it makes it possible to pass in special attributes, such as the mutex prioceiling attribute, to the underlying pthreads mutex (assuming we're running on pthreads, of course). Thanks to lafortg@res.raytheon.com for motivating this. * ace/Containers_T.cpp (copy_nodes): Added a call to the allocator->malloc() rather than new. Thanks to Umar Syyid for reporting this. Tue Apr 18 14:06:32 2000 Jeff Parsons * ace/CDR_Stream.cpp: Patch to ACE_CDR::consolidate() sent in by Carlos, that fixes a bug reported by Harald Finster , and an added check for 0 value of the 'length' arg in read_array() and write_array(), that fixes [Bug 540], reported by Mathew Samuel . Tue Apr 18 11:47:57 2000 Ossama Othman * ace/SOCK_Connector.cpp: Removed inclusion of `ace/Handle_Set.h'. The ACE_SOCK_Connector doesn't directly use an ACE_Handle_Set. * ace/Makefile: Updated dependencies. Tue Apr 18 08:54:04 2000 Darrell Brunsch * bin/vc_filter.pl: Brand spankin' new filter script for Win32 auto build results. Sun Apr 16 22:24:34 2000 Douglas C. Schmidt * ACE-INSTALL.html: Updated the link for GNU make to be more specific. Thanks to Xiaojun Wu for reporting this. BTW, Xiaojun was the 900th contributor to ACE+TAO, so he gets a free copy of ACE+TAO! Mon Apr 17 20:10:18 2000 Vishal * ACE version 5.1.1 released. Mon Apr 17 16:33:17 2000 Ossama Othman * acconfig.h (ACE_LACKS_ACE_OTHER, ACE_LACKS_ACE_SVCCONF, ACE_LACKS_ACE_TOKEN): Added support for these macros. They are used when enabling subsetting. * configure.in: lseek64() and llseek() test has been moved to `m4/acinclude.m4'. Include `sys/types.h' when running the TLI/XTI tests. Some platforms use typedefs such as "ulong" but such typedefs may not be defined in the TLI/XTI headers. (ACE_HAS_BROKEN_T_ERROR): Corrected test for broken t_error(). A variable, "errmsg" was being passed to the t_error() call in the test, but the variable was declared as "ace_errmsg." Thanks to Roland Gigler for pointing this out. (ACE_MAJOR, ACE_MINOR, ACE_BETA): If any of these variables is evaluates to the empty string, then set it to zero. This fixes a problem that was occuring when the the ACE version contained no beta number (e.g. "5.1" instead "5.1.0"). Libtool didn't like the fact that one of the numbers was an empty string. * ace/Makefile.am (libACE_IPC_la_SOURCES, libACE_Other_la_SOURCES, HEADER_FILES, INLINE_FILES): Synchronized the sources associated with these Makefile variables with those in the classical ACE Makefile. * m4/acinclude.m4 (ACE_CHECK_LSEEK64): Moved checks for lseek64() and llseek() from configure.in to this file. The beginnings of a test for a 64 bit offset type have also been added, but that test is currently not in use. * m4/ace.m4 (ACE_COMPILATION_OPTIONS): Removed check for exception support in C compiler. It didn't make too much sense to check for exception support in a C compiler. Since exception support is disabled by default, make sure "-fno-exceptions" is set when using g++ with the default ACE exception configuration value. * m4/compiler.m4 (ACE_SET_COMPILER_FLAGS): Fixed typos where "$GXX" was used instead of "$CXX." "$GXX" is set to yes when GNU C++ is being used, and "$CXX" is set to the compiler being used (e.g. "c++"). Thanks to Rich Seibel for pointing this out. This also fixes a problem where "-fcheck-new" wasn't being added to the C++ flags ($CXXFLAGS). * m4/subsets.m4 (ACE_LACKS_ACE_OTHER, ACE_LACKS_ACE_SVCCONF, ACE_LACKS_ACE_TOKEN): When disabling the "Other," "SvcConf" and/or the "Token" subset, then define the corresponding preprocessor macro. Sat Apr 15 21:49:04 2000 Darrell Brunsch * ace/ACE.cpp: * apps/Gateway/Gateway/Options.cpp: Nick Pratt reported two cases where we were using sizeof some_string to figure out its length. This of course doesn't work when the string is a wide string, so they have been changed to account for the character size. * ace/ace_dll.dsp: * ace/ace_lib.dsp: * apps/gperf/src/gperf.dsp: * apps/gperf/src/gperf_lib.dsp: Changed around the order of the configurations so that in the default case (such as out of the box) the regular Debug version will be the current configuration. Sat Apr 15 19:35:57 2000 Darrell Brunsch (On behalf of Christopher Kohlhoff ) * ace/Makefile.bor: Added new file QoS_Manager.cpp. * ace/Basic_Types.h: * ace/Timer_Queue_Adapters.h: Added missing pre/post includes. * include/makeinclude/ace_flags.bor: * include/makeinclude/build_example.bor: Updated for new orbsvcs libraries. Sat Apr 15 18:17:02 2000 Douglas C. Schmidt * apps/Gateway/Gateway/Concrete_Connection_Handlers.cpp: Fixed the handle_output() function so that it does the "Right Thing"[TM] on Windows NT. Win32 Winsock doesn't trigger multiple "You can write now" signals, so we have to assume that we can continue to write until we get another EWOULDBLOCK. Thanks to Nick Pratt Thu Apr 13 16:30:01 2000 David L. Levine * ace/config-sunos5.7.h: added #undef ACE_NEEDS_LWP_PRIO_SET. SunOS 5.7 no longer needs it, as shown by performance-tests/Misc/preempt (run as superuser). Thanks to John Foresteire for reporting this. Tue Apr 11 21:41:20 2000 Nanbor Wang * bin/auto_compile_win32.pl: Updated the lists of workspaces/projects to build. Tue Apr 11 16:15:31 2000 David L. Levine * ace/OS.cpp: moved ACE_Thread_Exit::is_constructed_ definition so that it's seen on all platforms, not just those that are ACE_MT_SAFE. Fixes: Mon Apr 10 07:30:22 2000 John Rodgers Thanks to Vishal for reporting it. Tue Apr 11 13:57:11 2000 Douglas C. Schmidt * ace/Synch_T.cpp: Make sure to cast the "type" argument to "short" to avoid overload confusions by certain compilers. Thanks to Charles Taurines for reporting this. Tue Apr 11 12:52:04 2000 Vishal Kachroo * ace/SOCK_Dgram_Mcast.cpp (subscribe): Removed the #ifdef for template instantiation. Tue Apr 11 11:32:03 2000 Chad Elliott * bin/ACEutils.pm Refactored duplicate test code into ACEutils.pm Mon Apr 10 19:45:32 2000 Vishal Kachroo * ace/SOCK_Dgram_Mcast.cpp (subscribe): Added a #ifdef to get past a g++ error. I am looking into the right way to do this. Mon Apr 10 17:37:53 2000 Nanbor Wang * ace/config-freebsd-pthread.h: Addplied John Aughey 's patch for FreeBSD 4.0. Mon Apr 10 07:30:22 2000 John Rodgers * ace/OS.{h,cpp},Thread_Manager.cpp (instance,~ACE_Thread_Exit): added a state variable, is_constructed_, to ACE_Thread_Exit. instance () sets it, ~ACE_Thread_Exit () clears it. This allows ACE::init () to be called after ACE::fini (), because a new ACE_Thread_Exit instance will be created. [Bug 526] Sun Apr 9 14:16:23 2000 James CE Johnson * docs/tutorials/015/page01.html : Thanks to Conrad Hughes for pointing out that a real implementation would compress before encrypting since encrypted data shouldn't really be compressible anyway. * docs/tutorials/015/Protocol_Stream.cpp (open): Reorder the module pushing so that encryption happens before compression. * docs/tutorials/015/Crypt.cpp : * docs/tutorials/015/Compressor.cpp : Add a few extra bytes when creating the new message blocks. A real implementation would probably need that. Sun Apr 09 00:04:25 2000 Nanbor Wang * ace/Malloc_T.cpp (remove): Removed invocation of destructor to . It is a member of Control_Block and does not require explicit initialization/destruction. This was causing ACE not to compile when ACE_HAS_MALLOC_STATS was defined. Thanks to John Smyder for reporting the problem. * ace/Malloc_T.cpp (open): Removed invocation of contructor to for the same reason. Fri Apr 07 23:32:16 2000 Nanbor Wang * ace/ace_dll.dsp: * ace/ace_lib.dsp: Added QoS_Manager.* into project files. Thu Apr 6 07:29:48 2000 Douglas C. Schmidt * ace/Token.h (ACE_Token): Clarified the recursive semantics of ACE_Token. Thanks to Antti Valtokari for reporting this. Wed Apr 5 22:59:58 2000 Douglas C. Schmidt * ace/config-sunos5.5.h: Moved the ACE_HAS_USING_KEYWORD into the part of this header file that's enabled when __SUNPRO_CC_COMPAT >= 5 is defined. Thanks to Susan Liebeskind for reporting this. Tue Apr 4 23:50:02 2000 Douglas C. Schmidt * ace/ACE.cpp (sock_error): Changed "int error" to "ssize_t error" to be consistent... Tue Apr 4 20:19:36 2000 * ace/Acceptor.cpp: Modified the implementation of ACE_Acceptor::open() and ACE_Acceptor::accept_svc_handler() so that the peer acceptor's handle is set into non-blocking mode. This is a safe-guard against the race condition that can otherwise occur between the time when