diff options
author | Paolo Carlini <pcarlini@suse.de> | 2004-02-08 17:11:07 +0000 |
---|---|---|
committer | Paolo Carlini <paolo@gcc.gnu.org> | 2004-02-08 17:11:07 +0000 |
commit | fd95f498f35fd109a26b7cf6a8196daf810682c9 (patch) | |
tree | acbefd13be11847a32f4dfc0bdff61346b8fdc98 | |
parent | c79751b99d7abc4cb48181fb81155e3022cba517 (diff) | |
download | gcc-fd95f498f35fd109a26b7cf6a8196daf810682c9.zip gcc-fd95f498f35fd109a26b7cf6a8196daf810682c9.tar.gz gcc-fd95f498f35fd109a26b7cf6a8196daf810682c9.tar.bz2 |
basic_string.tcc (assign(const _CharT*, size_type)): When working in place remember to set the state to sharable (otherwise...
2004-02-08 Paolo Carlini <pcarlini@suse.de>
* include/bits/basic_string.tcc (assign(const _CharT*, size_type)):
When working in place remember to set the state to sharable
(otherwise, _M_mutate does it).
From-SVN: r77487
-rw-r--r-- | libstdc++-v3/ChangeLog | 6 | ||||
-rw-r--r-- | libstdc++-v3/include/bits/basic_string.tcc | 1 |
2 files changed, 7 insertions, 0 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 97126b3..a8a0edc 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,9 @@ +2004-02-08 Paolo Carlini <pcarlini@suse.de> + + * include/bits/basic_string.tcc (assign(const _CharT*, size_type)): + When working in place remember to set the state to sharable + (otherwise, _M_mutate does it). + 2004-02-08 Bernardo Innocenti <bernie@develer.com> * include/bits/allocator.h, include/bits/basic_ios.h, diff --git a/libstdc++-v3/include/bits/basic_string.tcc b/libstdc++-v3/include/bits/basic_string.tcc index 729b86c..4a79333 100644 --- a/libstdc++-v3/include/bits/basic_string.tcc +++ b/libstdc++-v3/include/bits/basic_string.tcc @@ -273,6 +273,7 @@ namespace std traits_type::copy(_M_data(), __s, __n); else if (__pos) traits_type::move(_M_data(), __s, __n); + _M_rep()->_M_set_sharable(); _M_rep()->_M_length = __n; _M_data()[__n] = _Rep::_S_terminal; // grr. return *this; |