summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorschmidt <douglascraigschmidt@users.noreply.github.com>2003-07-14 18:15:12 +0000
committerschmidt <douglascraigschmidt@users.noreply.github.com>2003-07-14 18:15:12 +0000
commit8431fa9d9b360a569f8c393c1ae417fc27941456 (patch)
tree9eb47d30fe92d7a4e7de8815e74502cd275fa9c5
parent049754379da3f1146731dfb5e9c8367cacbb61e2 (diff)
downloadATCD-8431fa9d9b360a569f8c393c1ae417fc27941456.tar.gz
ChangeLogTag:Mon Jul 14 11:16:25 2003 Craig Rodrigues <crodrigu@bbn.com>
-rw-r--r--COPYING187
-rw-r--r--ChangeLog24
-rw-r--r--TAO/COPYING187
-rw-r--r--THANKS4
-rw-r--r--ace/Future.h9
-rw-r--r--ace/Handle_Set.cpp2
-rw-r--r--ace/Message_Queue_T.cpp76
-rw-r--r--ace/OS_Dirent.inl1
-rw-r--r--ace/POSIX_Proactor.cpp11
9 files changed, 264 insertions, 237 deletions
diff --git a/COPYING b/COPYING
index ad261f68b8e..7c1f7ba8804 100644
--- a/COPYING
+++ b/COPYING
@@ -1,96 +1,99 @@
-Copyright and Licensing Information for ACE(TM) and TAO(TM)
-[1]ACE(TM) and [2]TAO(TM) are copyrighted by [3]Douglas C. Schmidt and
-his [4]research group at [5]Washington University, [6]University of
-California, Irvine, and [7]Vanderbilt University Copyright (c)
-1993-2003, all rights reserved. Since ACE+TAO are open-source, free
-software, you are free to use, modify, copy, and
-distribute--perpetually and irrevocably--the ACE+TAO source code and
-object code produced from the source, as well as copy and distribute
-modified versions of this software. You must, however, include this
-copyright statement along with code built using ACE+TAO.
-
-You can use ACE+TAO in proprietary software and are under no
-obligation to redistribute any of your source code that is built using
-ACE+TAO. Note, however, that you may not do anything to the ACE+TAO
-code, such as copyrighting it yourself or claiming authorship of the
-ACE+TAO code, that will prevent ACE+TAO from being distributed freely
-using an open-source development model. You needn't inform anyone that
-you're using ACE+TAO in your software, though we encourage you to let
-[8]us know so we can promote your project in the [9]ACE+TAO success
-stories..
-
-ACE+TAO are provided as is with no warranties of any kind, including
-the warranties of design, merchantability, and fitness for a
-particular purpose, noninfringement, or arising from a course of
-dealing, usage or trade practice. Moreover, ACE+TAO are provided with
-no support and without any obligation on the part of Washington
-University, UC Irvine, Vanderbilt University, their employees, or
-students to assist in its use, correction, modification, or
-enhancement. However, commercial support for ACE is available from
-[10]Riverace and commercial support for TAO is available from [11]OCI
-and [12]PrismTech. Both ACE and TAO are Y2K-compliant, as long as the
-underlying OS platform is Y2K-compliant.
-
-Washington University, UC Irvine, Vanderbilt University, their
-employees, and students shall have no liability with respect to the
-infringement of copyrights, trade secrets or any patents by ACE+TAO or
-any part thereof. Moreover, in no event will Washington University, UC
-Irvine, or Vanderbilt University, their employees, or students be
-liable for any lost revenue or profits or other special, indirect and
-consequential damages.
-
-The [13]ACE and [14]TAO web sites are maintained by the [15]Center for
-Distributed Object Computing of Washington University for the
-development of open-source software as part of the [16]open-source
-software community. By submitting comments, suggestions, code, code
-snippets, techniques (including that of usage), and algorithms,
-submitters acknowledge that they have the right to do so, that any
-such submissions are given freely and unreservedly, and that they
-waive any claims to copyright or ownership. In addition, submitters
-acknowledge that any such submission might become part of the
-copyright maintained on the overall body of code, which comprises the
-[17]ACE and [18]TAO software. By making a submission, submitter agree
-to these terms. Furthermore, submitters acknowledge that the
-incorporation or modification of such submissions is entirely at the
-discretion of the moderators of the open-source ACE+TAO projects or
-their designees.
-
-The names ACE(TM), TAO(TM), Washington University, UC Irvine, and
-Vanderbilt University, may not be used to endorse or promote products
-or services derived from this source without express written
-permission from Washington University, UC Irvine, or Vanderbilt
-University. Further, products or services derived from this source may
-not be called ACE(TM) or TAO(TM), nor may the name Washington
-University, UC Irvine, or Vanderbilt University appear in their names,
-without express written permission from Washington University, UC
-Irvine, and Vanderbilt University.
-
-If you have any suggestions, additions, comments, or questions, please
-let [19]me know.
-
-[20]Douglas C. Schmidt
+ _________________________________________________________________
+
+ Copyright and Licensing Information for ACE(TM) and TAO(TM)
+
+ [1]ACE(TM) and [2]TAO(TM) are copyrighted by [3]Douglas C. Schmidt and
+ his [4]research group at [5]Washington University, [6]University of
+ California, Irvine, and [7]Vanderbilt University Copyright (c)
+ 1993-2003, all rights reserved. Since ACE+TAO are open-source, free
+ software, you are free to use, modify, copy, and
+ distribute--perpetually and irrevocably--the ACE+TAO source code and
+ object code produced from the source, as well as copy and distribute
+ modified versions of this software. You must, however, include this
+ copyright statement along with code built using ACE+TAO.
+
+ You can use ACE+TAO in proprietary software and are under no
+ obligation to redistribute any of your source code that is built using
+ ACE+TAO. Note, however, that you may not do anything to the ACE+TAO
+ code, such as copyrighting it yourself or claiming authorship of the
+ ACE+TAO code, that will prevent ACE+TAO from being distributed freely
+ using an open-source development model. You needn't inform anyone that
+ you're using ACE+TAO in your software, though we encourage you to let
+ [8]us know so we can promote your project in the [9]ACE+TAO success
+ stories..
+
+ ACE+TAO are provided as is with no warranties of any kind, including
+ the warranties of design, merchantability, and fitness for a
+ particular purpose, noninfringement, or arising from a course of
+ dealing, usage or trade practice. Moreover, ACE+TAO are provided with
+ no support and without any obligation on the part of Washington
+ University, UC Irvine, Vanderbilt University, their employees, or
+ students to assist in its use, correction, modification, or
+ enhancement. A [10]number of companies provide commercial support for
+ ACE and TAO, however. Both ACE and TAO are Y2K-compliant, as long as
+ the underlying OS platform is Y2K-compliant.
+
+ Washington University, UC Irvine, Vanderbilt University, their
+ employees, and students shall have no liability with respect to the
+ infringement of copyrights, trade secrets or any patents by ACE+TAO or
+ any part thereof. Moreover, in no event will Washington University, UC
+ Irvine, or Vanderbilt University, their employees, or students be
+ liable for any lost revenue or profits or other special, indirect and
+ consequential damages.
+
+ The [11]ACE and [12]TAO web sites are maintained by the [13]Center for
+ Distributed Object Computing of Washington University for the
+ development of open-source software as part of the [14]open-source
+ software community. By submitting comments, suggestions, code, code
+ snippets, techniques (including that of usage), and algorithms,
+ submitters acknowledge that they have the right to do so, that any
+ such submissions are given freely and unreservedly, and that they
+ waive any claims to copyright or ownership. In addition, submitters
+ acknowledge that any such submission might become part of the
+ copyright maintained on the overall body of code, which comprises the
+ [15]ACE and [16]TAO software. By making a submission, submitter agree
+ to these terms. Furthermore, submitters acknowledge that the
+ incorporation or modification of such submissions is entirely at the
+ discretion of the moderators of the open-source ACE+TAO projects or
+ their designees.
+
+ The names ACE(TM), TAO(TM), Washington University, UC Irvine, and
+ Vanderbilt University, may not be used to endorse or promote products
+ or services derived from this source without express written
+ permission from Washington University, UC Irvine, or Vanderbilt
+ University. Further, products or services derived from this source may
+ not be called ACE(TM) or TAO(TM), nor may the name Washington
+ University, UC Irvine, or Vanderbilt University appear in their names,
+ without express written permission from Washington University, UC
+ Irvine, and Vanderbilt University.
+
+ If you have any suggestions, additions, comments, or questions, please
+ let [17]me know.
+
+ [18]Douglas C. Schmidt
+ _________________________________________________________________
+
+ Back to the [19]ACE home page.
References
-1. http://www.cs.wustl.edu/~schmidt/ACE.html
-2. http://www.cs.wustl.edu/~schmidt/TAO.html
-3. http://www.cs.wustl.edu/~schmidt/
-4. http://www.cs.wustl.edu/~schmidt/ACE-members.html
-5. http://www.wustl.edu/
-6. http://www.uci.edu/
-7. http://www.vanderbilt.edu/
-8. mailto:doc_group@cs.wustl.edu
-9. http://www.cs.wustl.edu/~schmidt/ACE-users.html
-10. http://www.riverace.com/
-11. http://www.theaceorb.com/
-12. http://www.prismtechnologies.com/
-13. http://www.cs.wustl.edu/~schmidt/ACE.html
-14. http://www.cs.wustl.edu/~schmidt/TAO.html
-15. http://www.cs.wustl.edu/~schmidt/doc-center.html
-16. http://www.opensource.org/
-17. http://www.cs.wustl.edu/~schmidt/ACE-obtain.html
-18. http://www.cs.wustl.edu/~schmidt/TAO-obtain.html
-19. mailto:schmidt@cs.wustl.edu
-20. http://www.cs.wustl.edu/~schmidt/
-21. file://localhost/project/adaptive/.www-docs/ACE.html
+ 1. http://www.cs.wustl.edu/~schmidt/ACE.html
+ 2. http://www.cs.wustl.edu/~schmidt/TAO.html
+ 3. http://www.cs.wustl.edu/~schmidt/
+ 4. http://www.cs.wustl.edu/~schmidt/ACE-members.html
+ 5. http://www.wustl.edu/
+ 6. http://www.uci.edu/
+ 7. http://www.vanderbilt.edu/
+ 8. mailto:doc_group@cs.wustl.edu
+ 9. http://www.cs.wustl.edu/~schmidt/ACE-users.html
+ 10. http://www.cs.wustl.edu/~schmidt/commercial-support.html
+ 11. http://www.cs.wustl.edu/~schmidt/ACE.html
+ 12. http://www.cs.wustl.edu/~schmidt/TAO.html
+ 13. http://www.cs.wustl.edu/~schmidt/doc-center.html
+ 14. http://www.opensource.org/
+ 15. http://www.cs.wustl.edu/~schmidt/ACE-obtain.html
+ 16. http://www.cs.wustl.edu/~schmidt/TAO-obtain.html
+ 17. mailto:schmidt@cs.wustl.edu
+ 18. http://www.cs.wustl.edu/~schmidt/
+ 19. file://localhost/project/adaptive/.www-docs/ACE.html
diff --git a/ChangeLog b/ChangeLog
index f94da217fd4..b8a71603e47 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+Mon Jul 14 11:16:25 2003 Craig Rodrigues <crodrigu@bbn.com>
+
+ * ace/POSIX_Proactor.cpp: FreeBSD defines the sysconf value
+ for _SC_AIO_LISTIO_MAX to 16, and the sysconf value for
+ _SC_AIO_MAX to be 1024. The lower value must be assigned to
+ aiocb_list_max_size_ otherwise aio_suspend() will fail. There
+ was already already some logic in here to support HPUX that also
+ works for FreeBSD, so use that.
+
Sat Jul 12 17:55:14 2003 Irfan Pyarali <irfan@oomworks.com>
* tests\Conn_Test.cpp:
@@ -760,6 +769,15 @@ Mon Jul 07 18:00:38 2003 Irfan Pyarali <irfan@oomworks.com>
new changes by Bala to the TAO connection handlers. New branch
is Reactor_RefCount_2.
+Mon Jul 7 12:38:01 2003 Douglas C. Schmidt <schmidt@ace.cs.wustl.edu>
+
+ * ace/Message_Queue_T.cpp: Updated the implementation of all the
+ dequeue_*() methods so that the "next_" and "prev_" pointer of
+ the dequeue'd message block are set to 0. Failure to do this
+ can cause weird behavior when a dequeue'd message block is
+ passed to ACE::write_n().... Thanks to Wenlong Tang
+ <tang_long@hotmail.com> for reporting this.
+
Mon Jul 7 11:14:02 2003 Jeff Parsons <j.parsons@vanderbilt.edu>
* TAO_IDL/be/be_visitor_structure/any_op_cs.cpp (visit_enum):
@@ -969,6 +987,12 @@ Sun Jun 29 01:31:52 UTC 2003 Don Hinton <dhinton@dresystems.com>
Added include of ace/os_include/sys/os_un.h to fix compile
problems on VxWorks.
+Sat Jun 28 15:26:11 2003 Douglas C. Schmidt <schmidt@ace.cs.wustl.edu>
+
+ * ace/OS_Dirent.inl (readdir_r): Added defined (__FreeBSD__)
+ here. Thanks to Karim Fodil-Lemelin <kfl@xiphos.ca> for
+ submitting a patch.
+
Fri Jun 27 12:52:12 UTC 2003 Johnny Willemsen <jwillemsen@remedy.nl>
* ace/Process.h:
diff --git a/TAO/COPYING b/TAO/COPYING
index ad261f68b8e..7c1f7ba8804 100644
--- a/TAO/COPYING
+++ b/TAO/COPYING
@@ -1,96 +1,99 @@
-Copyright and Licensing Information for ACE(TM) and TAO(TM)
-[1]ACE(TM) and [2]TAO(TM) are copyrighted by [3]Douglas C. Schmidt and
-his [4]research group at [5]Washington University, [6]University of
-California, Irvine, and [7]Vanderbilt University Copyright (c)
-1993-2003, all rights reserved. Since ACE+TAO are open-source, free
-software, you are free to use, modify, copy, and
-distribute--perpetually and irrevocably--the ACE+TAO source code and
-object code produced from the source, as well as copy and distribute
-modified versions of this software. You must, however, include this
-copyright statement along with code built using ACE+TAO.
-
-You can use ACE+TAO in proprietary software and are under no
-obligation to redistribute any of your source code that is built using
-ACE+TAO. Note, however, that you may not do anything to the ACE+TAO
-code, such as copyrighting it yourself or claiming authorship of the
-ACE+TAO code, that will prevent ACE+TAO from being distributed freely
-using an open-source development model. You needn't inform anyone that
-you're using ACE+TAO in your software, though we encourage you to let
-[8]us know so we can promote your project in the [9]ACE+TAO success
-stories..
-
-ACE+TAO are provided as is with no warranties of any kind, including
-the warranties of design, merchantability, and fitness for a
-particular purpose, noninfringement, or arising from a course of
-dealing, usage or trade practice. Moreover, ACE+TAO are provided with
-no support and without any obligation on the part of Washington
-University, UC Irvine, Vanderbilt University, their employees, or
-students to assist in its use, correction, modification, or
-enhancement. However, commercial support for ACE is available from
-[10]Riverace and commercial support for TAO is available from [11]OCI
-and [12]PrismTech. Both ACE and TAO are Y2K-compliant, as long as the
-underlying OS platform is Y2K-compliant.
-
-Washington University, UC Irvine, Vanderbilt University, their
-employees, and students shall have no liability with respect to the
-infringement of copyrights, trade secrets or any patents by ACE+TAO or
-any part thereof. Moreover, in no event will Washington University, UC
-Irvine, or Vanderbilt University, their employees, or students be
-liable for any lost revenue or profits or other special, indirect and
-consequential damages.
-
-The [13]ACE and [14]TAO web sites are maintained by the [15]Center for
-Distributed Object Computing of Washington University for the
-development of open-source software as part of the [16]open-source
-software community. By submitting comments, suggestions, code, code
-snippets, techniques (including that of usage), and algorithms,
-submitters acknowledge that they have the right to do so, that any
-such submissions are given freely and unreservedly, and that they
-waive any claims to copyright or ownership. In addition, submitters
-acknowledge that any such submission might become part of the
-copyright maintained on the overall body of code, which comprises the
-[17]ACE and [18]TAO software. By making a submission, submitter agree
-to these terms. Furthermore, submitters acknowledge that the
-incorporation or modification of such submissions is entirely at the
-discretion of the moderators of the open-source ACE+TAO projects or
-their designees.
-
-The names ACE(TM), TAO(TM), Washington University, UC Irvine, and
-Vanderbilt University, may not be used to endorse or promote products
-or services derived from this source without express written
-permission from Washington University, UC Irvine, or Vanderbilt
-University. Further, products or services derived from this source may
-not be called ACE(TM) or TAO(TM), nor may the name Washington
-University, UC Irvine, or Vanderbilt University appear in their names,
-without express written permission from Washington University, UC
-Irvine, and Vanderbilt University.
-
-If you have any suggestions, additions, comments, or questions, please
-let [19]me know.
-
-[20]Douglas C. Schmidt
+ _________________________________________________________________
+
+ Copyright and Licensing Information for ACE(TM) and TAO(TM)
+
+ [1]ACE(TM) and [2]TAO(TM) are copyrighted by [3]Douglas C. Schmidt and
+ his [4]research group at [5]Washington University, [6]University of
+ California, Irvine, and [7]Vanderbilt University Copyright (c)
+ 1993-2003, all rights reserved. Since ACE+TAO are open-source, free
+ software, you are free to use, modify, copy, and
+ distribute--perpetually and irrevocably--the ACE+TAO source code and
+ object code produced from the source, as well as copy and distribute
+ modified versions of this software. You must, however, include this
+ copyright statement along with code built using ACE+TAO.
+
+ You can use ACE+TAO in proprietary software and are under no
+ obligation to redistribute any of your source code that is built using
+ ACE+TAO. Note, however, that you may not do anything to the ACE+TAO
+ code, such as copyrighting it yourself or claiming authorship of the
+ ACE+TAO code, that will prevent ACE+TAO from being distributed freely
+ using an open-source development model. You needn't inform anyone that
+ you're using ACE+TAO in your software, though we encourage you to let
+ [8]us know so we can promote your project in the [9]ACE+TAO success
+ stories..
+
+ ACE+TAO are provided as is with no warranties of any kind, including
+ the warranties of design, merchantability, and fitness for a
+ particular purpose, noninfringement, or arising from a course of
+ dealing, usage or trade practice. Moreover, ACE+TAO are provided with
+ no support and without any obligation on the part of Washington
+ University, UC Irvine, Vanderbilt University, their employees, or
+ students to assist in its use, correction, modification, or
+ enhancement. A [10]number of companies provide commercial support for
+ ACE and TAO, however. Both ACE and TAO are Y2K-compliant, as long as
+ the underlying OS platform is Y2K-compliant.
+
+ Washington University, UC Irvine, Vanderbilt University, their
+ employees, and students shall have no liability with respect to the
+ infringement of copyrights, trade secrets or any patents by ACE+TAO or
+ any part thereof. Moreover, in no event will Washington University, UC
+ Irvine, or Vanderbilt University, their employees, or students be
+ liable for any lost revenue or profits or other special, indirect and
+ consequential damages.
+
+ The [11]ACE and [12]TAO web sites are maintained by the [13]Center for
+ Distributed Object Computing of Washington University for the
+ development of open-source software as part of the [14]open-source
+ software community. By submitting comments, suggestions, code, code
+ snippets, techniques (including that of usage), and algorithms,
+ submitters acknowledge that they have the right to do so, that any
+ such submissions are given freely and unreservedly, and that they
+ waive any claims to copyright or ownership. In addition, submitters
+ acknowledge that any such submission might become part of the
+ copyright maintained on the overall body of code, which comprises the
+ [15]ACE and [16]TAO software. By making a submission, submitter agree
+ to these terms. Furthermore, submitters acknowledge that the
+ incorporation or modification of such submissions is entirely at the
+ discretion of the moderators of the open-source ACE+TAO projects or
+ their designees.
+
+ The names ACE(TM), TAO(TM), Washington University, UC Irvine, and
+ Vanderbilt University, may not be used to endorse or promote products
+ or services derived from this source without express written
+ permission from Washington University, UC Irvine, or Vanderbilt
+ University. Further, products or services derived from this source may
+ not be called ACE(TM) or TAO(TM), nor may the name Washington
+ University, UC Irvine, or Vanderbilt University appear in their names,
+ without express written permission from Washington University, UC
+ Irvine, and Vanderbilt University.
+
+ If you have any suggestions, additions, comments, or questions, please
+ let [17]me know.
+
+ [18]Douglas C. Schmidt
+ _________________________________________________________________
+
+ Back to the [19]ACE home page.
References
-1. http://www.cs.wustl.edu/~schmidt/ACE.html
-2. http://www.cs.wustl.edu/~schmidt/TAO.html
-3. http://www.cs.wustl.edu/~schmidt/
-4. http://www.cs.wustl.edu/~schmidt/ACE-members.html
-5. http://www.wustl.edu/
-6. http://www.uci.edu/
-7. http://www.vanderbilt.edu/
-8. mailto:doc_group@cs.wustl.edu
-9. http://www.cs.wustl.edu/~schmidt/ACE-users.html
-10. http://www.riverace.com/
-11. http://www.theaceorb.com/
-12. http://www.prismtechnologies.com/
-13. http://www.cs.wustl.edu/~schmidt/ACE.html
-14. http://www.cs.wustl.edu/~schmidt/TAO.html
-15. http://www.cs.wustl.edu/~schmidt/doc-center.html
-16. http://www.opensource.org/
-17. http://www.cs.wustl.edu/~schmidt/ACE-obtain.html
-18. http://www.cs.wustl.edu/~schmidt/TAO-obtain.html
-19. mailto:schmidt@cs.wustl.edu
-20. http://www.cs.wustl.edu/~schmidt/
-21. file://localhost/project/adaptive/.www-docs/ACE.html
+ 1. http://www.cs.wustl.edu/~schmidt/ACE.html
+ 2. http://www.cs.wustl.edu/~schmidt/TAO.html
+ 3. http://www.cs.wustl.edu/~schmidt/
+ 4. http://www.cs.wustl.edu/~schmidt/ACE-members.html
+ 5. http://www.wustl.edu/
+ 6. http://www.uci.edu/
+ 7. http://www.vanderbilt.edu/
+ 8. mailto:doc_group@cs.wustl.edu
+ 9. http://www.cs.wustl.edu/~schmidt/ACE-users.html
+ 10. http://www.cs.wustl.edu/~schmidt/commercial-support.html
+ 11. http://www.cs.wustl.edu/~schmidt/ACE.html
+ 12. http://www.cs.wustl.edu/~schmidt/TAO.html
+ 13. http://www.cs.wustl.edu/~schmidt/doc-center.html
+ 14. http://www.opensource.org/
+ 15. http://www.cs.wustl.edu/~schmidt/ACE-obtain.html
+ 16. http://www.cs.wustl.edu/~schmidt/TAO-obtain.html
+ 17. mailto:schmidt@cs.wustl.edu
+ 18. http://www.cs.wustl.edu/~schmidt/
+ 19. file://localhost/project/adaptive/.www-docs/ACE.html
diff --git a/THANKS b/THANKS
index 79f662a7cdb..e724797b6f8 100644
--- a/THANKS
+++ b/THANKS
@@ -1730,9 +1730,13 @@ Raymond Hoofman <raymond@charm.nl>
Jason Smith <jason@atdesk.com>
Danta Cannarozzi <djc2@cse.wustl.edu>
Valery Salamakha <ccapstan@bigpond.net.au>
+Karim Fodil-Lemelin <kfl@xiphos.ca>
+Wenlong Tang <tang_long@hotmail.com>
Marek Brudka <M.Brudka@elka.pw.edu.pl>
+Manish Jain <majain@hss.hns.com>
Robin Farine <robin.farine@acn-group.ch>
Roland Schimmack <SC@ProCom.de>
+Roy Pollock <rpollock@ghs.com>
I would particularly like to thank Paul Stephenson, who worked with me
at Ericsson in the early 1990's. Paul devised the recursive Makefile
diff --git a/ace/Future.h b/ace/Future.h
index e91a659d115..c91fca7a8ca 100644
--- a/ace/Future.h
+++ b/ace/Future.h
@@ -36,7 +36,7 @@ template <class T> class ACE_Future;
/**
* @class ACE_Future_Holder
*
- * @brief Implementation of object which has holds ACE_Future.
+ * @brief Implementation of object that holds an ACE_Future.
*/
template <class T>
class ACE_Future_Holder
@@ -60,10 +60,9 @@ protected:
* @brief ACE_Future_Observer<T>
*
* An ACE_Future_Observer object implements an object that is
- * subscribed with an ACE_Future object so that it may be
- * notified when the value of the ACE_Future object is
- * written to by a writer thread.
- * It uses the Observer pattern
+ * subscribed with an ACE_Future object so that it may be notified
+ * when the value of the ACE_Future object is written to by a writer
+ * thread. It uses the Observer pattern.
*/
template <class T>
class ACE_Future_Observer
diff --git a/ace/Handle_Set.cpp b/ace/Handle_Set.cpp
index a6a56370c9a..3a9f92526fd 100644
--- a/ace/Handle_Set.cpp
+++ b/ace/Handle_Set.cpp
@@ -372,7 +372,7 @@ ACE_Handle_Set_Iterator::operator () (void)
while (lsb == 0);
// Set index to word boundary.
- this->handle_index_ = ACE_MULT_BY_WORDSIZE(this->word_num_);
+ this->handle_index_ = ACE_MULT_BY_WORDSIZE (this->word_num_);
// Put new word_val.
this->word_val_ = lsb;
diff --git a/ace/Message_Queue_T.cpp b/ace/Message_Queue_T.cpp
index 1f0e5f71cfb..9e7cb2cf650 100644
--- a/ace/Message_Queue_T.cpp
+++ b/ace/Message_Queue_T.cpp
@@ -852,8 +852,7 @@ ACE_Message_Queue<ACE_SYNCH_USE>::dequeue_head_i (ACE_Message_Block *&first_item
if (this->head_ == 0)
this->tail_ = 0;
else
- // The prev pointer of the first message block has to point to
- // NULL...
+ // The prev pointer of first message block must point to 0...
this->head_->prev (0);
size_t mb_bytes = 0;
@@ -868,6 +867,10 @@ ACE_Message_Queue<ACE_SYNCH_USE>::dequeue_head_i (ACE_Message_Block *&first_item
if (this->cur_count_ == 0 && this->head_ == this->tail_)
this->head_ = this->tail_ = 0;
+ // Make sure that the prev and next fields are 0!
+ first_item->prev (0);
+ first_item->next (0);
+
// Only signal enqueueing threads if we've fallen below the low
// water mark.
if (this->cur_bytes_ <= this->low_water_mark_
@@ -904,29 +907,20 @@ ACE_Message_Queue<ACE_SYNCH_USE>::dequeue_prio_i (ACE_Message_Block *&dequeued)
// If every message block is the same priority, pass back the first one
if (chosen == 0)
- {
- chosen = this->head_;
- }
+ chosen = this->head_;
+
// Patch up the queue. If we don't have a previous
// then we are at the head of the queue.
if (chosen->prev () == 0)
- {
- this->head_ = chosen->next ();
- }
+ this->head_ = chosen->next ();
else
- {
- chosen->prev ()->next (chosen->next ());
- }
+ chosen->prev ()->next (chosen->next ());
if (chosen->next () == 0)
- {
- this->tail_ = chosen->prev ();
- }
+ this->tail_ = chosen->prev ();
else
- {
- chosen->next ()->prev (chosen->prev ());
- }
+ chosen->next ()->prev (chosen->prev ());
// Pass back the chosen block
dequeued = chosen;
@@ -943,6 +937,10 @@ ACE_Message_Queue<ACE_SYNCH_USE>::dequeue_prio_i (ACE_Message_Block *&dequeued)
if (this->cur_count_ == 0 && this->head_ == this->tail_)
this->head_ = this->tail_ = 0;
+ // Make sure that the prev and next fields are 0!
+ dequeued->prev (0);
+ dequeued->next (0);
+
// Only signal enqueueing threads if we've fallen below the low
// water mark.
if (this->cur_bytes_ <= this->low_water_mark_
@@ -988,6 +986,10 @@ ACE_Message_Queue<ACE_SYNCH_USE>::dequeue_tail_i (ACE_Message_Block *&dequeued)
if (this->cur_count_ == 0 && this->head_ == this->tail_)
this->head_ = this->tail_ = 0;
+ // Make sure that the prev and next fields are 0!
+ dequeued->prev (0);
+ dequeued->next (0);
+
// Only signal enqueueing threads if we've fallen below the low
// water mark.
if (this->cur_bytes_ <= this->low_water_mark_
@@ -1015,40 +1017,28 @@ ACE_Message_Queue<ACE_SYNCH_USE>::dequeue_deadline_i (ACE_Message_Block *&dequeu
ACE_Message_Block* chosen = 0;
ACE_Time_Value deadline = ACE_Time_Value::max_time;
for (ACE_Message_Block *temp = this->head_; temp != 0; temp = temp->next ())
- {
- if (temp->msg_deadline_time () < deadline)
- {
- deadline = temp->msg_deadline_time ();
- chosen = temp;
- }
- }
+ if (temp->msg_deadline_time () < deadline)
+ {
+ deadline = temp->msg_deadline_time ();
+ chosen = temp;
+ }
// If every message block is the same deadline time,
// pass back the first one
if (chosen == 0)
- {
- chosen = this->head_;
- }
+ chosen = this->head_;
// Patch up the queue. If we don't have a previous
// then we are at the head of the queue.
if (chosen->prev () == 0)
- {
- this->head_ = chosen->next ();
- }
+ this->head_ = chosen->next ();
else
- {
- chosen->prev ()->next (chosen->next ());
- }
+ chosen->prev ()->next (chosen->next ());
if (chosen->next () == 0)
- {
- this->tail_ = chosen->prev ();
- }
+ this->tail_ = chosen->prev ();
else
- {
- chosen->next ()->prev (chosen->prev ());
- }
+ chosen->next ()->prev (chosen->prev ());
// Pass back the chosen block
dequeued = chosen;
@@ -1065,6 +1055,10 @@ ACE_Message_Queue<ACE_SYNCH_USE>::dequeue_deadline_i (ACE_Message_Block *&dequeu
if (this->cur_count_ == 0 && this->head_ == this->tail_)
this->head_ = this->tail_ = 0;
+ // Make sure that the prev and next fields are 0!
+ dequeued->prev (0);
+ dequeued->next (0);
+
// Only signal enqueueing threads if we've fallen below the low
// water mark.
if (this->cur_bytes_ <= this->low_water_mark_
@@ -1102,8 +1096,8 @@ ACE_Message_Queue<ACE_SYNCH_USE>::peek_dequeue_head (ACE_Message_Block *&first_i
}
template <ACE_SYNCH_DECL> int
-ACE_Message_Queue<ACE_SYNCH_USE>::wait_not_full_cond
- (ACE_Guard<ACE_SYNCH_MUTEX_T> &, ACE_Time_Value *timeout)
+ACE_Message_Queue<ACE_SYNCH_USE>::wait_not_full_cond (ACE_Guard<ACE_SYNCH_MUTEX_T> &,
+ ACE_Time_Value *timeout)
{
int result = 0;
diff --git a/ace/OS_Dirent.inl b/ace/OS_Dirent.inl
index c1f227fbb78..314f33f32da 100644
--- a/ace/OS_Dirent.inl
+++ b/ace/OS_Dirent.inl
@@ -109,6 +109,7 @@ ACE_OS_Dirent::readdir_r (ACE_DIR *dirp,
(!defined (sun) && (defined (ACE_HAS_PTHREADS_STD) || \
defined (ACE_HAS_PTHREADS_DRAFT7) || \
defined (__USE_POSIX) || \
+ defined (__FreeBSD__) || \
defined (HPUX_11)))
# if defined (__GNUG__) && defined (DIGITAL_UNIX)
return readdir_r (dirp, entry, result);
diff --git a/ace/POSIX_Proactor.cpp b/ace/POSIX_Proactor.cpp
index 6dda757c3dd..b28b38a0430 100644
--- a/ace/POSIX_Proactor.cpp
+++ b/ace/POSIX_Proactor.cpp
@@ -927,17 +927,16 @@ void ACE_POSIX_AIOCB_Proactor::check_max_aio_num ()
aiocb_list_max_size_ > (unsigned long) max_os_aio_num)
aiocb_list_max_size_ = max_os_aio_num;
-#if defined (HPUX)
- // Although HPUX 11.00 allows to start 2048 AIO's
- // for all process in system
- // it has a limit 256 max elements for aio_suspend ()
- // It is a pity, but ...
+#if defined (HPUX) || defined (__FreeBSD__)
+ // Although HPUX 11.00 allows to start 2048 AIO's for all process in
+ // system it has a limit 256 max elements for aio_suspend () It is a
+ // pity, but ...
long max_os_listio_num = ACE_OS::sysconf (_SC_AIO_LISTIO_MAX);
if (max_os_listio_num > 0
&& aiocb_list_max_size_ > (unsigned long) max_os_listio_num)
aiocb_list_max_size_ = max_os_listio_num;
-#endif /* HPUX */
+#endif /* HPUX || __FreeBSD__ */
// check for user-defined value
// ACE_AIO_MAX_SIZE if defined in POSIX_Proactor.h