Enrico Forestieri <[EMAIL PROTECTED]> writes: | On Sun, Jul 23, 2006 at 10:37:52AM +0200, Georg Baum wrote: | | > Am Sonntag, 23. Juli 2006 02:46 schrieb Enrico Forestieri: | > > On Sat, Jul 22, 2006 at 10:11:13PM +0200, Georg Baum wrote: | > > | > > > + if (!npath.is_complete()) | > > > + return "./" + npath.string() + '/'; | > > | > > Please, use | > > | > > if (!os::is_absolute_path(npath.string())) | > > | > > here, as on cygwin both c:/xxx and /xxx are absolute paths and this is | > > not caught by boost. | > | > Then you should report this to boost. | | Do you mean that you will not make the change?
Boost does this: bool path::is_complete() const { # ifdef BOOST_WINDOWS return m_path.size() > 2 && ( (m_path[1] == ':' && m_path[2] == '/') // "c:/" || (m_path[0] == '/' && m_path[1] == '/') // "//share" || m_path[m_path.size()-1] == ':' ); # else return m_path.size() && m_path[0] == '/'; # endif } What you are saying is that "/foo/bar/" is not caught as an absolute path in windows? Something wich strictly speaking is true, is is not an absolute path. (Or at the very least it is not complete.) -- Lgb