Subject: [Boost-bugs] [Boost C++ Libraries] #9016: filesystem::is_directory() returns false for junction
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-08-20 03:33:47
#9016: filesystem::is_directory() returns false for junction
------------------------------+------------------------
Reporter: harris.pc@⦠| Owner: bemandawes
Type: Bugs | Status: new
Milestone: To Be Determined | Component: filesystem
Version: Boost 1.53.0 | Severity: Problem
Keywords: |
------------------------------+------------------------
On Windows 7, create a Junction (to another folder).
You can use the "hardlink shell ext" tool to make the junctions/symlinks
(google for it):
Or the usual command line tools.
The boost::is_directory(target) returns false on this junction.
I used this Junction technique to move c:\Users\Me\AppData\Local\Temp to
another disk, and as a consequence, temp_directory_path() will always fail
because that host path is not treated as a directory.
ie the line in temp_directory_path():
{{{
if ((ec&&!is_directory(p, *ec))||(!ec&&!is_directory(p)))
}}}
cheers,
Paul
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/9016> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:13 UTC