# HG changeset patch # User jwe # Date 1033140389 0 # Node ID e0e95e9aad7bc6bbd89e35d1d024e03f0fa6482c # Parent 593e213748b9c5cacf794124c24dbcd24118eb69 [project @ 2002-09-27 15:26:28 by jwe] diff -r 593e213748b9 -r e0e95e9aad7b src/ChangeLog --- a/src/ChangeLog Fri Sep 27 00:53:47 2002 +0000 +++ b/src/ChangeLog Fri Sep 27 15:26:29 2002 +0000 @@ -1,3 +1,10 @@ +2002-09-27 John W. Eaton + + * file-io.cc (fopen_mode_to_ios_mode): Set ios::ate instead of + ios::app for "a+" mode. + * oct-stream.cc (octave_stream::mode_as_string): Recognize + ios::ate, not ios::app as "a+" mode. + 2002-09-26 Paul Kienzle * sysdep.cc: Include conio.h if it exists. diff -r 593e213748b9 -r e0e95e9aad7b src/file-io.cc --- a/src/file-io.cc Fri Sep 27 00:53:47 2002 +0000 +++ b/src/file-io.cc Fri Sep 27 15:26:29 2002 +0000 @@ -114,7 +114,7 @@ else if (mode == "w+") retval = std::ios::in | std::ios::out | std::ios::trunc; else if (mode == "a+") - retval = std::ios::in | std::ios::out | std::ios::app; + retval = std::ios::in | std::ios::out | std::ios::ate; else if (mode == "rb") retval = std::ios::in | std::ios::binary; else if (mode == "wb") @@ -127,7 +127,7 @@ retval = (std::ios::in | std::ios::out | std::ios::trunc | std::ios::binary); else if (mode == "a+b") - retval = (std::ios::in | std::ios::out | std::ios::app + retval = (std::ios::in | std::ios::out | std::ios::ate | std::ios::binary); else ::error ("invalid mode specified"); diff -r 593e213748b9 -r e0e95e9aad7b src/oct-stream.cc --- a/src/oct-stream.cc Fri Sep 27 00:53:47 2002 +0000 +++ b/src/oct-stream.cc Fri Sep 27 15:26:29 2002 +0000 @@ -2835,7 +2835,7 @@ retval = "r+"; else if (in_mode == std::ios::in | std::ios::out | std::ios::trunc) retval = "w+"; - else if (in_mode == std::ios::in | std::ios::out | std::ios::app) + else if (in_mode == std::ios::in | std::ios::out | std::ios::ate) retval = "a+"; else if (in_mode == std::ios::in | std::ios::binary) retval = "rb"; @@ -2849,7 +2849,7 @@ else if (in_mode == std::ios::in | std::ios::out | std::ios::trunc | std::ios::binary) retval = "w+b"; - else if (in_mode == std::ios::in | std::ios::out | std::ios::app + else if (in_mode == std::ios::in | std::ios::out | std::ios::ate | std::ios::binary) retval = "a+b";