id summary reporter owner description type status milestone component version severity resolution keywords cc 178 boost::filesystem fails in posix with files containing ':' nobody beman_dawes "{{{ (Too bad one can't mail to the mailing lists without registering first. My email is flux-boost@inside.org.) I have Boost 1.30.0-4 from Debian GNU/Linux. The exception I'm getting for merely handling such a path: boost::filesystem::path: invalid name ""foo:_Kuu"" in path: ""foo:_Kuu"" The problem seems to stem from libs/filesystem/path_posix_windows.cpp, where a function called generic_name checks against a ton of letters that pose a problem in Windows - however, the only characters not legal in a Unix-filename are / and \0. Is it really a job of this class to check for path-validity anyway? Well I suppose that has been discussed already ;). The function checks also for spaces at the beginning and at the end of a segment, surely one would imagine they are legal in Windows too?-o I didn't fully investigate the matter, but ///tmp///foo is also a legal unix-path, albeit redundant, I hope that doesn't pose a problem? My hackish fix: bool generic_name( const std::string & name ) { #ifdef BOOST_WINDOWS return name.size() != 0 && name.find_first_of( invalid_generic ) == std::string::npos && name != ""."" && name != "".."" && *name.begin() != ' ' && *(name.end()-1) != ' '; #else return name.size() != 0 && name != ""."" && name != ""..""; #endif } }}}" Bugs closed None None Works For Me