summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog15
-rw-r--r--ChangeLogs/ChangeLog-02a15
-rw-r--r--ChangeLogs/ChangeLog-03a15
-rw-r--r--ace/OS.i8
-rw-r--r--ace/Svc_Conf.l2
-rw-r--r--ace/Svc_Conf_l.cpp2
6 files changed, 55 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 003091b2039..37907c24433 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+Fri Apr 26 14:05:49 2002 Chad Elliott <elliott_c@ociweb.com>
+
+ * ace/OS.i:
+
+ Modify the ACE_OS::fflush() method to not call the system
+ implementation on VxWorks if the FILE* is 0. This causes
+ problems for the OS. Thanks to Michael Kirher
+ <Michael.Kircher@mchp.siemens.de> for reporting and providing
+ a fix for this.
+
+ * ace/Svc_Conf.l:
+ * ace/Svc_Conf_l.cpp:
+
+ Use ACE_OS::fflush() instead of fflush().
+
Fri Apr 26 13:22:18 2002 Douglas C. Schmidt <schmidt@tango.doc.wustl.edu>
* ace/Svc_Handler.{h,cpp}: Applied the Thread-safe Interface pattern
diff --git a/ChangeLogs/ChangeLog-02a b/ChangeLogs/ChangeLog-02a
index 003091b2039..37907c24433 100644
--- a/ChangeLogs/ChangeLog-02a
+++ b/ChangeLogs/ChangeLog-02a
@@ -1,3 +1,18 @@
+Fri Apr 26 14:05:49 2002 Chad Elliott <elliott_c@ociweb.com>
+
+ * ace/OS.i:
+
+ Modify the ACE_OS::fflush() method to not call the system
+ implementation on VxWorks if the FILE* is 0. This causes
+ problems for the OS. Thanks to Michael Kirher
+ <Michael.Kircher@mchp.siemens.de> for reporting and providing
+ a fix for this.
+
+ * ace/Svc_Conf.l:
+ * ace/Svc_Conf_l.cpp:
+
+ Use ACE_OS::fflush() instead of fflush().
+
Fri Apr 26 13:22:18 2002 Douglas C. Schmidt <schmidt@tango.doc.wustl.edu>
* ace/Svc_Handler.{h,cpp}: Applied the Thread-safe Interface pattern
diff --git a/ChangeLogs/ChangeLog-03a b/ChangeLogs/ChangeLog-03a
index 003091b2039..37907c24433 100644
--- a/ChangeLogs/ChangeLog-03a
+++ b/ChangeLogs/ChangeLog-03a
@@ -1,3 +1,18 @@
+Fri Apr 26 14:05:49 2002 Chad Elliott <elliott_c@ociweb.com>
+
+ * ace/OS.i:
+
+ Modify the ACE_OS::fflush() method to not call the system
+ implementation on VxWorks if the FILE* is 0. This causes
+ problems for the OS. Thanks to Michael Kirher
+ <Michael.Kircher@mchp.siemens.de> for reporting and providing
+ a fix for this.
+
+ * ace/Svc_Conf.l:
+ * ace/Svc_Conf_l.cpp:
+
+ Use ACE_OS::fflush() instead of fflush().
+
Fri Apr 26 13:22:18 2002 Douglas C. Schmidt <schmidt@tango.doc.wustl.edu>
* ace/Svc_Handler.{h,cpp}: Applied the Thread-safe Interface pattern
diff --git a/ace/OS.i b/ace/OS.i
index f4c538c5b78..b4872718bdc 100644
--- a/ace/OS.i
+++ b/ace/OS.i
@@ -5769,6 +5769,14 @@ ACE_OS::fflush (FILE *fp)
ACE_OSCALL_RETURN (::pace_fflush (fp), int, -1);
#elif !defined (ACE_HAS_WINCE)
ACE_OS_TRACE ("ACE_OS::fflush");
+#if defined (VXWORKS)
+ if (fp == 0)
+ {
+ // Do not allow fflush(0) on VxWorks
+ return 0;
+ }
+#endif /* VXWORKS */
+
ACE_OSCALL_RETURN (::fflush (fp), int, -1);
#else
ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL(::FlushFileBuffers (fp),
diff --git a/ace/Svc_Conf.l b/ace/Svc_Conf.l
index 3e18b9af1eb..427f55da1a5 100644
--- a/ace/Svc_Conf.l
+++ b/ace/Svc_Conf.l
@@ -93,7 +93,7 @@ inactive { return token (ACE_INACTIVE); }
int
yywrap (void)
{
- ::fflush (yyin);
+ ACE_OS::fflush (yyin);
yytext[0] = '#';
yyleng = 0;
diff --git a/ace/Svc_Conf_l.cpp b/ace/Svc_Conf_l.cpp
index 720d8260f66..ec92eb3473f 100644
--- a/ace/Svc_Conf_l.cpp
+++ b/ace/Svc_Conf_l.cpp
@@ -1801,7 +1801,7 @@ int main()
int
ace_yywrap (void)
{
- ::fflush (ace_yyin);
+ ACE_OS::fflush (ace_yyin);
ace_yytext[0] = '#';
ace_yyleng = 0;