Set boost::filesystem::default_name_check(boost::filesystem::native); before using path objects as boost uses posix name checking by default. This has been changed in boost version
1.34.
My code looks something like this:
try{
fs::path full_path (fs::initial_path());
full_path = fs::system_complete(fs::path(filePath, fs::native));
fs::create_directories(full_path);
INFO << "Directory successfully created: "
<< full_path.native_directory_string() << std::endl;
retval = true;
}catch(std::exception& ex){
WARN << "Could not create directory: " << filePath
<< " " << ex.what() << std::endl;
}
return retval;
==========
When filePath is "c:\a\b\", boost throws an exception saying invalid
path name c:\a\b\ in path "c:\a\b\"
when filePath is "c:\\a\\b\\", boost throws exactly the same exception
when filePath is "c:/a/b/", the exception string changes saying
invalid path name "c:" in path "c:/a/b/"
What am I doing wrong?
-Vivek
_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users