Commit Graph

548 Commits

Author SHA1 Message Date
Chocobo1
411b956009 Fix speed limit not applying to IPv6 peers
`TORRENT_USE_IPV6` is not used by libtorrent 1.2 anymore.
2019-06-02 15:00:27 +08:00
Chocobo1
3f2ce8a2b7 Remove unused stats_alert handler
Fixup 0fe9cd05c4.
2019-06-01 11:43:00 +08:00
Chocobo1
39830986c2 Use alert's timestamp
This way has better accuracy than running our own timer.
2019-06-01 11:40:23 +08:00
Chocobo1
0fe9cd05c4 Avoid using deprecated stats_alert
From libtorrent doc:
This alert has been superseded by calling post_torrent_updates() regularly on the session object.
2019-05-31 10:58:23 +08:00
Chocobo1
45bafab4e0 Log performance alerts from libtorrent 2019-05-27 14:46:33 +08:00
Chocobo1
ed6bb0efdc Replace QList by QVector for tracker related operations 2019-05-22 12:57:22 +08:00
Chocobo1
6738cdd715 Constify exception references 2019-05-19 12:06:18 +08:00
Chocobo1
c6f3da1097 Improve removeIf() to support set types
We can now replace QMutable*Iterator by removeIf() which usage is more consistent with other
algorithm functions.
2019-05-14 01:26:01 +08:00
Chocobo1
3955eef50d Change to lt namespace
Quoting from libtorrent doc:
> In the future, libtorrent will be the alias and lt the namespace name.
2019-05-13 11:20:41 +08:00
Chocobo1
4b263f057d Use newer libtorrent API
This commit covers session.cpp only.
2019-05-13 11:20:41 +08:00
Chocobo1
677a419f0b Use upstream defined namespace
`lt` namespace is defined since libtorrent 1.1.6 and our master branch requires >= 1.1.10,
so there is no need to add #if condition for it.
2019-05-13 11:20:41 +08:00
Chocobo1
aaed5f7fe0 Remove unused headers 2019-05-01 11:09:25 +08:00
thalieht
25102b9c5d Increase the download size limit to 100 MiB 2019-04-10 11:39:27 +03:00
Vladimir Golovnev (Glassez)
ead078a38e Add preliminary support of libtorrent v1.2
libtorrent v1.2 should be built with deprecated features enabled.
2019-03-18 15:17:03 +03:00
thalieht
4c53447d35 Remove the max half-open connections option from GUI
Its functionality was deprecated long ago.
2019-03-13 21:08:40 +02:00
Vladimir Golovnev
928ce940c9 Merge pull request #10346 from glassez/download-manager
Improve "Download manager"
2019-03-10 09:13:07 +03:00
Vladimir Golovnev (Glassez)
746916a963 Use DownloadHandler behind the scenes 2019-03-08 13:00:37 +03:00
Vladimir Golovnev (Glassez)
6cb15706f5 Reduce number of DownloadManager signals 2019-03-05 11:28:29 +03:00
sledgehammer999
5c63ad3b95 Raise minimum Qt version to 5.9.0 2019-03-04 16:48:49 +02:00
Chocobo1
168d3fbdac Replace deprecated trUtf8() 2019-02-28 12:01:36 +08:00
thalieht
8c944bd4e1 Avoid repeating the return type 2019-02-16 18:54:18 +02:00
Mike Tzou
78ab0e4ba9 Merge pull request #10220 from thalieht/const
Add const to many vars and arguments
2019-02-13 12:11:00 +08:00
thalieht
445adb0ab4 Convert pass-by-value arguments to const refs where applicable 2019-02-12 02:45:55 +02:00
thalieht
ca3ce87e06 Add const to many vars and arguments
Also remove const in declarations' arguments that are passed by value
2019-02-11 20:19:41 +02:00
Chocobo1
364a837dbd Revise comments about C++14 2019-02-05 13:35:54 +08:00
Chocobo1
6d29a3af60 Make use of std algorithms 2019-02-05 13:35:54 +08:00
sledgehammer999
6fdc02f947 Merge pull request #10201 from sledgehammer999/dead_code
Remove leftover tracker authentication code
2019-01-27 22:19:21 +02:00
sledgehammer999
4a414d50f1 Remove leftover tracker authentication code 2019-01-23 02:38:46 +02:00
Chocobo1
04227f5a41 Add QBT_APP_64BIT define
Now we use QT_POINTER_SIZE to detect CPU bitness, it has the advantage of applicable to all CPU
architectures not limiting to x86 arch.
2019-01-19 10:14:10 +08:00
Vladimir Golovnev (Glassez)
302c99d7d5 Drop support of libtorrent < 1.1.10 2019-01-11 15:13:17 +03:00
Chocobo1
2b903fc3d1 Move Utils::Misc::isUrl() function
All usage of this function gets to call Net::DownloadManager eventually.
2018-12-31 20:00:15 +08:00
Chocobo1
6759446639 Cleanup code
Also remove redundant code, it is already handled correctly in subsequent function calls.
2018-12-31 20:00:15 +08:00
Chocobo1
2a84345835 Mark constructors as explicit 2018-12-26 12:04:40 +08:00
Vladimir Golovnev
fc08091765 Merge pull request #9940 from glassez/error-msg
Show error message when Session failed to start
2018-12-09 11:16:17 +03:00
Mike Tzou
1eef5b6876 Merge pull request #9373 from FranciscoPombal/checking_mem_usage_adv_settings
Add checking_mem_usage option to AdvancedSettings
2018-12-06 16:20:02 +08:00
FranciscoPombal
74be5d9030 Add checking_mem_usage option to AdvancedSettings 2018-12-06 03:10:24 +08:00
Vladimir Golovnev (Glassez)
89deccd9b5 Show error message when Session failed to start 2018-12-05 19:57:44 +03:00
thalieht
1f36b8b89f Combine qAsConst() with copyAsConst() to asConst() 2018-11-28 23:41:23 +02:00
thalieht
6b1d26d555 Convert all foreach() to range-based for() 2018-11-28 23:40:12 +02:00
thalieht
d668a4fe6d Fix coding style for various things 2018-11-28 23:37:35 +02:00
Vladimir Golovnev (Glassez)
68508ba657 Save torrents queue in separate file 2018-11-27 16:55:45 +03:00
Mike Tzou
2ce57b97be Merge pull request #9799 from Chocobo1/removeCheckbox
Remove speed limit checkbox in Options dialog
2018-11-07 13:40:43 +08:00
Vladimir Golovnev
54e4806e3d Merge pull request #9817 from Piccirello/torrent-dl-success
Handle downloading .torrent file as success
2018-11-06 15:39:51 +03:00
Chocobo1
3fa5358c3f Remove speed limit checkbox in Options dialog
This unifies speed limit UI elements throughout the program.
2018-11-05 11:07:52 +08:00
Tom Piccirello
1b81356a67 Handle downloading .torrent file as success
We don't know whether the download will be successful, so default to success. Closes #9811.
2018-11-04 14:43:33 -05:00
Vladimir Golovnev (Glassez)
a8c00456e4 Restore torrent in two steps
Add/restore all torrents in "paused" state and then resume those
that need to be really "resumed" (added/restored in "resumed" state).
Keep torrents with missing files paused.
Force recheck torrent with missing files when it's resumed by the user.
2018-11-02 19:25:26 +03:00
sledgehammer999
2f1a0ffe5c Use a more detailed alert mask where possible
Closes #9547
2018-10-02 02:42:06 +03:00
sledgehammer999
9ce619eac8 Decrease probability of missing important alerts
During startup we can get above 1000 alerts at each pop even with only
30 torrents in the queue. This is because libtorrent will post
piece_finished_alert and file_completed_alert for each torrent. These
alerts push out of the way the ones we care about.
The alert queue will be grown to max only if needed. So we don't use
more memory. It will greatly depend on how many torrents a user has in
their session.

When getting fastresume_rejected_alert we need to act as fast as
possible in pausing it, otherwise there's a chance it will begin
downloading and writing to disk before we pause it.
2018-09-06 02:06:44 +03:00
thalieht
ec9120adf0 Save torrents priorities on torrent finished
Save fastresumes for all torrents that shifted in the queue when a torrent finished.
2018-08-25 22:02:14 +03:00
thalieht
95b02bbb2e Save fastresumes when changing torrent priorities 2018-08-25 22:02:14 +03:00