Chocobo1
aafee60033
Allocate memory on stack whenever feasible
...
The fast path gives another 20% speed up than the slower path.
3 years ago
Vladimir Golovnev (Glassez)
7a539d9890
Store hybrid torrents using "torrent ID" as basename
3 years ago
Vladimir Golovnev (Glassez)
c40408b337
Make Digest32 implicitly shared class
3 years ago
Chocobo1
4e2daf117b
Speed up bitfields conversion
...
The old code took 3~5 times longer than the newer version.
3 years ago
Vladimir Golovnev
26352c9eb4
Cache pieces info
...
PR #16238 .
3 years ago
Chocobo1
53992bf0d5
Initialize class variable in initializer list
3 years ago
Chocobo1
ff99e5ac9a
Speed up piece relevance calculation
...
For ~800 pieces, this roughly cuts the run time (of this function) in
half.
3 years ago
Vladimir Golovnev
4d54fb675f
Correctly handle received metadata
...
It did not work correctly, since it assumed that 'lt::torrent_plugin' is created at an earlier stage and is able to track all changes in the torrent state, but in reality it turned out that it was created after the torrent moved to the `downloading_metadata` state, so we had to additionally handle it in the constructor.
PR #16121 .
3 years ago
Vladimir Golovnev
43441d8291
Handle missing torrent alerts
...
PR #16085 .
3 years ago
Chocobo1
5ebbed8160
Revise error message
...
Remove the period mark at the end of error message since
`errc.message()` already contains one.
3 years ago
Vladimir Golovnev
5f623e32c4
Correctly handle XML parsing errors
...
PR #16071 .
3 years ago
Chocobo1
e4a67183bd
Update default value of "Type of service for peers"
...
Upstream change:
3d701c7380
PR #16036 .
3 years ago
Vladimir Golovnev
a3be239a60
Keep "torrent info" alive while generating .torrent file
...
PR #16018 .
3 years ago
Vladimir Golovnev
d39c6bef4b
Correctly handle Auto TMM in Torrent Files Watcher
...
PR #13690 .
3 years ago
Vladimir Golovnev
84a8158aa2
Correctly track the root folder name change
...
PR #16004 .
3 years ago
Vladimir Golovnev (Glassez)
fbc85bed64
Move torrent immediately when "save path" is changed
3 years ago
Vladimir Golovnev (Glassez)
52b54fe154
Don't try to move storage into its current location
3 years ago
Vladimir Golovnev
f44341a8e2
Handle .!qB extension behind the scenes
...
PR #15920 .
3 years ago
thalieht
d3bdeaab3f
Replace "seeding_duration" with "finished_duration" everywhere
...
Closes #10223 .
PR #13601 .
3 years ago
sledgehammer999
d6fc020ba7
Bump to 4.5.0alpha1
3 years ago
sledgehammer999
ac5a485651
Disambiguate the data type
3 years ago
Chocobo1
01a0fff4c2
Add missing field initial value
...
Suppresses the following warning:
qBittorrent/src/base/bittorrent/categoryoptions.cpp: In static member function ‘static BitTorrent::CategoryOptions BitTorrent::CategoryOptions::fromJSON(const QJsonObject&)’:
qBittorrent/src/base/bittorrent/categoryoptions.cpp:44:59: warning: missing initializer for member ‘BitTorrent::CategoryOptions::DownloadPathOption::path’ [-Wmissing-field-initializers]
44 | options.downloadPath = {downloadPathValue.toBool()};
3 years ago
Vladimir Golovnev (Glassez)
fdbf8cb0ee
Correctly concatenate path components
3 years ago
Vladimir Golovnev (Glassez)
1c0f8b4289
Redesign "Incomplete folder" feature
...
Change "Incomplete/temp folder" term with "download folder".
Allow to set "download folder" per torrent (in manual mode) and per category (in automatic mode).
3 years ago
Chocobo1
63043b4927
Replace min, max, clamp functions with std counterparts
3 years ago
Chocobo1
3ea4c66d41
Replace QPair with std::pair
3 years ago
Chocobo1
39f054eef6
Migrate "setting key mappings" to upgrade code
3 years ago
Chocobo1
7a620c794d
Fix garbage message when reporting error
...
PR #15883 .
3 years ago
Vladimir Golovnev (Glassez)
62b50d1475
Make TorrentInfo immutable
3 years ago
Chocobo1
aedd997604
Don't expire connection when there are data in buffer
...
For writing, this ensures expire handler won't be executed in a small
time window, that is after `m_socket->write()` and before
`QIODevice::bytesWritten()` signal.
For reading, this let the socket to have the chance to process the
received data instead of dropping it.
PR #15849 .
3 years ago
Chocobo1
ad9d0608d4
Avoid needless string-bytes conversion
...
This saves a few microseconds.
3 years ago
Chocobo1
3c5688c6f6
Reserve enough buffer space according to response content size
3 years ago
Chocobo1
ece92a886a
Restart idle timer on sending network response
3 years ago
Chocobo1
85777ea491
Simplify tray icon related code
3 years ago
Chocobo1
1c52fff1cc
Unify value loading paths
...
The idea is to try load every intermediate value from the base case and
then convert them to their respective type.
3 years ago
Chocobo1
2d48581570
Move main window setting to its own section
3 years ago
Chocobo1
b8a7ecfe69
Introduce versioning on main configuration file
3 years ago
Vladimir Golovnev
3d7ff9765a
Make meaning of "torrent root path" consistent
...
PR #15816 .
3 years ago
Chocobo1
28f2def21f
Remove redundant layer of `QVariant` in `Preferences` class
...
PR #15812 .
3 years ago
Chocobo1
e3fe66d3ec
Store enum type in settings directly
...
Affected settings will be migrated to new keys so nothing should break.
PR #15800 .
3 years ago
OctopusET
ab5605d54b
Use proper string for Korean language
...
PR #15799 .
3 years ago
Chocobo1
19d95ebd10
Add comment for qHash implementation requirements
...
As clazy report false-positive on this.
3 years ago
Chocobo1
c8b66b25e8
Avoid potential container detachment
...
Suppress clazy warning:
warning: Don't call QList::operator[]() on temporary [-Wclazy-detaching-temporary]
3 years ago
Chocobo1
e6f07a6fe4
Use implicit copy-constructor generated by compiler
...
This also suppresses the following clang warning:
warning: definition of implicit copy assignment operator for 'Version<unsigned short, 2>' is deprecated because it has a user-declared copy constructor [-Wdeprecated-copy]
3 years ago
Chocobo1
d78b2a569f
Fix handling when Content-Length field is absent
...
Closes #15754 .
PR #15757 .
3 years ago
Chocobo1
71270260bf
Reformat code
3 years ago
Chocobo1
22abbc1d41
Store Qt6 table header states under a different key
3 years ago
Chocobo1
32698fe0be
Migrate away from low-level `SettingsStorage` class
...
Also add `QFlags<T>` support to `SettingsStorage`.
PR #15693 .
3 years ago
Chocobo1
7aa859a442
Don't use deprecated statfs64() on macOS ( #15661 )
...
Co-authored-by: Nick Korotysh <kolchaprogrammer@list.ru>
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
3 years ago
Chocobo1
180deb867a
Use char array directly
...
This eliminates the possibility of reassigning the pointer to another
address.
3 years ago