Commit Graph

364 Commits

Author SHA1 Message Date
Arvid Norberg 13b16a63a3 use unsigned type for file flags. make file_pool private to disk_io_thread (#1894)
use unsigned type for file flags. make file_pool private to disk_io_thread. move close_file_interval logic to the disk thread. don't expose file in public interface, and make pool_file_status properly public (not part of file_pool and renamed to open_file_status), this is exposed in public interface via torrent_handle::file_status()
2017-04-08 18:24:50 -04:00
Alden Torres a8b10a7449 more sign warnings fixes (#1775)
more sign warnings fixes
2017-03-09 07:46:52 -05:00
Andrei Kurushin 9bee2146d0 complete UNC path support (#1689)
complete UNC path support. all internal file api functions handle long size paths (> MAX_PATH) and special names (CON,PRN ...) with unit test
2017-02-16 23:47:08 -05:00
Alden Torres de6f2a9d88 fixing sign-conversion warnings, part 11, created aux::array and refactor (#1649)
fixing sign-conversion warnings, part 11, created aux::array and refactor
2017-02-04 22:05:53 -05:00
Alden Torres 3803661863 moved alloca.hpp to private aux_ and size refactor (#1634)
moved alloca.hpp to private aux_ and size refactor
2017-01-27 12:43:34 -05:00
Arvid Norberg 3d06371f31 factor out some common storage utilities out of storage.cpp (#1515)
factor out some common storage utilities out of storage.cpp
2017-01-11 00:42:10 -05:00
arvidn d1ea80c2c3 remove disk-access-log build configuration 2017-01-09 08:37:02 -05:00
arvidn 1d1ab4f4b5 removed file-leak code, temporarily used to trouble-shoot files appearing to be left open 2017-01-09 01:43:15 -05:00
arvidn 0c7e86078b merged RC_1_1 into master 2017-01-08 10:18:41 -05:00
arvidn 7957e2a30e fix move_storage() to its own directory (would delete the files) 2017-01-03 21:09:26 -05:00
Andrei Kurushin e10edb5e0b move LoadLibrary logic to new win_util module (#1464)
move LoadLibrary logic to new win_util module. use get_library_procedure as common windows dyn proc load routine
2016-12-28 10:12:20 -08:00
Andrei Kurushin 1ec5c69dcd minor code corrections (#1430)
use compact span cast. extend split_path api with only_first_part flag. use single loadlibrary and getprocaddress for IP helper
2016-12-26 22:45:48 -08:00
Alden Torres eaf99aa42b fixed more warnings of shorten-64-to-32 and sign-compare in android (#1425)
fixed more warnings of -Wshorten-64-to-32 in android. changed file_status to use std::time and disable warnings of NLMSG_OK in clang
2016-12-18 10:59:41 -05:00
Alden Torres 22b596945e enable /W4 warnings for msvc 2016-12-13 19:36:14 -05:00
Alden Torres f382936d56 headers, end of file, code cleanup 2016-12-12 23:36:45 -05:00
Alden Torres dd7179fb10 added a few consts to arguments and local variables 2016-12-10 18:19:14 -05:00
Alden Torres e73435a77b fixed shorten-64-to-32 warnings for clang 2016-12-10 08:57:08 -05:00
Alden Torres d5c4cd7280 fixed sign-compare warnings and some refactor (#1354)
fixed sign-compare warnings and some refactor. make sequence_number backed by std::int64_t
2016-11-27 08:46:53 -05:00
arvidn 0e33e62627 merged RC_1_1 into master 2016-11-20 11:18:16 -05:00
arvidn 4df1ecbe25 re-enable some warnings and fix code 2016-11-20 01:05:16 -05:00
Steven Siloti f5366bd816 use span for scatter/gather lists (#1260)
use span for gather/scatter buffers. remove explicit size parameter from file_op
2016-10-26 20:40:56 -04:00
Alden Torres 4eebd0c68a minor refactor, compilation fix when DEBUG_DISK_THREAD and missing convert_to_native (#1256) 2016-10-25 20:46:23 -04:00
Steven Siloti a6e5ba8804 return a span from TORRENT_ALLOCA (#1244)
return a span from TORRENT_ALLOCA

Unfortunately this requires moving the variable declaration inside the macro.
Due to alloca’s unique properties pretty much the only safe way to call it is
in a simple assign-to-pointer expression. Therefor we need to use a temporary
pointer to store the value returned from alloca before we can call span’s ctor.

This also causes double evaluation of the size parameter which is unfortunate,
but no current callers of TORRENT_ALLOCA have a problem with this. Passing
expressions with side effects to macros is bad mojo anyways.
2016-10-22 14:43:40 -04:00
Alden Torres fe754453f4 backport of fix for LFS support in android (#1232) 2016-10-20 00:14:03 -04:00
Alden Torres 5f04103a9d ensure posix calls with LFS support are used in android (#1226) 2016-10-19 13:00:03 -04:00
Arvid Norberg 5f7e2eb928 run undefined sanitier on travis/linux (#1134)
run undefined sanitizer on travis/linux. back-port ed25519 unit test from master
2016-10-08 12:29:46 -04:00
Arvid Norberg 7a52a285a1 back-port error_code cleanup from master (#1173)
back-port error_code cleanup from master
2016-10-03 16:32:40 -07:00
Arvid Norberg cebd976cc2 fix error_code vs. error_condition traits (#1169)
fix error_code vs. error_condition traits. deprecate get_*_category(), instead use *_category()
2016-10-02 12:27:50 -07:00
Alden Torres b1b74657f6 added consts and minor refactor (#1137)
added consts and minor refactor
2016-09-23 13:51:20 -07:00
Alden Torres c25bae163d avoid warnings with clang and minor dht_tracker code changes (#1092) 2016-09-14 11:28:50 -04:00
Alden Torres 5e69dc700c minor cleanup and refactor (#1069) 2016-09-06 18:34:03 -04:00
Alden Torres 9fd83aaa10 more use of std::shared_ptr (#1009)
more std::shared_ptr transition
2016-08-18 17:08:40 -04:00
Arvid Norberg e36e5efaba use boost::string_ref (#996)
use boost::string_ref/boost::string_view in various parts of the code, in file_storage, some file functions and in bdecode.
2016-08-13 07:04:53 -04:00
Alden Torres a966458f8c minor cleanup (#997)
minor cleanup
2016-08-12 19:24:03 -04:00
Alden Torres fdfe69f414 fixed warnings and compilation issues (#980)
fixed warnings and compilation issues
2016-08-03 00:35:40 -04:00
Arvid Norberg a740a49fd6 modernize misc (#898)
modernize misc
2016-07-10 07:34:45 -04:00
Arvid Norberg e801d2e6de modernize replace deprecated headers (#897) 2016-07-09 23:17:55 -04:00
Arvid Norberg 770935cd46 modernize-use-nullptr (#894) 2016-07-09 16:26:26 -04:00
Arvid Norberg 1facf0eef6 clean-up more defines (#872)
clean-up more defines. remove TORRENT_DEBUG and TORRENT_DISABLE_INVARIANT_CHECKS (instead use TORRENT_USE_ASSERTS and TORRENT_USE_INVARIANT_CHECKS)
2016-07-01 19:46:59 -04:00
Vladimir Golovnev faef995cdc Move storage "file-by-file" (#632)
When moving storage for a torrent, only move files belonging to the torrent, one by one.
2016-06-29 20:05:16 +03:00
Arvid Norberg 6aabe3762b general modernization (#836)
general modernization. use nullptr instead of NULL, use std::tuple instead of boost::tuple, transition some unordered set/map from boost to std. some clean-up of includes
2016-06-20 11:32:06 -04:00
Arvid Norberg ed077c8358 use cstdint intead of boost/cstdint.hpp (#833)
use cstdint intead of boost/cstdint.hpp
2016-06-18 14:01:38 -04:00
Arvid Norberg fa8232cd13 remove some old cruft and defines (#785)
remove some old cruft and defines
2016-06-04 10:03:13 -04:00
Arvid Norberg 748af6eec1 general cleanup. remove valgrind markup, log_hash_failures and C headers (#752)
general cleanup. remove valgrind markup, log_hash_failures and C headers
2016-05-23 08:15:39 -04:00
Arvid Norberg e8380e1d0b factor out includes from config.hpp into the files actually using it. primarily, printf family of functions, since C++11 version is used now. This removes the need for an snprintf-wrapper on windows (#732) 2016-05-17 09:24:06 -04:00
Arvid Norberg 44a668db62 build with gcc/mingw on appveyor (#722)
enable gcc/mingw builds on appveyor. Some mingw tests crash currently, they need debugging and are currently disabled.
2016-05-15 13:28:22 -04:00
Vladimir Golovnev 64cb8b236a Move storage "file-by-file" (#632)
When moving storage for a torrent, only move files belonging to the torrent, one by one.
2016-04-30 22:18:38 -04:00
Arvid Norberg 20b41ad0b9 Threads (#671)
use std::thread, std::mutex, std::condition_variable instead of pulling them in from boost.asio internals.
2016-04-30 18:54:23 -04:00
Arvid Norberg f856b6bbe3 dial up cppcheck (#663)
increase cppcheck coverage and make sure there are no warnings
2016-04-30 00:24:45 -04:00
Andrei Kurushin 62eb956c54 fix x64 build with VS2015 UP2 compiler (#640)
fix VS2015 compiler warnings for: address-model=64, deprecated-functions=on, link=shared
2016-04-25 17:22:09 -04:00
Andrei Kurushin 7b5d48c02a fix default release build with VS2015 UP2 compiler warnings (#624)
* fix default release build with VS2015 UP2 compiler warnings
this will allow to successfully build:
bjam toolset=msvc-14.0 release deprecated-functions=off character-set=unicode link=static warnings-as-errors=on
2016-04-17 16:56:07 -04:00
arvidn 6bc5de5903 fail correctly when move_storage is called to move into its own directory 2016-04-02 10:03:31 -04:00
arvidn 0095aa084f make coalesce reads and coalesce writes actually work 2016-03-20 16:34:19 -04:00
arvidn a9d12766d4 fix typo in hard_link() 2016-03-20 16:14:29 -04:00
arvidn 139fb29647 remove unused O_DIRECT mode, and relax/simplify alignment requirements for coalesce_buffers 2016-03-20 00:55:31 -04:00
Alden Torres f71d775238 Allow xp compilation with the use GetFileInformationByHandleEx. 2016-01-25 12:22:33 -05:00
Alden Torres 5c94b286b0 Removed file::m_path windows specific field
Removed default_storage::sparse_end
Typos
2016-01-21 12:11:33 -05:00
arvidn fbb246094b fix windows build 2016-01-19 21:21:00 -05:00
arvidn 2fa84b3aa5 fix incorrect use of WaitForMultipleObjects 2016-01-19 18:47:21 -05:00
arvidn 1f9f588e75 merge copyright year update and changelog from RC_1_0 2016-01-17 18:57:46 -05:00
arvidn 78d306157b forward port of windows symlink fix from RC_1_0 2016-01-16 01:53:27 -05:00
arvidn c8f119c1a1 fix typo 2016-01-13 01:07:27 -05:00
arvidn 4a28e95ce0 fix missing error handling in windows preadv/pwritev emulation 2016-01-13 00:49:17 -05:00
Alden Torres 20d8f4e3f7 Removed unused fields in field class 2016-01-11 12:07:36 -05:00
arvidn e9b98c7d2e GetFileAttributesEx fix 2015-12-19 00:12:11 -05:00
arvidn d80a129871 fix gcc warnings 2015-12-12 07:15:24 +02:00
arvidn 06b648203f clean up use of error categories 2015-11-24 00:50:51 -05:00
arvidn fba0762353 fix some msvc warnings 2015-11-19 19:01:54 -05:00
arvidn c7a4eefd69 fixed typo 2015-11-14 02:22:35 -05:00
arvidn fb2f2731cf fix support for incomplete reads/writes from disk 2015-11-14 00:21:03 -05:00
arvidn 5bdb583162 remove fallocate hack (in master) 2015-09-21 20:22:19 -07:00
arvidn 17c5759829 disable warning for unused command line argument and fix warnings. remove redundant travis build config. use new preprocessor on clang to avoid warnings 2015-09-06 22:55:41 -04:00
arvidn 0e3e3ea793 add simple unit test for creating hard links 2015-08-30 20:14:55 -04:00
arvidn b7b0dafcca fix some warnings 2015-08-21 10:05:51 +02:00
arvidn 9a0092c120 fix some warnings 2015-08-16 12:17:23 -04:00
arvidn 1c1698459c fix warnings 2015-08-08 22:53:11 -04:00
arvidn 50925d7652 fix some more warnings 2015-08-08 02:48:01 -04:00
Jakob Petsovits 4853d0250f Avoid a warning if _BSD_SOURCE is already defined.
As _BSD_SOURCE has been deprecated since glibc 2.20, also add
_DEFAULT_SOURCE to the definitions. Both can be any value as long
as they're defined, so in order to save two lines, just #undef
them instead of checking with #ifdef/#endif.
2015-07-14 21:07:05 -04:00
arvidn 08016494a9 split up test_http_connection into smaller test cases 2015-06-21 12:41:50 -04:00
Arvid Norberg d43f7b56a2 update copyright year 2015-06-03 05:18:48 +00:00
Arvid Norberg 51e86ca2d5 more warning fixes and cleanup 2015-04-18 22:00:27 +00:00
Arvid Norberg 408232cfc8 raise warning level. fix a few of them. filter out warnings from boost 2015-04-18 02:33:39 +00:00
Arvid Norberg af57bdfe6a clean up use of error categories in file.cpp 2015-04-10 23:19:47 +00:00
Arvid Norberg c47699005f merge fixes from RC_1_0 2015-04-10 03:25:02 +00:00
Arvid Norberg 9af3066b56 fix file collision logic in torrent_info 2015-03-21 16:55:23 +00:00
Arvid Norberg ccc7e45406 landed mutable torrents branch in trunk 2015-03-21 00:12:40 +00:00
Arvid Norberg 794de25212 moved escape_string.hpp into the aux_ directory. moved out the 3 public hex functions into its own public header, hex.hpp 2015-03-14 23:10:20 +00:00
Arvid Norberg 37225b71ae const static -> static const (thanks gubatron). helps swigs parser 2015-03-14 00:42:27 +00:00
Arvid Norberg 10333221bc attempt at fixing file permission issues on windows 2015-03-09 06:09:50 +00:00
Arvid Norberg 89055c4c7a some more optimizations on loading torrents 2015-02-18 03:32:49 +00:00
Arvid Norberg e2d73cfe38 file not found is not an error in exists() 2015-01-15 02:31:38 +00:00
Arvid Norberg c9903bdaf2 use O_SYNC when available 2015-01-07 23:21:54 +00:00
Arvid Norberg c9075a530d fix build 2015-01-06 22:17:22 +00:00
Arvid Norberg a1c1f9393d fix flush_pieces in disk_io_thread to also flush the read cache 2015-01-01 10:10:13 +00:00
Arvid Norberg ae47823970 don't fail renaming a file in a torrent just because it doesn't exist (and the destination directory doesn't exist) 2014-12-26 21:25:37 +00:00
Arvid Norberg ca3c1620bd merged changes from RC_1_0 2014-12-17 14:33:52 +00:00
Arvid Norberg 1ed1963f29 remove size_type typedef in favor of boost::int64_t 2014-12-03 04:32:50 +00:00
Arvid Norberg edfa38cd30 merged changes from RC_1_0 2014-11-17 03:41:01 +00:00
Arvid Norberg cd456964ad storage fixes 2014-07-20 08:59:02 +00:00
Arvid Norberg 7351389ce8 land libtorrent_aio branch in trunk 2014-07-06 19:18:00 +00:00