std_sstream.h (str()): Revert the best of the previous 'improvement'...

2003-05-01  Paolo Carlini  <pcarlini@unitus.it>

	* include/std/std_sstream.h (str()): Revert the best of the
	previous 'improvement', incorrect due to the COW nature of
	v3 basic_string; simplify.

From-SVN: r66357
This commit is contained in:
Paolo Carlini 2003-05-02 01:20:33 +02:00 committed by Paolo Carlini
parent f4731b64d2
commit e70b1b7788
2 changed files with 8 additions and 7 deletions

View File

@ -1,3 +1,9 @@
2003-05-01 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_sstream.h (str()): Revert the best of the
previous 'improvement', incorrect due to the COW nature of
v3 basic_string; simplify.
2003-05-01 Paolo Carlini <pcarlini@unitus.it>
* include/bits/streambuf.tcc (__copy_streambufs): Adjust the

View File

@ -136,14 +136,9 @@ namespace std
__string_type __ret = _M_string;
if (this->_M_mode & ios_base::out)
{
// This is the deal: _M_string.size() is a value that
// represents the size of the initial string used to
// created the buffer, and may not be the correct size of
// the current stringbuf internal buffer.
const __size_type __len = _M_string.size();
const __size_type __nlen = this->_M_out_lim
- this->_M_out_beg;
if (__nlen > __len)
- this->_M_out_beg;
if (__nlen)
__ret = __string_type(this->_M_out_beg,
this->_M_out_beg + __nlen);
}