Boost logo

Boost :

From: SourceForge.net (noreply_at_[hidden])
Date: 2005-03-05 02:23:46


Patches item #1157160, was opened at 2005-03-05 07:23
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=307586&aid=1157160&group_id=7586

Category: None
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: Steven Weiss (fotzor)
Assigned to: Nobody/Anonymous (nobody)
Summary: patch for boost::filesystem

Initial Comment:
hi,
when you try to get the branch path of this
"c:\some_dir\some_file.txt"
under windows the branch path should be "c:\some_dir".
what is returned instead is "c:" which isn't correct.
so here's the fix:

in path_posix_windows.cpp:

  std::string::size_type leaf_pos( const std::string & str,
    std::string::size_type end_pos ) // end_pos is
past-the-end position
  // return 0 if str itself is leaf (or empty)
  {
    if ( end_pos && str[end_pos-1] == '/' ) return
end_pos-1;
    
    std::string::size_type pos( str.find_last_of( '/',
end_pos-1 ) );
# ifdef BOOST_WINDOWS
        if ( pos == std::string::npos ) pos =
str.find_last_of( '\', end_pos-1 ); //
ADDED
    if ( pos == std::string::npos ) pos =
str.find_last_of( ':', end_pos-2 );
# endif

    return ( pos == std::string::npos // path itself
must be a leaf (or empty)
# ifdef BOOST_WINDOWS
      || (pos == 1 && (str[0] == '/' || str[0] ==
'\')) // or share // ADDED
# endif
      ) ? 0 // so leaf is entire string
        : pos + 1; // or starts after delimiter
  }

mfg steven

----------------------------------------------------------------------

You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=307586&aid=1157160&group_id=7586

-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
Boost-bugs mailing list
Boost-bugs_at_[hidden]
https://lists.sourceforge.net/lists/listinfo/boost-bugs


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk