Commit Graph

4493 Commits

Author SHA1 Message Date
Jordan Lee
42fbf1f646 (trunk libT) #4175 "bizarre and unwieldly logfile in 2.30b2" -- possible fix for gunzip to test 2011-04-10 00:05:18 +00:00
Jordan Lee
bad3cb53a3 (trunk libT) #4173 "crashing with r12315 in Debian" -- apply patch from comment:8 for testing in 2.30b2 2011-04-09 14:36:33 +00:00
Jordan Lee
6a53f72481 (trunk libT) in peer-mgr's closeBadPeers() function, don't bother doing any of the setup/teardown calculations if the peer array is empty. 2011-04-07 20:15:49 +00:00
Jordan Lee
35eb016209 (trunk libT) use get_next_scrape_time() inside the scrape error handler.
get_next_scrape_time() was introduced in r12297. The rationale is that by rounding all scrape times to their nearest 10th second, they will tend to occur in batches and improve multiscrape.
2011-04-07 20:00:26 +00:00
Jordan Lee
4a5415e84c (trunk libT) #3931 "'Announce is Queued' but torrent doesn't announce itself to trackers" -- add more debugging information for the next announce interval when an announce error is encountered, as requested by Sardok in comment:70 of #3931 2011-04-07 19:54:30 +00:00
Jordan Lee
03666d2365 (trunk libT) #4173 "Crashing with r12315 in Debian" -- possible fix? 2011-04-07 06:56:31 +00:00
Jordan Lee
7cef8dc8a8 (trunk libT) trivial commit fixing typo in the comments from r12297 2011-04-07 06:54:03 +00:00
Jordan Lee
712ee263de (trunk libT) more heap pruning: avoid four unnecessary malloc() + free() calls per tr_peer.
This commit also changes tr_recentHistory from being a general-purpose tool to being a little more hardcoded for the only purpose it's used, in tr_peerMgr. If its files (history.[ch]) don't find any other "customers" in libtransmission, eventually it should be demoted to being a private helper class inside of peer-mgr.c and have the history.[ch] files removed from the build.
2011-04-06 23:27:11 +00:00
Jordan Lee
bcec22eeb6 (trunk libT) remove an assertion from bitfield that doesn't always need to be true 2011-04-06 04:55:57 +00:00
Jordan Lee
f37da42a8c (trunk libT) fix ABR error when parsing a URL with no path and no trailing slash after the host. Error reported by livings124 2011-04-05 22:21:18 +00:00
Jordan Lee
4694f95594 (trunk libT) more heap pruning: avoid an unnecessary malloc() + free() when reading PadD during an outbound encrypted handshake 2011-04-05 21:14:44 +00:00
Jordan Lee
758da07fe9 (trunk libT) more heap pruning: avoid an unnecessary malloc() + strcmp() + free() when parsing the initial handshake string from a peer 2011-04-05 18:16:21 +00:00
Jordan Lee
b8d1bb3f6e (trunk libT) when processing errors in peer-io.c's event_read_cb() and tr_peerIoTryRead() functions, don't call tr_net_strerror() unless logging is turned on s.t. the string will be used. 2011-04-05 16:46:13 +00:00
Jordan Lee
3ba9796f4b (trunk libT) when processing an error in tr_peerIoTryWrite(), don't call tr_net_strerror() unless logging is turned on s.t. the string will be used. 2011-04-05 16:34:49 +00:00
Jordan Lee
46dd6f17ab (trunk libT) oops, r12313 committed the wrong version of list.c 2011-04-05 00:59:49 +00:00
Jordan Lee
e0f6ade71e (trunk libT) keep a pool of reusable tr_list nodes 2011-04-05 00:56:56 +00:00
Jordan Lee
1e0f92ba78 (trunk libT) Use tr_strndup() instead of tr_strdup() in tr_urlParse() to avoid a couple of strlen() calls 2011-04-05 00:55:09 +00:00
Jordan Lee
ac3ec2db39 (trunk libT) use alloca() for allocating the block array in updateBlockRequests() 2011-04-05 00:53:57 +00:00
Jordan Lee
85f853f214 (trunk libT) #4165 "crash on startup introduced in r12262" -- experimental commit 2011-04-05 00:29:42 +00:00
Jordan Lee
c14b6bdf03 (trunk libT) remove redundant assert()s 2011-04-05 00:26:31 +00:00
Jordan Lee
492d208dc8 (trunk libT) remove unnecessary memmove()s from rechokeDownloads() 2011-04-05 00:24:25 +00:00
Jordan Lee
17894f258c remove unneeded include 2011-04-04 21:42:04 +00:00
Jordan Lee
94e11008b9 (trunk libT) more heap pruning: avoid an unnecessary malloc() + free() when encrypting outbound messages 2011-04-04 16:53:15 +00:00
Jordan Lee
40b2ad63d9 (trunk libT) avoid an unnecessary malloc() + free() call when we finish downloading a block.
Pre-libevent2, this free() was useful in helping keep the peer's incoming piece data buffer from growing too large because that could be a significant amount of wasted space given enough peers. However now that we're using the libevent2 code, that piece data buffer gets handed off to the block cache, so most of the time we're freeing an evbuffer that doesn't have any inernal chains allocated anyway.
2011-04-04 05:15:54 +00:00
Jordan Lee
525d854016 (trunk libT) when reading piece data in from a socket, avoid two unnecessary calls to memcpy() 2011-04-04 04:45:41 +00:00
Mitchell Livingston
3e451b2bf9 small cleanup when determining if two announce URLs differ only by scheme 2011-04-03 03:25:13 +00:00
Jordan Lee
5bee93361b (trunk libT) fix UMR bug reported by wereHamster 2011-04-02 23:33:51 +00:00
Juliusz Chroboczek
232075f547 Reinstate including tcp.h in net.c.
Removed in r12225, this broke netSetCongestionControl.
2011-04-02 16:43:17 +00:00
Jordan Lee
4a47e3c869 (trunk libT) don't bother calling rechokeUploads() and rechokeDownloads() on torrents which have no peers. 2011-04-02 08:35:47 +00:00
Jordan Lee
11c4194da8 (trunk libT) better multiscrape 2011-04-02 07:44:19 +00:00
Jordan Lee
0245703634 (trunk libT) tr_torrentGetFileMTime() used to require two stat() calls.. now it only requires one. 2011-04-02 07:36:34 +00:00
Jordan Lee
e5a6641bda (trunk libT) tr_torrentFindFile2(): avoid an unnecessary malloc() + free() if the file we're looking for is complete and doesn't have a ".part" suffix 2011-04-02 03:31:41 +00:00
Jordan Lee
2328456a4a (trunk libT) simplify tr_torrent's hasAnyLocalData() to be more readable, and also to avoid yet another unnecessary malloc() and free() 2011-04-01 04:33:35 +00:00
Jordan Lee
c54f469c39 (trunk libT) more malloc pruning. *yawn*
tr_metainfoGetBasename(): avoid an unnecessary malloc() + free()
getannounce(): avoid an unnecessary malloc() + free() per each tracker
2011-04-01 04:13:51 +00:00
Jordan Lee
a2ee9f8d50 (trunk libT) avoid an unnecessary malloc/free in tr_urlIsValidTracker() and tr_urlIsValid() 2011-04-01 03:23:55 +00:00
Jordan Lee
0fffd84f65 (trunk libT) copyediting in resume.c 2011-04-01 03:13:44 +00:00
Jordan Lee
2e05d830e5 (trunk libT) streamline parsing the metainfo's file list 2011-04-01 03:09:24 +00:00
Jordan Lee
cdabd1b5eb (trunk libT) since the JSON parser gives us the string's length, we can call tr_strndup() instead of tr_strdup() 2011-04-01 03:07:43 +00:00
Jordan Lee
873396de2d (trunk libT) announcer.c: fold the tiers and trackers into fewer mallocs/frees 2011-03-31 20:26:43 +00:00
Jordan Lee
65f0f3effd (trunk libT) copyediting: peer-io's "EncryptionMode" type had a name too similar to tr_encryption_mode... rename it to reduce potential confusion 2011-03-31 16:41:52 +00:00
Jordan Lee
e6c0bdef6a (trunk libT) save 48 bytes per tr_torrent object. whoo! 2011-03-31 16:08:31 +00:00
Jordan Lee
1b02eb8641 (trunk libT) use aggregation for the tr_bandwidth objects owned by tr_session and tr_torrent 2011-03-31 14:53:22 +00:00
Jordan Lee
0c2dce9da7 (trunk libT) remove dead logic branch detected by clang static analyzer 2011-03-31 04:33:49 +00:00
Jordan Lee
0d593d3254 (trunk libT) fix "dangerous pointer arithmetic" warning detected by clang static analyzer 2011-03-31 04:24:57 +00:00
Jordan Lee
d8e28ec284 (trunk libT) fix minor dead store detected by clang static analyzer 2011-03-31 04:03:07 +00:00
Jordan Lee
bb561b5494 (trunk libT) fix ABR detected by clang static analyzer in tr_torrentStat.
When copying a value to s->errorString, it used memcpy(a,b,sizeof(a)) where sizeof(a) was larger than sizeof(b). Fixed by replacing the memcpy() call with tr_strlcpy().
2011-03-31 04:01:55 +00:00
Jordan Lee
5dd9b4a993 (trunk libT) fix potential UMR detected by clang static analyzer: maxPeers could be uninitialized in some pathological logic branches 2011-03-31 03:59:44 +00:00
Jordan Lee
c8bec40e3f (trunk libT) fix potential null pointer dereference in announcer.c 2011-03-31 03:37:50 +00:00
Jordan Lee
c7a43efc2b (trunk libT) fix file descriptor leak in tr-dht.c 2011-03-31 03:37:24 +00:00
Jordan Lee
210068410d (trunk libT) merge tr_bitfieldTestFast() and tr_bitfieldTest() 2011-03-30 04:23:20 +00:00