Opened 13 years ago
Closed 11 years ago
#3714 closed Bugs (fixed)
file_system::path::assign clears and appends, precluding assignment to a leading substring of self
Reported by: | Owned by: | Beman Dawes | |
---|---|---|---|
Milestone: | Boost 1.42.0 | Component: | filesystem |
Version: | Boost 1.41.0 | Severity: | Problem |
Keywords: | path assign leading substring | Cc: |
Description
template <class InputIterator> basic_path & assign( InputIterator first, InputIterator last )
{ m_path.clear(); append( first, last ); return *this; }
this implementation precludes assigning to a path a leading substring of that path itself because most impl's string_type::clear will end up setting the first char to 0. I could not find documentation that explicitly precludes this.
As stated most impl's will end up setting the first char to 0, so this seems to fix in those implementations:
{
typename string_type::value_type c; if(first!=last)c = *first; m_path.clear(); append( first, last ); if(first!=last) mPath[0] = c; return *this;
}
Change History (3)
comment:1 by , 13 years ago
comment:2 by , 11 years ago
comment:3 by , 11 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
m_path[0] = c;