id summary reporter owner description type status milestone component version severity resolution keywords cc 4826 filesystem::path::operator/=(const value_type* next_p) anonymous Beman Dawes "It might be nice if the code checked if next_p+1 and next_p+2 existed before accessing them. The code in the iterator pair constructor immediately below does make the checks yet that seems to have failed to get into path::operator/=(const value_type* next_p) reported on 1.36 exists 1.44 filesystem/V2 template basic_path& basic_path::operator/=(const value_type* next_p ){ size_t len = typename String::traits_type::length(next_p); if(len!=0){ if(len>=3){ if ( *next_p == slash::value && *(next_p+1) == slash::value && *(next_p+2) == colon::value ) { next_p += 3; } } // append slash::value if needed if ( !empty() && *next_p != 0 && !detail::is_separator( *next_p ) ){ m_append_separator_if_needed(); } for ( ; *next_p != 0; ++next_p ){ m_append( *next_p ); } } return *this; } OR EVEN template basic_path& basic_path::operator/=(const value_type* next_p ){ size_t len = typename String::traits_type::length(next_p); if (len) operator/=(next_p,next_p+len); return *this; } " Bugs closed To Be Determined filesystem Boost 1.36.0 Problem invalid filesystem path operator/=