31bceb7570
Use PBD::FdFileDescriptor in PBD::copy_file
2014-06-25 12:40:11 -04:00
8da304be09
Fix PBD::copy_file so it works with non-ASCII filenames on windows
2014-06-25 12:40:11 -04:00
4ced10bfe5
Add test utility function to PBD tests to return some utf-8 strings
...
This is currently unused
2014-06-25 12:40:11 -04:00
53c959ad8f
Add a test for PBD::copy_file using test files with utf-8 encoded filenames
2014-06-25 12:40:11 -04:00
de4fc4843b
Fix PBD::copy_files so that it uses O_BINARY on windows and doesn't add line endings to copied files
2014-06-25 12:40:11 -04:00
3000399ce1
Use PLATFORM_WINDOWS define instead of WIN32 in PBD::FileManager
2014-06-25 12:40:11 -04:00
7bf392060e
Call PBD::init and PBD::cleanup in pbd test executable
2014-06-25 12:40:11 -04:00
7338c4e242
Add test for PBD::copy_file
...
From this I can see that PBD::copy_file is not working correctly on windows
as it is adding windows style line endings. Adding O_BINARY to ::open flags
would fix it, but perhaps there is a better way...
2014-06-25 12:40:11 -04:00
94d8dfa256
Add utility function to test lib to create a test directory
...
There is an identical function in libardour test support lib so we
should probably find a better place to put this at some point
2014-06-25 12:40:11 -04:00
3b1a98f0ec
Change PBD::get_files and PBD::get_paths to take a Searchpath instead of directory path
...
Both these functions use the internal function run_functor_for_paths
which takes a Searchpath so this avoids a temporary variable in cases
where a Searchpath is passed directly.
The usage is the same as the compiler will generate a temporary Searchpath
from a string(directory path) if necessary.
2014-06-25 12:40:11 -04:00
6d0cce528e
Add/Update docs in pbd/file_utils.h
2014-06-25 12:40:11 -04:00
851db83fc4
Use run_functor_for_paths in PBD::get_paths
2014-06-25 12:40:10 -04:00
04434f2b88
Rename PBD::get_files_in_directory to just PBD::get_files, change parameter order and fix docs
2014-06-25 12:40:10 -04:00
84d190b7cc
Rename PBD::get_directory_contents to PBD::get_paths
...
shorter name and change order of parameters to match other functions
2014-06-25 12:40:10 -04:00
26ec4038af
Use run_functor_for_paths in PBD::find_files_matching_pattern
2014-06-25 12:40:10 -04:00
24599c552d
Add function PBD::find_paths_matching_filter
2014-06-25 12:40:10 -04:00
54c0a0144c
Use run_functor_for_paths in PBD::find_files_matching_filter
2014-06-25 12:40:10 -04:00
e7141d2b80
Add function to file_utils intended to be used internally
2014-06-25 12:40:10 -04:00
ab6837665f
Add some debug output in file_utils.cc
2014-06-25 12:40:10 -04:00
e6c4b0e9e4
Remove reference to strtok_r now that it isn't used
2014-06-25 12:40:10 -04:00
a226068959
Change formatting of DEBUG_TRACE calls to match style guide
2014-06-25 12:40:10 -04:00
cb3a604936
Move functions in pbd/clear_dir.h/cc into pbd/file_utils.h/cc
2014-06-25 12:40:10 -04:00
257897392a
Add remove_directory_internal function and use it in PBD::clear_directory and PBD::remove_directory
2014-06-25 12:40:10 -04:00
64856a5862
Reimplement PBD::clear_dir using PBD::get_directory_contents
2014-06-25 12:40:10 -04:00
cd12698b9c
Rename PBD::find_file_in_search_path to just PBD::find_file
...
saves a bit of typing and not necessary if you look at how it is used.
2014-06-25 12:40:10 -04:00
8d0cba3384
Use PBD::find_files_matching_pattern instead of other variations
2014-06-25 12:40:10 -04:00
36fd67ab72
Add a variation of PBD::find_files_matching_pattern for convenience
2014-06-25 12:40:10 -04:00
077c09b105
Add new function PBD::find_files_matching_pattern
...
This new function is intended to replace the three existing
PBD::find_matching_files_* functions.
The order of parameters matches find_files_matching_regex and
find_files_matching_filter
2014-06-25 12:40:10 -04:00
d9a7d419b2
Change PBD::find_files_matching_regex and PBD::find_files_matching_filter to take a Searchpath
2014-06-25 12:40:10 -04:00
613162df6b
Reimplement PBD::find_files_matching_filter using SearchPath and get_directory_contents
2014-06-25 12:40:10 -04:00
56337eade4
Remove limit parameter from PBD::find_files_matching_regex
...
This limit was not used or documented. The same functionality can be
performed when iterating through the results.
2014-06-25 12:40:10 -04:00
0189ad7e29
Remove parameters from PBD::find_files_matching_regex
...
The only users of this API always used the same options so just remove
them.
2014-06-25 12:40:09 -04:00
769ee5c1f2
Change PBD::get_files_in_directory to return full paths in result
...
get_files_in_directory uses get_directory_contents internally now
2014-06-25 12:40:09 -04:00
d1dd5d3ee7
Add PBD::get_directory_contents to pbd/file_utils.h
2014-06-25 12:40:09 -04:00
592654936e
Remove (no longer needed) sources from an MSVC project
2014-06-19 11:49:51 +01:00
126ef72d05
Move the definition for 'strtok_r' (to avoid clashing with a different definition in pthread_win32)
2014-06-19 11:47:49 +01:00
3aa2a4ac8c
Remove PathScanner class from libpbd
2014-06-17 21:43:30 +10:00
547689a055
Replace all use of PathScanner with equivalent functions from pbd/file_utils.h
2014-06-17 21:41:29 +10:00
26285a3bc0
Add default arguments to match those in PathScanner::operator()
2014-06-17 21:29:41 +10:00
dc81ab8640
Move member functions from PathScanner to functions in pbd/file_utils.h
...
This allows us to remove PathScanner source file and keep PathScanner class
as header only until it is removed
2014-06-17 21:19:02 +10:00
ea5f9a8ea6
Move PathScanner::operator() into header
2014-06-17 21:14:13 +10:00
b457c938cd
Remove unused methods in PathScanner
...
Now that these methods are only a few lines it doesn't make much sense
to keep them seeing as they are unused. There are also functions with
near identical functionality in pbd/file_utils.h
2014-06-17 21:14:03 +10:00
cde8776e80
Rename PathScanner::run_scan_internal to PathScanner::find_files_matching_filter
2014-06-17 21:13:50 +10:00
3066bd48da
Remove PathScanner::run_scan and use PathScanner::run_scan_internal directly
2014-06-17 21:13:41 +10:00
f54092dada
Add PathScanner::find_files_matching_regex and move regexp usage to one place
2014-06-17 21:13:32 +10:00
f220d01132
Remove member filter argument from PathScanner methods and use normal filter for regex
...
Also use regfree to free memory of compiled patterns
2014-06-17 21:13:16 +10:00
0e96d84079
Change PBD::PathScanner API to return results by value to avoid inadvertent memory leaks
2014-06-17 21:13:05 +10:00
36be1a3a9b
plug some leaks
2014-06-15 13:24:41 +02:00
12cf9d5be8
fix pathscanner / stl_vector related memory leaks
2014-06-15 13:24:39 +02:00
62ba8d23e3
tracking down concurrency issus is fun.
2014-06-14 16:38:47 +02:00