1
0
Fork 0
mirror of https://github.com/transmission/transmission synced 2024-12-27 10:07:40 +00:00
Commit graph

114 commits

Author SHA1 Message Date
Jordan Lee
a8468a7b09 (trunk libT) #4684 "tr_cpSizeWhenDone() is slow for huge torrents that we're only partially downloading" -- fixed.
There are actually two different implementations of the byte-counting in that function: a slower implementation was added prior to 2.40 in r12918 to double-check the standard implementation. This checking was added to help smoke out a bug that was fixed in r12920, but I forgot to remove that slower implementation.
2011-12-22 19:35:13 +00:00
Jordan Lee
4857e8ebb1 (trunk libT) add several more tr_completion assertions to smoke out the (sizeWhenDone() < sizeNow()) error reported in the forums 2011-09-26 06:18:48 +00:00
Jordan Lee
0560b14cfe #4496 'freeze when having a huge torrent' -- add a bitfield helper function to init the bitfield from an array of flags. 2011-09-20 23:39:40 +00:00
Jordan Lee
fdec244f04 (trunk libT) #4336 "availablility nonsense" -- fix bug in tr_cpMissingBytesInPiece() introduced last week by r12515 for #4332. Add assertions to the nightly build to watch for regressions of this fix.
The bug was that I fixed #4332's off-by-one improperly in tr_cpMissingBlocksInPiece(). The piece's last block has to be calculated separately because its byte size may be different than the other blocks, The mistake in r12515 was that the last block could wind up being counted twice.
2011-07-02 13:20:17 +00:00
Jordan Lee
42a49a6c70 (trunk libT) #4332 "countRange/countArray exception" -- fix bug in tr_cpMissingBytesInPiece() 2011-06-25 13:31:25 +00:00
Jordan Lee
3660c44934 (trunk libT) handle situations where we don't know the bitfield's upper bound in advance. This comes up sometimes with magnet links. 2011-03-30 04:14:57 +00:00
Jordan Lee
947134bbb3 (trunk libT) more completion and bitfield cleanup: (1) fix regression in tr_cpSizeWhenDone() reported by Waldorf, (2) make simple one-liner functions inlined 2011-03-29 01:17:18 +00:00
Jordan Lee
83c0e4f011 (trunk libT) break the mac build and introduce new crashes.
This is partially to address #4145 "Downloads stuck at 100%" by refactoring the bitset, bitfield, and tr_completion; however, the ripple effect is larger than usual so things may get worse in the short term before getting better.

livings124: to fix the mac build, remove bitset.[ch] from xcode
2011-03-28 16:31:05 +00:00
Jordan Lee
b4d36aeb54 (trunk) #4138 "use stdbool.h instead of tr_bool" -- done. 2011-03-22 15:19:54 +00:00
Jordan Lee
374ed10f3b (trunk) it's bad form to #include so many system headers in libtransmission/utils.h... 2011-03-16 18:04:23 +00:00
Jordan Lee
f015bafdbf (trunk libT) #4083 "Wrong shades of progress in Inspector pieces view." -- fixed.
The problem was reported by Rolcol and tracked down by livings124. It's flashing orange because the completion in "availability" doesn't match the completion in in "progress", which corresponds with tr_torrentAvailability() and tr_torrentAmountFinished(). tr_cpGetAmountDone() was recently reworked in r12012 for #4048, which caused the problem. Both functions need to sample the torrent using the same methodology so that their results can be used together.
2011-03-05 03:51:57 +00:00
Mitchell Livingston
6092362c1e revert the last commit 2011-02-26 14:59:05 +00:00
Mitchell Livingston
39709abd6e store secondsDownloading and secondsSeeding as ints instead of time_t 2011-02-26 14:56:58 +00:00
Jordan Lee
2b9db3c242 (trunk libT) #4048 "use bitsets instead of bitfield in tr_completion" -- done.
Excuse the sprawl. Much of this didn't fit into self-contained commits.
2011-02-23 03:54:04 +00:00
Jordan Lee
d591767941 (trunk libT) #3656 "endgame could be faster" -- fixed. Patch by harrydb. 2011-02-15 16:04:56 +00:00
Jordan Lee
9ed800c45a (trunk libt) #3968 "tr_cpFileIsComplete could be faster" -- fixed.
Rewriting this function as described in ticket #3968. This rewrite drops it from 1.77% of cpu use to 0.07%.
2011-01-31 16:43:37 +00:00
Jordan Lee
879a2afcbd Update the copyright year in the source code comments.
The Berne Convention says that the copyright year is moot, so instead of adding another year to each file as in previous years, I've removed the year altogether from the source code comments in libtransmission, gtk, qt, utils, daemon, and cli.

Juliusz's copyright notice in tr-dht and Johannes' copyright notice in tr-lpd have been left alone; it didn't seem appropriate to modify them.
2011-01-19 13:48:47 +00:00
Charles Kerr
e5bb3205a1 (trunk) Join the 21st century and use only 1 space at the end sentences. This commit is nearly as important as the semi-annual ones that remove trailing spaces from the ends of lines of code... :) 2010-12-27 19:18:17 +00:00
Charles Kerr
254a1f15cb (trunk libT) down the rabbit hole: various minor type correctness changes unearthed by -Wconversion 2010-06-30 16:40:19 +00:00
Charles Kerr
4917cd119b (trunk libT) #3051 "faster startup by adding 'have all' idiom to .resume files" -- implemented in trunk for 2.00 2010-03-15 23:29:56 +00:00
Charles Kerr
5c26afdb52 happy new year! 2010-01-04 21:00:47 +00:00
Charles Kerr
ac202f13bb (trunk libT) remove dead code -- tr_assert() 2009-12-28 23:11:26 +00:00
Charles Kerr
78ead8c3dd (trunk) update the copyright notices 2009-12-05 02:19:24 +00:00
Charles Kerr
f69e335291 (trunk) #2096: Magnet, BEP #9 support 2009-11-24 02:16:31 +00:00
Charles Kerr
f4dde1eb67 (trunk libT) omit some unnecessary tests on the bitfield checks. these seem small, but bitfields are always the top CPU abuser when I profile... 2009-04-11 03:24:36 +00:00
Charles Kerr
29661cf245 (trunk libT) new macro, tr_assert(). use it to help smoke out #1749 2009-01-25 16:14:11 +00:00
Charles Kerr
f47cc0cf4d (trunk libT) #1794: possible fix -- better handling of zero-size files 2009-01-25 04:22:11 +00:00
Charles Kerr
a13e0755f0 (trunk libT) close open files immediately after they're done downloading 2009-01-12 21:59:53 +00:00
Charles Kerr
a1b2af981c (trunk libT) annotate tr_cpBlockBitfieldSet() as suggested by wereHamster. 2009-01-09 17:55:48 +00:00
Charles Kerr
30ebbdaacb (trunk libT) re-enable the completion sanity tests for the benefit of the nightly builds 2009-01-07 17:22:17 +00:00
Charles Kerr
141847b902 (trunk libT) update the copyrights on some files that no longer have old code in them 2009-01-07 06:53:29 +00:00
Charles Kerr
c5ecccdd24 (trunk libT) much faster implementation of tr_cpBlockBitfieldSet() 2009-01-07 02:22:11 +00:00
Charles Kerr
196c3c19c3 (trunk libT) apparently the r7629 tr_cpBlockBitfieldSet() speedup introduced a bug. 2009-01-06 14:43:15 +00:00
Charles Kerr
c0acf3e920 (trunk libT) hm, checked in the wrong version. 2009-01-06 07:48:30 +00:00
Charles Kerr
7581f04242 (trunk libT) faster tr_cpBlockBitfieldSet() 2009-01-06 07:45:15 +00:00
Charles Kerr
199e38dd66 (trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_completion, contain the it directly rather than a pointer to one allocated elsewhere on the heap. 2009-01-02 17:01:55 +00:00
Charles Kerr
d6b4db4a78 (trunk libT) add "inline" hint to several one-liner functions 2009-01-02 06:28:22 +00:00
Charles Kerr
7a4002dd3a (trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_bitfield, contain it directly rather than a pointer to one allocated elsewhere on the heap. 2008-12-29 09:51:54 +00:00
Charles Kerr
c910993b68 #1379 lay some very early groundwork for "partial seeds" -- change tr_completion's enum to use the partial seed terminology 2008-11-30 01:52:45 +00:00
Charles Kerr
d12af295c1 use tr_bool instead of C bitfields. (http://blogs.msdn.com/oldnewthing/archive/2008/11/26/9143050.aspx) 2008-11-28 22:11:41 +00:00
Charles Kerr
194833dfec (libT) optimize tr_cpHaveValid(), which according to cachegrind is the biggest remaining hotspot function 2008-11-05 04:50:03 +00:00
Charles Kerr
5d35dfaeca (libT) micro-optimizations suggested by cachegrind 2008-11-03 17:01:08 +00:00
Charles Kerr
0c4f300f1b #1369: clarify the different torrent status & callbacks' APIs and typenames 2008-10-20 17:54:56 +00:00
Charles Kerr
5178988964 (libT) eliminating tr_errno, part 3: don't use it in tr_cpBlockBitfieldSet() 2008-10-02 23:37:58 +00:00
Charles Kerr
cc89872dd4 run libT, cli, daemon, gtk through the source-code formatter "uncrustify" as promised/threatened 2008-09-23 19:11:04 +00:00
Charles Kerr
b860119cd3 minor text cleanup 2008-08-01 16:43:22 +00:00
Charles Kerr
bc26bcb705 maybe fix the forced-recheck-on-startup bug that pea_, John_Clay, and Gimp_ reported over the last two days 2008-06-11 02:19:40 +00:00
Charles Kerr
9f23502411 use "1.0f" instead of "1f" 2008-06-10 00:31:06 +00:00
Charles Kerr
eb72d44d94 fix oops from previous commit. hi, titer 2008-06-10 00:28:59 +00:00
Charles Kerr
adbbf82302 (libT) make tr_torrentAmountFinished() look at the same pieces as tr_torrentAvailability() for consistency's sake as requested by BentMyWookie 2008-06-09 23:58:31 +00:00