Frédéric Brière
2fa2d36c3b
findIncompleteFiles(): Replace dir listing with individual checks. Closes #6265 .
...
Looking for incomplete files in a new torrent by using a pre-generated
directory listing presents several disadvantages:
- It requires us to extract the top-level directory name (in case it
was renamed).
- It requires us to know whether the top-level directory was stripped.
- In the latter case, it may result in recursively traversing the
entire contents of all downloaded torrents.
Calling QFile::exists() individually for each file solves all these
issues.
In so doing, the handling of single-file and multiple-file torrents are
rendered pretty much identical, and can therefore be merged.
2017-05-31 00:34:03 +03:00
Vladimir Golovnev
b6e1b6e501
Revert "Guard the flag used for deferred session configure." ( #6733 )
...
This reverts commit 5cbc7b16c0 .
2017-05-31 00:33:57 +03:00
Vladimir Golovnev (Glassez)
91a38193f5
Remove torrent temp folder when torrent is deleted
2017-05-31 00:33:39 +03:00
Eugene Shalygin
b8eee9e1b8
Start up torrents after UI was created. Fixes #6454 .
...
Commit dd0537d changed torrents startup code adding alerts processing
into it. Therefore alerts were processed before UI code subscribed to
signals and therefore part of alerts was not reflected in the UI.
Thus here we do not start torrents in Session constructor, but do that
from Application::exec() after UI was constructed and is ready to process
signals.
2017-05-31 00:33:21 +03:00
sledgehammer999
02c96fa5e2
Change the user-agent format in the session.cpp too.
2017-04-04 01:48:43 +03:00
Chocobo1
f0eab3f085
Follow http user-agent format
...
Add version variable without the starting "v"
2017-04-04 01:48:27 +03:00
Chocobo1
21212fdfe5
Prepend QBT_ for preprocessor variables
2017-04-04 01:48:26 +03:00
Chocobo1
8dcb792ac0
Replace rand() by a true uniform distribution generator
2017-03-05 18:47:37 +02:00
falco
dd0537d8d2
fix queue overload for add torrent at session start
2017-03-03 02:34:00 +02:00
dzmat
721d29edda
DRY violation fixed
2017-03-03 02:07:54 +02:00
sledgehammer999
101b2f3ad2
Remove settings to exchange trackers. It wasn't used by non-libtorrent clients. Also it has a privacy risk and you might be DDoSing someone. DHT makes it obsolete anyway.
2017-03-03 02:07:51 +02:00
Eugene Shalygin
8041af72cd
Fetch torrent status when generating final fastresume data
...
This is done to get correct queue position, which has to be written into
the fastresume file. See discussion in #6154 .
2017-03-03 02:07:46 +02:00
Eugene Shalygin
4be6d0b30f
Add queue repair code
...
This is a bit adjusted code created by nxd4, who shared it in issue
disappearing).
2017-03-03 02:07:45 +02:00
Eugene Shalygin
00d4f6141f
Do not remove added files unconditionally. Closes #6248
...
If removing of added torrents is enabled and dialog for adding torrents
is disabled, file guard was assuming that torrent is added successfully.
And that can be not the case if a user trying to add a broken torrent
file (or not a torrent file at all). Then this file gets deleted always.
Fix this by checking result of addTorrent_impl().
2017-03-03 01:46:56 +02:00
Eugene Shalygin
92428cee5d
Set upper version limit for QTBUG-52633
...
The bug seems to be fixed in version 5.7.1.
2017-03-03 01:46:28 +02:00
sledgehammer999
4cf549ff25
Fix share ratio limiting. Broken by commit 259b5e51c4. Closes #6039 #6048 .
2016-12-15 00:06:04 +02:00
Eugene Shalygin
9a0d25284c
Add a workaround for QTBUG-52633, qBt issue #5073
...
The QTBUG-52633 results in food of network interface changed events, libtorrent IP
rebind calls and flood in the qBt log. The work around is the check not only for
interface name, but for IP address on that interface before triggering the libtorrent rebind.
2016-12-14 02:04:12 +02:00
dzmat
a790901691
minimizing the number of warnings about deprecated auto_ptr
2016-12-12 21:17:17 +02:00
sledgehammer999
106dcfd00e
Decouple dependency between Session and BandwidthScheduler during Session init. Closes #6007 .
2016-12-12 21:17:14 +02:00
thalieht
642377bd65
Log: set embedded Tracker [OFF] msg type as info
2016-12-12 21:16:32 +02:00
sledgehammer999
09e3698b37
Don't ever stop seeding forced torrents. Closes #5784 .
2016-12-12 21:15:51 +02:00
sledgehammer999
e9f38ebcfd
Some more compiler warnings fixed.
2016-12-12 21:15:50 +02:00
sledgehammer999
4dba31f534
Fix warning due to stupid typo.
2016-12-12 21:15:50 +02:00
sledgehammer999
eaec8fcddd
Fix setting a speed limit.
2016-12-12 21:15:49 +02:00
sledgehammer999
f86fd52d6f
Add libtorrent's DHT bootstrap node to our bootstrap list.
2016-12-12 21:15:49 +02:00
sledgehammer999
f3f175570c
Use the new API to add DHT bootstrap nodes for libtorrent 1.1.x and simplify the code a bit.
2016-12-12 21:15:49 +02:00
sledgehammer999
729c80f910
Use new libtorrent 1.1.2+ utility function to generate client ID instead.
2016-12-12 21:15:48 +02:00
sledgehammer999
fcaca558a0
Make sure that paths are loaded/saved using slashes as dir separators.
2016-12-12 21:15:48 +02:00
sledgehammer999
983df9113e
Display message about libtorrent plugins for the correct case.
2016-12-12 21:15:48 +02:00
sledgehammer999
acf9874252
Migrate last setting related to interfaces to the new system.
2016-12-12 21:15:48 +02:00
sledgehammer999
558ea53cc2
Use better variable names for tracker announce IP setting.
2016-12-12 21:15:47 +02:00
sledgehammer999
4a5ab93c62
Guard the flag used for deferred session configure.
2016-12-12 21:15:46 +02:00
sledgehammer999
4c86fc8973
Misc fixes.
2016-12-12 21:15:46 +02:00
sledgehammer999
1c485ffb07
Fix setting limits to unlimited.
2016-12-12 21:15:46 +02:00
sledgehammer999
f283734f13
Rename IP filtering functions and settings names.
2016-12-12 21:15:45 +02:00
sledgehammer999
dca4ff0649
Export torrents added only after the setting was enabled.
2016-12-12 21:15:45 +02:00
Vladimir Golovnev (Glassez)
1975f2269e
Use new libtorrent-1.1 settings API
2016-12-12 21:15:42 +02:00
Vladimir Golovnev (Glassez)
6fac9b42da
Don't use Preferences in BitTorrent::Session
2016-12-12 21:12:01 +02:00
Vladimir Golovnev (Glassez)
63245de69b
Do not create save folder in advance
...
Closes #5422 .
2016-07-20 00:40:58 +03:00
sledgehammer999
3ec2f94b27
Fixup previous commits and allow IPv6 interface addresses too.
2016-06-20 02:04:17 +03:00
Sjoerd van der Berg
ce2d42a264
Change back to the original names for the announce address
...
Only allow ip's through that match the currenrly selected network interface and address
2016-06-20 02:04:16 +03:00
Sjoerd van der Berg
dc011a5599
Add option to bind directly to an IP instead of using a network Interface
2016-06-20 02:04:16 +03:00
sledgehammer999
18c9a65340
Rename ASM to TMM and related stuff.
2016-06-20 02:03:08 +03:00
Vladimir Golovnev (Glassez)
59971aa577
Use new alert dispathing API
2016-06-20 02:02:47 +03:00
Eugene Shalygin
3060c979f4
Add option to automatically remove .torrent files upon adding
...
Some browsers do not download files, intended for immediate opening,
into a temporary directory, and thus a regular download directories
accumulate those unneeded files.
The option allows qBittorrent to clean after itself and delete those
files whether they were succesfully added or not (user-selectable
policy).
2016-06-20 02:02:41 +03:00
Chocobo1
6023093329
Fix "IP Filtering - Apply to trackers" wasn't being applied. Closes #5217 .
2016-06-20 02:01:16 +03:00
sledgehammer999
283338f5f3
Don't show added torrent notification during startup.
2016-06-20 02:01:15 +03:00
Vladimir Golovnev (Glassez)
9016b698c9
Use truncated torrent hash in temp path
2016-06-20 02:01:14 +03:00
Vladimir Golovnev (Glassez)
eb7a7b9c04
Use unique temp directories
...
Save torrent in temp_path/<torrent_hash> directory.
Closes #5154 .
2016-06-20 02:01:13 +03:00
Vladimir Golovnev (Glassez)
e7cfd7a31d
Try to find incomplete files for new torrent
2016-06-20 02:00:49 +03:00