[filesystem 1.32.0] bug in name checking for win32 native paths

I have two paths, both set to c:\ and if I concatenate them using operator /, I get a resultant path of c:\c:\ which is invalid, but the namechecking doesn't throw an execption. e.g. void test(void) { boost::filesystem::path p("C:\\", boost::filesystem::native); boost::filesystem::path p2(p); p2 = p2 / p; } p2 results as "c:/c:/" (the internal representation). Cheers Russell

"Russell Hind" <rh_gmane@mac.com> wrote in message news:d8rjab$64u$1@sea.gmane.org...
I have two paths, both set to c:\ and if I concatenate them using operator /, I get a resultant path of c:\c:\ which is invalid, but the namechecking doesn't throw an execption. e.g.
void test(void) { boost::filesystem::path p("C:\\", boost::filesystem::native); boost::filesystem::path p2(p); p2 = p2 / p; }
p2 results as "c:/c:/" (the internal representation).
I'm reluctant to modify the code involved. It is messy, and changes are likely to introduce new errors close to release. The whole approach to checking changes with the i18n release, too, so any advantage gained is short-lived. Thanks for the report, --Beman
participants (2)
-
Beman Dawes
-
Russell Hind