Commit Graph

483 Commits

Author SHA1 Message Date
Andrey Semashev
4e639c353e Fixed compilation in C++03 mode caused by incorrect casts of scoped enums. 2018-12-09 17:10:22 +03:00
Andrey Semashev
3a90694383 Export dir_entry members instead of the class. Move rdit impl to the library.
This should silence MSVC warnings about path not being exported when used in
directory_entry. This should also remove unnecessary references to the library
for the inline members of directory_entry.

Removed library exports markup for file_status as there were nothing to export.
Also marked its methods constexpr.

Moved recursive_directory_iterator implementation to the library. MSVC should
not issue warnings since we're only exporting member functions.

Updated BOOST_SCOPED_ENUM emulation use to the more recent macros. Made sure
recursive_directory_iterator implementation uses binary compatible
representation for scoped enums between the library and user's code regardless
of C++ versions used.
2018-12-09 15:51:35 +03:00
Andrey Semashev
ed5f5aa080 Refactored current_path() and read_symlink(), corrected errno handling.
The current_path() and read_symlink() algorithms had the potential to cause
memory exhaustion as they were looping trying to allocate exponentially larger
buffers without limit. Now the common limit is defined to 16MiB, the library
will not accept larger paths from the system calls. This is mostly a precaution
against broken or maliciously tampered with filesystems. Also, the functions
will start with a larger stack-based buffer to avoid dynamic memory allocation
at all in the best case scenario.

Also, increased the size of the buffer used by copy_file().

Corrected errno uses in a few places and made sure errno is read before it could
be modified by any system calls made by the error handling machinery.
2018-12-09 14:22:54 +03:00
Andrey Semashev
1428b4f55c Changed the way path exports are declared. Some code cleanup.
Instead of exporting the whole path class, export only the functions that
are actually implemented in the shared library and leave the rest inline.
Also, move the definition of the static constants of the path class to
the header to avoid problems with exporting them from the shared library,
as observed with various MSVC versions and also gcc 7.3 from MinGW-w64.

Also, reduced code duplication and added a more efficient operator/
implementation when rvalue references are available.
2018-12-09 01:26:24 +03:00
Andrey Semashev
ab4806b7f6 Added a workaround for MSVC <= 12 linking bug because of multiple definitions of path static constants. 2018-11-25 01:16:14 +03:00
Andrey Semashev
0703e62a31 Fixed Boost.WinAPI namespace qualification. 2018-11-24 23:48:38 +03:00
Andrey Semashev
28d0a6b763 Improve compatibility with GetProcAddress on Windows CE.
Use Boost.WinAPI to work around Windows SDK differences with Windows CE.

Closes https://github.com/boostorg/filesystem/pull/23.
2018-11-24 21:34:10 +03:00
Andrey Semashev
8de281773f Added definitions for path static constants.
This fixes compilation if user's code attempts to ODR-use the constants.

Fixes https://svn.boost.org/trac10/ticket/12759.
Closes https://github.com/boostorg/filesystem/pull/40.
2018-11-24 20:34:44 +03:00
Andrey Semashev
8c9bba511c More robust error handling in directory_iterator_increment. 2018-11-24 20:15:40 +03:00
Andrey Semashev
8e4a631231 Fixed termination on OOM in directory iterators. Added non-throwing rdit::pop().
When an out-of-memory condition is detected (either by catching std::bad_alloc
or by receiving null on memory allocation), do not propagate the exception and
set an appropriate error code instead. This fix only concerns directory_iterator
and recursive_directory_iterator for now; it is possible that other operations
remain not ready for memory allocation failures.

Also, added recursive_directory_iterator::pop() that returns error code instead
of throwing an exception. This overload is present in C++17.

Fixes https://github.com/boostorg/filesystem/issues/58.
Closes https://github.com/boostorg/filesystem/pull/63.
2018-11-24 18:36:54 +03:00
Andrey Semashev
498a090b53 Added support for movability to directory iterators, code cleanup.
Switched directory_iterator and recursive_directory_iterator to use
intrusive_ptr internally to reduce the iterator size and avoid virtual
function calls. The iterators now support move semantics. Fixed a warning
about deprecated in C++20 implicit generation of copy constructor and
assignment operator if there is a user-defined destructor.

Also updated a few includes to refer to non-deprecated headers. Trimmed
trailing spaces in headers and sources.
2018-11-24 15:06:01 +03:00
Andrey Semashev
7dc1712f2d Fix compilation on QNX up to and including version 7.
Reportedly, QNX does not support fchmodat, although it may support it
in the future.

Fixes https://github.com/boostorg/filesystem/issues/89.
2018-11-12 17:52:18 +03:00
Peter Dimov
21494b5f98 Do not convert to wstring on POSIX in unique_path 2018-09-17 23:16:42 +03:00
Peter Dimov
e6df54ce81 Return correct count from remove_all_aux on error 2018-09-07 01:34:07 +03:00
Peter Dimov
350109a991 Fix issue identified in PR #53 2018-09-06 23:46:25 +03:00
Peter Dimov
5e411be147 Merge branch 'feature/readdir_r' into develop 2018-09-06 16:45:14 +03:00
Peter Dimov
cdbf5a0be1
Merge pull request #44 from DanielaE/fix/narrowing
fix compiler warnings about narrowing conversions
2018-09-06 05:57:57 +03:00
Peter Dimov
e560896924
Merge pull request #49 from dkolsen-pgi/pgi-compiler-support
Update PGI C++ compiler support
2018-09-06 05:15:43 +03:00
Peter Dimov
0f6e3f0686 Merge branch 'remove_readdir_r' of https://github.com/Lastique/filesystem into feature/readdir_r 2018-09-06 04:28:31 +03:00
Peter Dimov
62217174c6 Merge branch 'patch-2' of https://github.com/rcombs/filesystem into feature/70-71-copy 2018-09-05 23:26:21 +03:00
Daniela Engert
d88945564a
fix compiler warnings about narrowing conversions
Signed-off-by: Daniela Engert <dani@ngrt.de>
2018-07-19 19:45:17 +02:00
Mike Crowe
b8d259fb88 directory_iterator_construct: Avoid provoking undefined behaviour
The directory_iterator(const path& p) constructor calls
detail::directory_iterator_construct passing nullptr (as 0) for the ec
parameter.

detail::directory_iterator_construct may call
directory_iterator::increment(*ec) which dereferences the nullptr provoking
undefined behaviour.

On GCC, and probably many other compilers, it seems that this merely causes
a null reference to be passed to directory_iterator::increment which in
turn, turns it back into nullptr when calling
detail::directory_iterator_increment which knows how to deal with the
nullptr and is happy.

Unfortunately, directory_iterator::increment(system::error_code& ec) is
marked noexcept (unlike the version that takes no arguments) but
detail::directory_iterator_increment throws exceptions when ec == nullptr.
This results in std::terminate being called.

The simplest way to fix this is for detail::directory_iterator_construct to
just pass on the potentially-nullptr ec argument to
detail::directory_iterator_increment rather than going via the
potentially-noexcept directory_iterator::increment member function.

(Discovered in the field with Boost 1.63 and a faulty disk. I managed to
reproduce the problem by teaching dir_itr_increment to pretend that
readdir_r_simulator returned an error when it saw a certain filename.)
2018-06-29 14:53:47 +01:00
Peter Dimov
5a93351bfd
Merge pull request #51 from hammond/sysconf-errno
Reset 'errno' after 'sysconf()'
2018-06-05 13:11:02 +03:00
Andrey Semashev
f710a2fc9a Disable readdir_r on Android.
This is an explicit fix for this bug:

https://github.com/boostorg/filesystem/issues/72

Android developers recommend using readdir instead of readdir_r as it is
already thread-safe:

http://elliotth.blogspot.com/2012/10/how-not-to-use-readdirr3.html
2018-04-10 19:16:30 +03:00
Rodger Combs
6fb9281d2a
Fix undefined behavior in detail::copy
Call the detail versions, which take pointers, rather than converting the pointers to references and back (which is UB).
2018-04-06 03:24:37 -05:00
Alexei Khlebnikov
3d3d504b25 Do not define _FILE_OFFSET_BITS for Android APIs < 24. 2018-03-06 23:53:03 +01:00
Alexei Khlebnikov
f721c56ea6 Improved comment about why _FILE_OFFSET_BITS should be defined for most systems. 2018-03-04 16:56:59 +01:00
Andrey Semashev
716567aa9e Added a check for whether the size argument to resize_file exceeds off_t limit.
This check is especially useful on 32-bit systems which have no support for
64-bit file offsets (like older Android).
2018-03-03 17:49:23 +01:00
Alexei Khlebnikov
b37e83640a Do not define _FILE_OFFSET_BITS for Android APIs < 21. 2018-03-03 17:35:28 +01:00
Alexei Khlebnikov
7717db0b3e Deduplicated and cleaned up _FILE_OFFSET_BITS #if-ery. 2018-03-03 16:50:57 +01:00
Alexei Khlebnikov
18c7f93440 Replaced for-internal-use macro __USE_FILE_OFFSET64 by for-public-use macro _FILE_OFFSET_BITS. 2018-03-03 16:47:54 +01:00
Alexei Khlebnikov
aea71c5864 Transformed _FILE_OFFSET_BITS #if-ery even more for better understanding. 2018-03-03 16:43:34 +01:00
Alexei Khlebnikov
e5b3740440 Transformed _FILE_OFFSET_BITS #if-ery for better understanding. 2018-03-03 16:39:18 +01:00
Andrey Semashev
48b8d753dd Don't use readdir_r on Linux.
readdir_r has been deprecated and has problems of its own[1]. glibc 2.24 marked
readdir_r as deprecated and may eventually remove it. At the same time, plain
readdir is thread-safe if different threads call it for different directory
streams, which is fine in our case.

[1]: http://man7.org/linux/man-pages/man3/readdir_r.3.html
2018-03-02 02:29:58 +03:00
Peter Dimov
c6a977c99f Avoid clang warning by removing the extra parentheses 2018-01-29 19:18:05 +02:00
Peter Dimov
399dd6e1d6 Use ad-hoc extension comparison to avoid initialization issues 2017-11-22 19:20:16 +02:00
hammond
1e8de36542 Reset 'errno' after 'sysconf()' 2017-08-23 17:36:46 +02:00
David Olsen
e1463acb06 Update PGI C++ compiler support
Remove an #if from operations.cpp that used to be necessary for the file to compile with PGI C++, but causes compilation errors with PGI C++ compilers of the last few years.
2017-07-26 10:44:07 -07:00
Beman
23b79b9459 Clear two -Wconversion warnings 2017-04-03 09:47:32 -04:00
Beman
7fd4214912 is_empty()overload with error_code parameter should not throw on error. Thanks to ldqrk for pull request #42 2017-04-03 09:36:43 -04:00
drgler
0e831d5c2d Extended patch for ticket #10731 and ticket #9480: Replace expensive call of RtlInitUnicodeString by wcslen and get rid of CompareStringOrdinal completely, because it has no longer any advantages. Also, replace Windows TEXT macro by selecting GetModuleHandleW with wide character argument to prevent any additional conversions. 2017-03-19 16:21:46 +01:00
drgler
14935c4c6d Extended patch for ticket #10731 and ticket #9480: Replace usage of non-portable _wcsicmp by appropriate Windows functions to realize a locale invariant case-insensitive binary Unicode comparison that match the underlying file name comparison. 2017-03-18 22:28:29 +01:00
drgler
755766a053 Patch for ticket #10731 and ticket #9480: Evaluate path.extension only once, perform (case-insensitive) string comparisons using the wchar_t variants from the CRT to prevent code conversions via path.string() calls. 2017-03-14 21:46:12 +01:00
Christoph Müllner
7f1a6992e3 Fix errno propagation in space(p, ec).
The space(p, ec) implementation assigned a wrong
error value to the given error_code object.
Instead of getting the error value from errno,
the code used the value '-1!=0'.

Signed-off-by: Christoph Müllner <christophm30@gmail.com>
2016-12-12 00:42:54 +01:00
Beman
4e4374336c Fix #7307, remove_all(dirname,ec) throws on write protected directories. This is a tough one to test. There are three internal function calls where errors might arise, and it would take too much time to write tests for each of those cases. Someday we will have Titus Winter's mock installable file system, but for now are relying on code inspection rather than testing. 2016-11-23 12:02:09 -05:00
Beman Dawes
cbefb2b9f0 Merge pull request #30 from thtrummer/develop
Fix warning, build error, for GCC under Cygwin
2016-11-23 10:46:37 -05:00
Beman
216720de55 Fix #12495, create_directories() crashes when passed empty string as path, from Samantha Ritter. Also affected create_directory(). Charles Olivi submitted a pull request with some particularly helpful test cases. 2016-11-23 09:58:43 -05:00
Thomas Trummer
3c2c9812f0 Fix warning for GCC under Cygwin 2016-07-04 14:14:11 +02:00
Giel van Schijndel
413240cc09 WinCE has no current directory
So reject attempts to change it and treat the root as the current
directory.
2015-12-16 18:09:33 +01:00
Beman
a682eaa476 Remove two constants that are no longer used. Quiets warnings. 2015-12-01 11:01:11 -05:00
Beman
2f6391b931 Add class path constexpr constants separator and dot of the type appropriate for the platform, and add class path member query functions filename_is_dot() and filename_is_dot_dot(). These add convenience and the implementations may be more efficient that user coded equivalent functions. Also add detail functions is_directory_separator() and is_element_separator(), and replace all uses of local is_separator() in path.cpp with detail::is_directory_separator(). 2015-12-01 10:17:45 -05:00
Beman
3c344a5f0b Revert to lexical functions back to being members of class path. This is not the time to redesign the library's lexical vs operational conventions. It would break existing users mental model of lexical vs operational.
See doc/relative_proposal.html#Add-lexical-functions for additional rationale.
2015-10-25 13:28:49 -04:00
Beman
7e3e5ef60c Fix #11733, Missing unistd.h include in boost/libs/filesystem/src/unique_path.cpp by apply a patch from Idar Tollefsen. 2015-10-16 16:03:45 -04:00
Beman
74c5f5fe3e Fix a forward declaration that was missed in a prior pull request. This clears a GCC warning. 2015-10-08 07:04:13 -04:00
Beman
5610f974be Merge branch 'feature/relative2' into develop 2015-09-04 15:24:22 -04:00
Beman
011522bd42 Fix #7258, create_directories returns false if the path ends with a slash. Also fix related issues if path contains dot or dot-dot elements, and add test cases to the test suite. 2015-09-02 08:24:41 -04:00
Beman
a2d4f99cc8 Resolve #11166 by mitigating (i.e. reducing the likelihood of) a possible external file system race in remove(), using a slight refinement of the patch supplied by Jeff Epler. Made no attempt to fix or mitigate the thread data race in the test program provided. 2015-09-01 11:34:24 -04:00
Beman
f6aa067256 Minor code and comment tweaks. 2015-08-31 10:23:41 -04:00
Beman
2b019a8483 Fix #11288 A patch to avoid redundant string allocations 2015-08-30 16:44:27 -04:00
Beman
810f40becf Add a quote from the standard 2015-08-30 16:33:39 -04:00
Beman
efe50fad52 Work issue, but no fix yet 2015-08-30 16:32:44 -04:00
Beman
90517e4596 Fix #11447, __OpenBSD__ macro name misspelled, by applying a patch submitted by Jasper Lievisse Adriaanse. 2015-08-29 10:13:36 -04:00
Beman
5e5b529dc2 Fix #10591, boost::filesystem does not build on iOS 8, by applying a patch submitted by Daniel Seither. 2015-08-28 16:41:13 -04:00
Sebastian Redl
26b24ed329 Fix a race condition in unique_path.
If two threads call unique_path at the same time for the first time in the program run,
both initial calls to CryptAcquireContext can fail. Both threads will then call the function
with CRYPT_NEWKEYSET, but only one of these threads can succeed. The other will
fail with NTE_EXISTS.

This patch makes it so that if a call fails with that error, it will try to call without the
flag one more time, in case another thread created the key set in the meantime.

This also applies the patch from trac report #7506. Using these additional flags
is the right thing to do.
2015-08-27 11:42:56 +02:00
Beman
732609a2da Change member normal() and relative() to non-member lexically_normal() and lexically_relative(). See doc/relative_proposal.html#Add-lexical-functions-as-non-members for rationale. 2015-08-23 09:33:21 -04:00
Beman
c739cee694 Apply normal() to weakly_canonical results, but only when know to be needed or it is not known if it may be needed. 2015-08-19 08:43:36 -04:00
Beman
cb11081a7d Finish initial proposed wording section of relative_proposal.html. Drive-by tweaks to other stuff. Add example/directory_symlink_parent_resolution.cpp, include/boost/filesystem/string_file.hpp, and related infrastructure. 2015-08-12 17:26:03 -04:00
Beman
a7ac4c088f Add relative_test to Jamfile, fix Cygwin/GCC C++03 enum constant usage error. 2015-08-10 08:09:48 -04:00
Beman
7d6429554a Bring operational functions weakly_canonical() and relative() up to production quality: move implementations to operations.cpp, add error handling, replace tail recursion with iteration, rename weak_canonical to weakly_canonical. The weak_canonical name grated on me every type I used it. 2015-08-10 07:10:59 -04:00
Beman
34dd2c7718 Add a new path member function: "path normal() const;" and change the old deprecated normalize() non-const function to be implemented in terms of the new function. The implementation remains the same, except for returning by value rather than modifying in place. Motivation: Jamie Alsop has identified removal of redundant .. and . elements (i.e. normalization) as a need closely related to the relative path functionality requested by numerous Boost issue requests, the C++ LWG, and NB comments to the Filesystem TS. Given that both lexical and operational relative functionality is needed, there is less risk in providing a well-documented path::normal() lexical function. 2015-08-08 16:29:44 -04:00
Beman
9706dbb9b1 Revert "Change the name of path::relative to path::relative_to to distinguish it a bit from path::relative_path."
This reverts commit d5fb8323f8.

Leave possible renaming for bikeshed discussions. KISS.
2015-08-08 05:44:30 -04:00
Beman
d5fb8323f8 Change the name of path::relative to path::relative_to to distinguish it a bit from path::relative_path. 2015-08-07 16:50:47 -04:00
Beman
6da5f657fb Remove lexically_relative() free function. Add path::rel 2015-08-07 16:41:06 -04:00
Beman
dc794ea95b Merge branch 'feature/relative' into feature/relative2 2015-08-06 08:08:46 -04:00
Beman
95175ef819 Fix #11491, temp_directory_path doesn't return valid temp path on Android. 2015-07-22 11:13:06 -04:00
Adrien Destugues
3a02e54625 haiku: don't crash because of unsupported locale in libstdc++
See https://svn.boost.org/trac/boost/ticket/4688
We do the same as on Mac OS X and assume the filesystem uses utf-8.

Signed-off-by: Jessica Hamilton <jessica.l.hamilton@gmail.com>
2015-03-17 22:26:31 +00:00
Beman
424f09019c Rewrite Windows implementation of temp_directory_path() to (1) avoid GetTempPath() failure if path length > 130 (ticket #5300) and (2) provide a more sensible sequence of directories than provided by GetTempPath(), per boost list discussion "[filesystem] temp_directory_path() behavior on Windows". 2015-02-03 11:31:57 -05:00
Beman
06bddf3bc3 Rename typedef causing conflict with cygwin libraries. Fix refactoring missed in create_directory_symlink() that only affected cygwin tests. Clear gcc warning on cygwin tests. 2015-01-31 08:53:02 -05:00
Beman
01bbe99241 Refactor operations error handling helpers to (1) be less confusing and (2) fix a Windows problem where ::SetLastError() values were getting cleared before they could be retrieved by the error handling helpers. 2015-01-31 08:00:59 -05:00
Beman
c0b5754ab8 Fix ticket #10388, an occasional failure of temp_directory_path to deal correctly with the trailing separator. A path member function remove_trailing_separator() was added publicly since this may be useful to users. 2015-01-10 09:31:44 -05:00
Beman
bb5a0ff09d Clear warnings, including new warnings from VC++ 2015 preview. 2015-01-05 10:34:24 -05:00
Beman
e4e5bb8bf5 Fix ticket #6945 by applying patch from Kaylyn Bogle 2014-12-30 10:48:46 -05:00
Beman
704f4e328d Add a comment, and two BOOST_ASSERTs to detect the possible infinite loop described in ticket 4438 in case my analysis that the infinite loop will never happen is wrong. 2014-12-26 10:07:43 -05:00
Beman
4b4b3d8853 Add support for the Wind River VxWorks RTOS. Thanks to Rogerio Dos Santos. 2014-12-04 07:23:21 -05:00
Beman
490c2c3298 For all path_traits convert() and dispatch() functions provide two overloads, one with a "const codecvt_type&" argument, and one without. The overload without a codecvt argument calls path::codecvt() iff a conversion actually needs to be performed. Change all uses of path_traits convert() and dispatch() functions call the appropriate overload, rather than calling with path::codecvt() as a default. This limits the impact of locale("") initialization failures on Linux and other non-BSD POSIX systems to programs that actually depend on locale(""). It further ensures that exceptions thrown as a result of such failures occur after main() has started, and so can be caught. 2014-10-27 19:20:17 -04:00
Beman
1262a9f0d2 Fix C++03 compile failures for previous commit. 2014-10-24 11:46:50 -04:00
Beman
d57509c558 For compiled operational function detail::copy_file, pass detail::copy_options, a plain-old enum, rather than a BOOST_SCOPED_ENUM. We cannot pass a BOOST_SCOPED_ENUM to a compled function because it will result in an undefined reference if the library is compiled with -std=c++0x but the use is compiled in C++03 mode, or vise versa. Fixes tickets #6124, #6779, and #10038. 2014-10-24 10:58:42 -04:00
Beman
d5a2658d16 Move constant used only on Windows into Windows-specific helpers. Quiets clang warning message. 2014-09-04 09:24:20 -04:00
Beman
0041ea9646 Removed unused codecvt buffer size definitions long since moved to path_traits. Quiets clang warning. 2014-09-04 09:13:57 -04:00
Beman
76d209567f Refactor dot_path and dot_dot_path into functions, to prevent path constructor being called before main() starts. In theory that is harmless when path::value_type is the same as value_type of the ctor Source, but eliminating it simplifies reasoning about program correctness. 2014-08-22 11:31:42 -04:00
Beman
5b4e1b5580 Remove comments about mutexes. They are a distraction and less relevant as C++11 support becomes widespread. 2014-08-18 09:01:16 -04:00
Beman
35096ca056 Add 9219.cpp plus infrastructure and path.cpp logging 2014-08-17 10:55:01 -04:00
Beman
8ef629c906 Add __OpenBSD__ to the operating systems that "expect their string parameters to be in UTF-8 encoding and nothing else." Fixes #8352 2014-08-06 12:24:44 -04:00
Beman
750a82e20d Revert "Merge branch 'develop' of github.com:boostorg/filesystem into develop"
This reverts commit 4610afc49e, reversing
changes made to 6623bde4fe.
2014-08-05 09:16:57 -04:00
Beman
cc99cc6ceb Merge branch 'develop' into ts-develop 2014-07-31 17:24:34 -04:00
Beman
d83b8d9c6b Add ticket number. 2014-07-28 17:05:43 -04:00
Beman
91c4517a8c Add a useless initialization to quiet the Clang static analyzer, closing ticket #8954. 2014-07-28 16:47:25 -04:00
Beman
feffecb67f Remove testing residue, update copyright date. 2014-07-25 15:35:36 -04:00
Beman
d774842f39 Initial directory junction support. See release_history.html 2014-07-25 11:00:54 -04:00
Beman
038bce7e2d DTS: enum perms changed to enum class perms. Constant names have changed; synonyms provided. 2014-07-23 15:35:44 -04:00
Beman
99a94662b2 Merge branch 'develop' into ts-develop
Conflicts:
	include/boost/filesystem/operations.hpp
	test/operations_test.cpp
2014-07-22 20:55:58 -04:00
Beman
6ed4c4f6f7 Apply Christian Hammerl's fix for tickets 9683 and 10187. Supply test cases that should work for both POSIX and Windows. Tested with fix commented out to verify test cases do detect the problem. 2014-07-16 08:48:44 -04:00
Beman
fcb9600f91 Merge updates from Beman's Github repo. Unstable. 2014-07-09 14:47:13 -04:00
Beman
b1b1cea3c4 Rename relative to lexically_relative. Add semi_canonical() and relative(). 2014-05-29 15:42:11 -04:00
Beman
aa89af3387 Add test cases, correct typo 2014-05-05 14:23:59 -04:00
Beman
7cfff1821e initial implementation of relative(). 2014-05-05 11:54:27 -04:00
Beman Dawes
4b530071ab Merge pull request #1 from chris5287/patch-1
Update operations.cpp
2014-05-02 09:35:18 -04:00
Beman
0ddac9e962 Jürgen Hunold reports 'colon' const causes clang warning because it isn't used. Closes pull request #2 2014-05-01 17:34:47 -04:00
Chris Stylianou
e64d3f2dc3 Update operations.cpp
Added missing check for Solaris 10 which can declare __sun as well.
2014-01-03 02:31:58 +00:00
Antony Polukhin
f45977684a Apply trivial patch for Android compilation of Boost.Filesystem (refs #8706)
[SVN r84916]
2013-06-30 10:51:55 +00:00
Beman Dawes
7bb19f9604 Add FreeBSD support. Fix #4688
[SVN r83083]
2013-02-22 14:32:50 +00:00
Beman Dawes
f74de6c268 Revert mutex locking attempt. VC++ static builds failed in the C runtime because Microsoft staticly initializes some stuff that should be dynamically initialized.
[SVN r83034]
2013-02-19 21:09:10 +00:00
Beman Dawes
ce4dcdac91 Add locale_mutex to prevent race condition within path_locale(), either during initialization or use.
[SVN r83032]
2013-02-19 21:08:14 +00:00
Beman Dawes
5311e8139d After path.cpp mess cleanup but before adding mutex
[SVN r83031]
2013-02-19 21:07:52 +00:00
Beman Dawes
842f91ada2 Revert mutex locking attempt. VC++ static builds failed in the C runtime because Microsoft staticly initializes some stuff that should be dynamically initialized.
[SVN r83027]
2013-02-19 21:06:16 +00:00
Beman Dawes
c0f470b916 Add locale_mutex to prevent race condition within path_locale(), either during initialization or use.
[SVN r83022]
2013-02-19 21:04:03 +00:00
Beman Dawes
2c0d73967d After path.cpp mess cleanup but before adding mutex
[SVN r83021]
2013-02-19 20:39:26 +00:00
Vicente J. Botet Escriba
15491b6fcf System/FileSystem/Asio/Thread: ref #7278 Added noexcept to Boost.System to conform with C++11
[SVN r81808]
2012-12-09 14:47:39 +00:00
Beman Dawes
08c11663d9 Fix #7239, Stack overflow when calling create_directories(":D"). The reported problem was a symptom of an internal bug that caused path::filename() and path::parent_path() to fail on Windows for path(":"), and that in turn caused other functions that depend on filename() or parent_path() to fail, such as create_directories().
[SVN r80279]
2012-08-28 12:57:02 +00:00
Beman Dawes
6d73e629b8 Fix #6659 and #7051, fchmodat supported only on Solaris 11. Disable fchmodat for both Sun and GCC compilers regardless of OS version; a runtime check is too much trouble.
[SVN r79484]
2012-07-13 21:02:36 +00:00
Beman Dawes
999ab2ff4b Fix a Linux fchmodat problem affecting symlink permissions reported during discussion of 6659. Patch supplied by Duncan Exon Smith. Does not fix the original problem.
[SVN r79481]
2012-07-13 19:43:33 +00:00
Beman Dawes
ede84eefd7 Filesystem: Further fixes for #6932. Clarify docs. Add test cases.
[SVN r78747]
2012-05-29 15:53:02 +00:00
Beman Dawes
c0b7979013 Filesystem: fix #6932, create_directories throws exception even if error_code is specified.
[SVN r78721]
2012-05-28 15:47:59 +00:00
Dave Abrahams
4d8dd5055d Summary: Moved libs/detail/utf8_codecvt_facet.cpp to boost/detail/utf8_codecvt_facet.ipp
Author: Dave Abrahams <dave@boostpro.com>


[SVN r78081]
2012-04-19 18:19:20 +00:00
Beman Dawes
221b7cf7c6 Filesystem: Fix #6809, Implementation of filesystem::rename() method for MS Windows is wrong, by adding MOVEFILE_COPY_ALLOWED to deal with renames across drives, volumes, file systems. Fix has no effect on non-Windows systems.
[SVN r78078]
2012-04-19 12:45:42 +00:00
Beman Dawes
1207aac116 filesystem: Move compare() implementation to path.cpp, thus clearing gcc warning about header implementation of class with dll interface.
[SVN r78006]
2012-04-16 13:36:28 +00:00
Beman Dawes
da4f223c5b Fix #6690 and #6737, resolving static linking related problems with VC++ 8 through 11. Note that this fix may reintroduce codecvt thread safety problems #4889, #6320, for these compilers if static linking is used.
[SVN r78000]
2012-04-15 20:34:19 +00:00
Beman Dawes
82c5b7533b Fix #4065, Boost Filesystem lexicographic path comparison inconsistent. The fix included adding path::compare functions, and cleanup and refactoring of the path relational operators code. Some of the code fixed is used by other functions, so some unrelated bugs may also have been fixed.
[SVN r77669]
2012-03-31 15:53:24 +00:00
Beman Dawes
4910fe6e64 Fix #3737, Boost.Filesystem does not compile on Windows Mobile
[SVN r77585]
2012-03-27 14:40:56 +00:00
Beman Dawes
494b34027e Fix #5118, replace_extension doesn't work as specified in documentation
[SVN r77571]
2012-03-26 21:19:36 +00:00
Beman Dawes
7941871477 Filesystem - Delete v3 directories no longer needed. Cleanup links, namespaces, and other residue from dual v2/v3 support.
[SVN r77555]
2012-03-26 12:44:24 +00:00
Beman Dawes
16099b4c7d Filesystem - Move V3 files and directories into place
[SVN r77554]
2012-03-26 12:31:06 +00:00
Beman Dawes
fa515c07f5 Move files into new v2 + v3 directory structure
[SVN r62653]
2010-06-09 13:00:15 +00:00
Beman Dawes
91715967a5 Upgrade system and filesystem to conform system_category and generic_category interface to N3090, the current C++0x working paper, section 19.5, System error support.
Refactor API macros into a new header, boost/system/api_config.hpp.

Prohibit user definition of API macros. Rationale: ensure all translation units use same definitions, cut number of environments that need to be tested.

[SVN r62313]
2010-05-30 15:38:32 +00:00
Beman Dawes
c855c033b6 Fix #3962
[SVN r62220]
2010-05-25 23:47:37 +00:00
Beman Dawes
012d1d3b75 Fix #3910
[SVN r62219]
2010-05-25 23:33:39 +00:00
Beman Dawes
ac5729f7fe Fix #3867, both for ERROR_NOT_READY and ERROR_INVALID_DRIVE. These happen when CD/DVD drive has no disc and USB card reader has no card, respectively.
[SVN r62218]
2010-05-25 23:18:13 +00:00
Daniel James
a77e191a25 Use full filesystem namespace as there isn't an alias at this point.
[SVN r59709]
2010-02-16 22:33:27 +00:00
Beman Dawes
9beb3923e1 Fix #3928
[SVN r59695]
2010-02-15 21:23:05 +00:00
Beman Dawes
a14be77483 Fix #3551 for Windows Mobile
[SVN r58193]
2009-12-06 16:55:44 +00:00
Troy D. Straszheim
6656351d2e rm cmake from trunk. I'm not entirely sure this is necessary to satisfy the inspect script, but I'm not taking any chances, and it is easy to put back
[SVN r56942]
2009-10-17 02:07:38 +00:00
Beman Dawes
68168bc676 Filesystem: fix #3509
[SVN r56616]
2009-10-06 12:32:46 +00:00
Troy D. Straszheim
d46ec2ea1c Copyrights on CMakeLists.txt to keep them from clogging up the inspect
reports.  This is essentially the same commit as r55095 on the release
branch.



[SVN r55159]
2009-07-26 00:49:56 +00:00
Beman Dawes
a9ef12ad33 Filesystem: fix #3172, ECV++ 9 missing <sys/utime.h>. The fix applied was to include <ctime> instead. This is the correct header; the previous song-and-dance was workaround on top of workaround from years ago. This change will break any Windows libraries that don't provide <ctime>, but if that happens workarounds specific to those libraries can be added. That's better than cluttering up the code with workarounds no longer needed.
[SVN r54032]
2009-06-17 22:50:10 +00:00
Beman Dawes
0aaa65e768 Fix Filesystem #2925, copy_file atomiticity
[SVN r53073]
2009-05-17 15:55:46 +00:00
Beman Dawes
ca156ad712 Workaround: Sun compiler on Linux dirent.h defines _DIRENT_HAVE_D_TYPE but expected macros not present
[SVN r52420]
2009-04-16 14:51:55 +00:00
Beman Dawes
0858d28868 Filesystem: fix #1452
[SVN r52383]
2009-04-14 13:27:44 +00:00
Beman Dawes
b917a12625 Fix #2725
[SVN r51931]
2009-03-23 11:30:54 +00:00
Beman Dawes
be7290da56 Filesystem: Fix #2531 by applying suggested patch
[SVN r50562]
2009-01-13 13:30:07 +00:00
Beman Dawes
83fd6d4c42 Filesystem: fix native(name) test failures on POSIX
[SVN r50555]
2009-01-12 16:57:52 +00:00
Beman Dawes
0bd0323239 Filesystem: fix #1840, including adding test cases and updating docs
[SVN r50543]
2009-01-11 16:50:06 +00:00
Beman Dawes
17f2e28fef Filesystem: fix #2542, wrong close 0 descriptor in copy_file_api on unix
[SVN r50033]
2008-11-30 02:49:13 +00:00
Michael A. Jackson
5cde8da587 Continuing merge of CMake build system files into trunk with the encouragement of Doug Gregor
[SVN r49510]
2008-11-01 13:15:41 +00:00
Beman Dawes
e2cd046fde Filesystem: ticket #2176.
[SVN r49209]
2008-10-09 15:01:27 +00:00
Beman Dawes
9a3052e452 Filesystem; clear ticket #2168
[SVN r49085]
2008-10-01 15:50:44 +00:00
Beman Dawes
f58c3cd871 fix posix_remove() return
[SVN r47186]
2008-07-07 13:09:09 +00:00
Beman Dawes
3ee73a0df7 Partial resolution of ticket #1972; remove() issues for POSIX are cleared. Added regression test cases covering self-reference and cyclic symlinks.
[SVN r47006]
2008-07-02 21:05:54 +00:00
Beman Dawes
5a43bcd288 Add #include <cwchar> to fix ticket #1589
[SVN r46481]
2008-06-18 15:55:53 +00:00
Beman Dawes
583f944e67 Remove exception.cpp
[SVN r45826]
2008-05-27 17:49:17 +00:00
Hartmut Kaiser
89839af509 Wave: Updated to use new Spirit Classic library structure and namespace. Lots' of minor changes and adjustments. Switched version to 2.0 since this version is not backwards compatible anymore with earlier versions.
[SVN r44381]
2008-04-13 22:39:12 +00:00
Marshall Clow
dcbe9649c2 Replaced all occurrences of non-ASCII copyright symbol with '(c)' for people using non-ASCII code pages
[SVN r43992]
2008-04-02 01:42:32 +00:00
Beman Dawes
8fb975b2b9 Fix inspect boo boos; mostly broken links
[SVN r43709]
2008-03-18 19:35:18 +00:00
Beman Dawes
959dfd8ab7 clear # 1230, mbstate uninitialized
[SVN r41357]
2007-11-25 15:08:28 +00:00
Beman Dawes
6576b1c0df Copyright and/or License cleanup
[SVN r40890]
2007-11-07 16:08:09 +00:00
Beman Dawes
8d845ad07a Enable the XPG-compliant version of readdir_r() on AIX. Merged from 1.34.1.
[SVN r40640]
2007-11-01 15:23:06 +00:00
Beman Dawes
fbb5d8650b Treat Windows ERROR_SHARING_VIOLATION as an existing file of unknown type. Fixes ticket #897
[SVN r40630]
2007-10-31 22:01:58 +00:00
Beman Dawes
cf38bdb506 Win64 returns ERROR_BAD_PATHNAME for //nosuch, while Win32 returns ERROR_BAD_NETPATH
[SVN r39556]
2007-09-26 18:11:27 +00:00
Beman Dawes
85ed046d40 Turns out the --dep_name errors were due to functions in the wrong namespace (Chris Kohlhoff)
[SVN r39553]
2007-09-26 17:48:27 +00:00
Beman Dawes
184a2518c5 Clear compiler warnings
[SVN r39520]
2007-09-25 13:45:52 +00:00
Boris Gubenko
887e81ae91 reapply fix for gcc on HP-UX in -r39130
[SVN r39237]
2007-09-13 16:11:38 +00:00
Beman Dawes
ac94c31ac1 POSIX fix from Neal Becker
[SVN r39220]
2007-09-12 18:31:25 +00:00
Beman Dawes
969eb8a6c0 Posix and Linux fixes
[SVN r39174]
2007-09-09 17:48:17 +00:00
Beman Dawes
49f6e3cfd7 Merge system and filesystem branches, bringing them in sync with N2415. Several filesystem bugs fixed, and current_path setter added.
[SVN r39173]
2007-09-09 14:59:10 +00:00
Boris Gubenko
c7ede6dc3d missing conditionalization for g++ on HP-UX
[SVN r39130]
2007-09-05 17:14:29 +00:00
Beman Dawes
2045be22d6 Bring into compliance with N2066, TR2 Diagnostics Enhancements. Tests passing on Win32, Linux, on most modern compilers.
[SVN r35823]
2006-11-03 16:57:30 +00:00
Alexander Nasonov
4bfae9e3a5 Workaround for missing statvfs on OpenBSD 3.9
[SVN r35265]
2006-09-21 19:41:47 +00:00
Beman Dawes
34f65b491c HP-UX < 11.23 sys/statvfs.h bug workaround from Boris Gubenko of HP
[SVN r34260]
2006-06-09 21:25:47 +00:00
Beman Dawes
13f4cb958e Use PATH_MAX if defined, only call pathconf() once - both to solve performance problems reported on Linux
[SVN r33762]
2006-04-21 14:04:56 +00:00
Beman Dawes
22bb191bf0 Remove copyright symbol as it causes VC++ warnings on Windows with codepage set to non-English, particularly Asian, languages
[SVN r33295]
2006-03-09 22:15:07 +00:00
Beman Dawes
edce5474de move additional static to function scope. see prior fix.
[SVN r33257]
2006-03-07 16:04:25 +00:00
Beman Dawes
6ea1a84f9a Move std::locale constrution to function scope so exceptions can be caught. See comment in the code.
[SVN r33235]
2006-03-06 15:18:30 +00:00
Beman Dawes
38e9a79302 detail::narrow_path_api() fix from Takeshi Mouri
[SVN r33211]
2006-03-03 14:12:28 +00:00
Beman Dawes
63370e0bcc get_full_path_name_template bug fix (Arjen Wagenaar)
[SVN r33203]
2006-03-02 21:00:41 +00:00
Beman Dawes
897bbc0706 WinNT 4.0 does not support hard links. Not sure if removing the feature entirely is the best fix, but since NT 4.0 is about dead it seems harmless to fix this way. (Based on patch from Mark Bartosik)
[SVN r33084]
2006-02-23 02:28:57 +00:00
Beman Dawes
c949152405 readdir_r Tru64 patch from Markus Schöpflin
[SVN r33039]
2006-02-20 21:21:06 +00:00
Beman Dawes
e13c53c685 copy_file partial write fix
[SVN r33036]
2006-02-20 20:17:25 +00:00
Rene Rivera
b66f0c8c97 Adjust Boost.Jam references to new root/tools/jam location.
[SVN r32873]
2006-02-12 23:18:46 +00:00
Beman Dawes
349f708f01 Add UNC test cases, comment to status code
[SVN r32745]
2006-02-08 17:31:20 +00:00
Beman Dawes
040c9372b3 Bring into sync with WG21/D1934=06-0004
[SVN r32532]
2006-02-03 20:59:04 +00:00
Beman Dawes
96cb571b6a Add two exists() cases thanks to John Maddock
[SVN r32267]
2006-01-09 14:20:15 +00:00
Beman Dawes
7919b686cd POSIX - check for DT_UNKNOWN to handl filesystems not supporting d_type values
[SVN r32230]
2006-01-06 00:54:44 +00:00
Beman Dawes
aac5f49666 is_file, file_flag -> is_regular, regular_flag per TR2 proposal
[SVN r32201]
2006-01-02 02:30:53 +00:00
Beman Dawes
b5373a18ad fix BOOST_FILESYSTEM_STATUS_CACHE misunderstanding about use of __USE_BSD
[SVN r32181]
2005-12-28 21:48:02 +00:00
Beman Dawes
956f89b31e Sun docs say _POSIX_PTHREAD_SEMANTICS needed for POSIX readdir_r
[SVN r32180]
2005-12-28 21:24:11 +00:00
Beman Dawes
85ee5f4e3b disable BOOST_FILESYSTEM_STATUS_CACHE for __APPLE__
[SVN r32168]
2005-12-27 14:37:08 +00:00
Beman Dawes
cf8790384b statvfs workaround for Apple
[SVN r32164]
2005-12-26 15:38:51 +00:00
Beman Dawes
8472a0f2be fix Metrowerks and QNX snafus
[SVN r32124]
2005-12-21 02:51:07 +00:00
Beman Dawes
6ee6f9c576 fix readdir_r buffer size on some POSIX systems
[SVN r32116]
2005-12-20 18:41:30 +00:00
Beman Dawes
2d89fd6927 BOOST_FILESYSTEM_STATUS_CACHE never applies to Sun (Calvin Epstein)
[SVN r32102]
2005-12-19 13:05:15 +00:00
Beman Dawes
f42d10d6f8 Disable BOOST_FILESYSTEM_STATUS_CACHE for GLIBCXX on Sun
[SVN r32099]
2005-12-19 02:54:03 +00:00
Beman Dawes
c2e0823f19 move dirent d_type config tests from config.hpp to operations.cpp
[SVN r32087]
2005-12-17 14:40:36 +00:00
Beman Dawes
48d4335bfc merge from i18n branch - at last!
[SVN r32079]
2005-12-16 16:40:35 +00:00
Beman Dawes
bc72a98614 Fix umlat in Dietmar's last name compiler warning
[SVN r31992]
2005-12-12 02:41:57 +00:00
Beman Dawes
66bf10a502 bug 1151823, detect / in POSIX name
[SVN r31822]
2005-11-29 15:46:02 +00:00
Beman Dawes
31b3d70c7d add fixes and tests for c:foo directory iteration bug 1259176
[SVN r31821]
2005-11-29 15:35:23 +00:00
Beman Dawes
e0042ff90b Fix QNX bug (Jim Douglas)
[SVN r31485]
2005-10-26 22:18:49 +00:00
Beman Dawes
a9458cdc47 Revert to 0xFFFFFFFF because VC++6.0 doesn't support INVALID_FILE_ATTRIBUTES
[SVN r31021]
2005-09-18 14:53:36 +00:00
Douglas Gregor
c8330af714 Remove extraneous debugging information
[SVN r30894]
2005-09-10 06:06:21 +00:00
Beman Dawes
2f494a565b small fixes, changes to allow path_table.cpp to support both Windows and Posix in same program (for testing purposes)
[SVN r30861]
2005-09-07 21:01:25 +00:00
Beman Dawes
aa8837925c Add two missing BOOST_FILESYSTEM_DECL
[SVN r30140]
2005-07-16 21:59:46 +00:00
Toon Knapen
348391a38a On HPUX-aCC, readdir_r is only declared if the option '-mt' is passed onto the aCC
compiler. Now the code detects if the multithreading option is passed by
checking if _REENTRANT is defined (in combination with __HP_aCC)


[SVN r29728]
2005-06-22 10:08:13 +00:00
Beman Dawes
b192558c49 use a form of directory iteration search Sebastian Martel reports will work with Win98
[SVN r29465]
2005-06-07 13:16:56 +00:00
Beman Dawes
65a1ee085a Second try at CodeWarrior ::remove() bug workaround
[SVN r29453]
2005-06-07 01:17:50 +00:00
Martin Wille
6bac933395 -- typo
[SVN r29399]
2005-06-03 08:17:32 +00:00
Beman Dawes
ce543c48bd workaround CodeWarrior / Mac C library remove problem
[SVN r29390]
2005-06-02 22:19:47 +00:00
Beman Dawes
be84be9827 workaround MSL C lib wrong errno from ::getcwd(). Metrowerks says they will fix, but I don't know the version numbers involved.
[SVN r29080]
2005-05-19 22:10:29 +00:00
Beman Dawes
bcbc83b9bd Make POSIX copy_file more robust
[SVN r28820]
2005-05-11 13:20:00 +00:00
Beman Dawes
3b644dd62c Add ERROR_NOT_READY to exists() list
[SVN r28705]
2005-05-07 01:25:38 +00:00
Beman Dawes
88524db326 Fix _USE_FILE_OFFSET_BITS spelling (Caleb Epstein)
[SVN r28027]
2005-04-06 22:24:23 +00:00
Markus Schöpflin
5a8cdab377 Fixed POSIX feature test for _POSIX_THREAD_SAFE_FUNCTIONS.
[SVN r27953]
2005-04-04 11:47:24 +00:00
Beman Dawes
dd84066d81 Move 64-bit defines so all headers see them (Calib Epstein)
[SVN r27902]
2005-03-31 14:29:13 +00:00
Beman Dawes
b56570fb8a use POSIX readdir_r if available
[SVN r26779]
2005-01-21 14:21:06 +00:00
Beman Dawes
146a203800 Correctly handle empty root directory on Windows (Ben Hutchings)
[SVN r26620]
2005-01-03 14:58:59 +00:00
Beman Dawes
324c7540c5 Apply BOOST_NO_STDC_NAMESPACE workaround after all #includes to make less std lib implementation dependent. (François Dumont)
[SVN r26581]
2004-12-24 14:19:18 +00:00
Beman Dawes
29f06fe6d2 Add ERROR_BAD_NETPATH to exists() checks (Martin Slater)
[SVN r26432]
2004-12-05 22:45:44 +00:00
Beman Dawes
177383032b fix equivalent() failures across subst Windows drives
[SVN r26317]
2004-11-26 19:35:17 +00:00
Beman Dawes
7a0018fd9b fix 2 cases where on Windows a backslash was not equivalent to a forward slash
[SVN r26184]
2004-11-11 16:38:21 +00:00
Beman Dawes
373cca5226 fix failure to remove dangling symbolic link (Walter Landry)
[SVN r26064]
2004-11-01 21:09:25 +00:00
Beman Dawes
823169cbc6 Quiet gcc warning (Lars Gullik Bjønne)
[SVN r25865]
2004-10-25 16:58:54 +00:00
Beman Dawes
bc41d3735d last_write_time() fix
[SVN r25637]
2004-10-09 20:25:30 +00:00
Beman Dawes
097d0d6ebe Work around Intel 7.1/Linux include problem
[SVN r25235]
2004-09-19 19:48:29 +00:00
Beman Dawes
e4330acdc9 Add define for _USE_FILE_OFFSET_BITS 64 in hopes of picking up large file support on more systems (David Judson)
[SVN r25125]
2004-09-15 21:24:23 +00:00
Beman Dawes
d7651f2c21 Fix POSIX trailing colon bug (Angus Leeming)
[SVN r25123]
2004-09-15 16:00:57 +00:00
Beman Dawes
86a674a57a add possible_large_file_size_support and associated test
[SVN r25010]
2004-09-10 13:53:02 +00:00
John Maddock
06aa67ca32 Another Win32 error code that needs handling (indicates that the file does not exist).
[SVN r24555]
2004-08-18 12:53:18 +00:00
John Maddock
b1aeed6f32 Re-ordered includes to prevent macro-redeffinitions
[SVN r24156]
2004-07-29 11:00:58 +00:00
Douglas Gregor
38ed4c472c Documentation update from Jon T. Pedant
[SVN r23847]
2004-07-20 17:03:55 +00:00
John Maddock
f69c19dc5c Added fix for when the filename syntax is invalid.
[SVN r23033]
2004-06-05 11:52:22 +00:00
John Maddock
5b78d4c497 filesystem::exists, must check to see why a filesystem stat failed, before assuming that the file does not exist.
[SVN r22564]
2004-03-30 15:19:58 +00:00
Beman Dawes
3e74ac39e8 Add equivalent()
[SVN r22531]
2004-03-20 18:24:48 +00:00
Beman Dawes
44c08bc4eb add relational operators
[SVN r22498]
2004-03-14 17:53:45 +00:00
Beman Dawes
446f23446c create_directory() and create_directories() now return bool
[SVN r22481]
2004-03-11 16:08:16 +00:00
Beman Dawes
c0b701f6d5 __USE_FILE_OFFSET64 now tested on Linux
[SVN r22327]
2004-02-19 14:03:08 +00:00
Beman Dawes
99b98e64d7 more reliable POSIX current_path() imp (issue reported and fix tested by Ron Garcia)
[SVN r22182]
2004-02-06 01:27:06 +00:00
Beman Dawes
9c86292c6d add file_size() support
[SVN r22156]
2004-02-03 16:00:10 +00:00
Beman Dawes
5d414f1803 add arg to 2nd ctor
[SVN r22155]
2004-02-03 15:58:10 +00:00
Beman Dawes
1de69f7103 ./.. detection recoded to cleanly avoid Borland std bug
[SVN r21875]
2004-01-22 01:10:23 +00:00
Beman Dawes
23acebe6dc missing std for remove, rename
[SVN r21708]
2004-01-13 22:28:38 +00:00
Beman Dawes
c74ea146bf suppress warnings, add missing thow_exception call (Lars Gullik Bjønnes)
[SVN r21569]
2004-01-09 21:07:26 +00:00
Beman Dawes
bdeca0a7c9 make directory_iterator all inline so Filesystem lib can be built as DLL
[SVN r21311]
2003-12-18 01:57:49 +00:00