Commit Graph

4388 Commits

Author SHA1 Message Date
Jordan Lee 5f9e7f773b #5146 'seeding complete callback called twice': revert r13627 due to issues described in https://trac.transmissionbt.com/ticket/5146#comment:15 2013-01-27 06:02:52 +00:00
Jordan Lee 388da24dd0 (libT) add package-visible API hook for when a block is downloaded. Add unit test to confirm that when the last file finishes downloading, its .part suffix is removed and it's moved from the incomplete to complete dir 2013-01-26 23:08:51 +00:00
Jordan Lee f75027d5e9 make all the log functions/structs/enums use a single 'tr_log' namespace, such as tr_logGetQueue, tr_logAddInfo, tr_logIsLevelActive 2013-01-25 23:34:20 +00:00
Jordan Lee 797976b336 copyediting: modify more files to the new indentation/whitespace formatting 2013-01-25 06:01:45 +00:00
Jordan Lee ad3407567b (libT) copyediting: modify more files to the new indentation/whitespace formatting 2013-01-24 23:59:52 +00:00
Jordan Lee eb4b2d609a (libT) #5249 'error parsing json in some locales': fix the bug; the new locale unit tests in json-test pass now 2013-01-24 16:33:49 +00:00
Jordan Lee 887850a636 (libT) #5249 'error parsing json in some locales': add unit tests to test for this bug. 2013-01-24 16:04:09 +00:00
Jordan Lee 644c647799 (libT) unroll decode_hex_string() 2013-01-24 00:53:37 +00:00
Jordan Lee 06d9f20759 (libT) #1220 'change file and folder names': finish cleaning up the unit test for calling tr_torrentRenamePath() on an incomplete torrent with .part files 2013-01-23 22:53:58 +00:00
Jordan Lee e34be5e573 (libT) rename-test tracers 2013-01-23 22:43:16 +00:00
Jordan Lee ee2e408288 (libT) rename-test tracers 2013-01-23 22:30:23 +00:00
Jordan Lee a75f9394a6 (libT) rename-test tracers 2013-01-23 22:20:37 +00:00
Jordan Lee beee17f9b2 (libT) more hacking on the rename + .part unit test 2013-01-23 22:10:40 +00:00
Jordan Lee 0daad8b7f6 (libT) fix red herring issue that tr_mkdirp() was setting errno even if the call succeeded. Add tests to confirm the fix. 2013-01-23 21:28:35 +00:00
Jordan Lee 5fb6ec36de continuation of previous commit to find out why Jenkins doesn't like the new rename unit tests 2013-01-23 20:59:20 +00:00
Jordan Lee cd4543fe4c add temporary verbosity to the rename-test to coax log info out of Jenkins 2013-01-23 20:51:55 +00:00
Jordan Lee ef2cb627f2 (libT) #1220 'change file and folder names': add a unit test for the r13837 bugfix of .part files + tr_torrentRenamePath() 2013-01-23 20:23:37 +00:00
Jordan Lee e2c1a360d4 (libT) replace errant snprintf() calls with tr_snprintf() calls 2013-01-23 04:28:37 +00:00
Mitchell Livingston 45c8174cc2 Use tr_torrentRenamePath() instead of the removed tr_torrentRename() 2013-01-23 03:44:47 +00:00
Jordan Lee 3f4c9e9d2f (libT) #1220 'change file and folder names': handle .part file suffixs 2013-01-22 05:58:31 +00:00
Jordan Lee e898374a48 (libT) #1220 'change file and folder names': add unit tests for renaming a root, then branch, then leaf in the torrent 2013-01-22 05:40:10 +00:00
Jordan Lee 77ecf6d08c (libT) #1220 'change file and folder names': add a test to confirm passing tor->info.name as the 'oldname' argument works 2013-01-22 05:06:38 +00:00
Jordan Lee 2e354dfb10 (libT) #1220 'change file and folder names': fold tr_torrentRename() into tr_torrentRenamePath(); it's not useful enough on its own to be a separate function 2013-01-22 04:57:45 +00:00
Mitchell Livingston aae38eb05f (libT) update the rename callback to include the previous torrent name 2013-01-22 00:43:50 +00:00
Jordan Lee 434bd6b287 (libT) #1220 'change top folder names' -- when the root file/folder is changed, update tr_info.name too. 2013-01-22 00:25:42 +00:00
Jordan Lee 0da726e639 (libT) #4632 'custom blocklist generates 2x # of rules': add a fix, which causes r13825's test to pass 2013-01-21 21:14:14 +00:00
Jordan Lee 5d9335201d (libT) #4632 'custom blocklist generates 2x # of rules': add unit test (currently failing) to test for this issue. 2013-01-21 21:11:00 +00:00
Jordan Lee 2d5fe73969 (libT) copyediting: rename the internal tr_blocklist class 'tr_blocklistFile' to distinguish the private per-file API from the public, global API in libtransmission.h 2013-01-21 17:48:36 +00:00
Jordan Lee 1ece2b3f98 (libT) copyediting: reformat blocklist.c to the new indentation style 2013-01-21 17:39:20 +00:00
Jordan Lee 1f817193ef (libT) update our jsonsl snapshot 2013-01-21 01:26:59 +00:00
Jordan Lee cc3d08da3d (libT) #5234 'typo causing RPC session-get error in nightlies': remove the typo'ed quark to avoid future confusion 2013-01-21 00:11:48 +00:00
Jordan Lee 473c20f612 (libT) #5234 'typo causing RPC session-get error in nightlies': add a fix, which causes r13814's test to pass 2013-01-21 00:03:52 +00:00
Jordan Lee 5ccf3fc7e2 (libT) #5234 'typo causing RPC session-get error in nightlies': add unit test (currently failing) to test for this issue. 2013-01-21 00:00:00 +00:00
Jordan Lee b42a7ebdc3 (qt) Qt client should have the option to play a sound when the download completes, as the Mac and GTK+ clients do -- implemented. 2013-01-20 23:57:09 +00:00
Jordan Lee ac28b6df6e (trunk) move sandboxed session creation/teardown into libtransmission-test.[ch] so that it can be reused as a fixture by future tests 2013-01-20 04:41:38 +00:00
Jordan Lee dd955b121e (trunk) #1220 'change top folder names' -- add file-renaming to the Qt client 2013-01-20 01:31:58 +00:00
Jordan Lee 10e4c297d6 (trunk) #1220 'change top folder names' -- tweak the API documentation in transmission.h 2013-01-19 08:50:57 +00:00
Jordan Lee 016f38f066 (trunk) #1220 'change top folder names' -- added support for this in libtransmission's C and RPC APIs. 2013-01-19 08:43:26 +00:00
Jordan Lee 818308376b (libT) #5102 'don't invalidate the OS' filesystem cache when closing files -- done. 2013-01-18 19:20:22 +00:00
Jordan Lee 7c6868b622 reduce the default peer counts: global goes from 240 to 200, per-torrent goes from 60 down to 50 2013-01-17 20:39:16 +00:00
Jordan Lee bcc130e804 in getReconnectIntervalSecs(), raise the interval between reconnection attempts if the peer was previously unreachable 2013-01-17 20:08:21 +00:00
Jordan Lee 447b558cdf (utils) #4137 'support user-defined piece sizes in transmission-create' -- done. Initial patch by lav. 2013-01-17 18:55:51 +00:00
Jordan Lee 4d627b79c2 (libT) tweak getMaxAtomCount() 2013-01-17 01:10:59 +00:00
Jordan Lee e3eb1afeae (qt) #5218 -- fix 'set location' regression introduced during the migration to tr_quark. report & patch by rb07. 2013-01-15 21:55:04 +00:00
Jordan Lee 297566dc64 (libT) make ptrarray's assertions consume fewer CPU cycles 2013-01-13 22:09:18 +00:00
Jordan Lee 03da3e0a60 (libT) #5220 'add etaIdle to torrent-get in RPC' -- done. 2013-01-13 20:39:56 +00:00
Jordan Lee cb448dad6a minor code simplification in torrent.c's deleteLocalData() function. 2013-01-09 01:11:36 +00:00
Jordan Lee 569b895cef increase the per-peer prefetch count from 12 to 18. Add a symbolic constant for it. 2013-01-09 00:33:00 +00:00
Jordan Lee 1e9f6d44f9 copyediting: update torrent-magnet.c to the new indentation style 2013-01-07 18:16:34 +00:00
Jordan Lee a9657d56ec replace tr_torrent's 'float etaSpeed_KBps' field with an 'unsigned int etaSpeed_Bps' field 2013-01-06 20:15:11 +00:00
Jordan Lee 9a70ffb4ee (libT) #4633 fix win32 regression introduced in r13752. 2013-01-04 19:47:01 +00:00
Jordan Lee 6bf2104141 (libT) #3833: 0001-In-OS-X-disk-quota-s-info-already-in-bytes.patch -- patch by taem 2013-01-04 02:13:10 +00:00
Jordan Lee cd0628fc8f (libT) #4633 'if executing the torrent-done script fails, log an error' -- done. 2013-01-04 01:48:35 +00:00
Jordan Lee 84c5be5a77 (trunk, qt) #5060 'start minimized to tray option' -- added. 2012-12-30 22:51:55 +00:00
Jordan Lee 3c9640bb8f make tr_info.webseedCount and tr_info.trackerCount unsigned. 2012-12-30 22:06:45 +00:00
Jordan Lee 385d050d75 (trunk, libT) #3833 'freespace rpc' 0001-Headers-clean-up.patch 2012-12-29 12:10:05 +00:00
Jordan Lee 0b0613ced8 (trunk, libT) #3833 'freespace rpc' 0001-Fix-FTBFS-for-OS-X-and-uClibc.patch 2012-12-29 12:08:46 +00:00
Jordan Lee 23200b5bde (trunk, libT) #3833 'freespace argument for session-get' -- 0001-Port-quota-handling-to-BSD-and-Mac-OS-X.patch from taem 2012-12-29 01:47:44 +00:00
Jordan Lee 765ed4a0d2 (trunk, libT) #5201 'tr_variantDict can be much faster' -- don't test to see if each dictionary value that's a string is a quark... it almost never is, so the lookup isn't worth it. 2012-12-28 23:46:34 +00:00
Jordan Lee 8f918f1b79 (trunk, libT) #5199 'tr_sessionGetNextQueuedTorrent() can be faster' -- fix variablename typo introduced in r13709, reported by JJTagy 2012-12-28 23:44:59 +00:00
Jordan Lee 14dca05e21 (trunk, libT) #5199 'tr_sessionGetNextQueuedTorrent() can be faster' -- fix r13709 oops 2012-12-28 21:51:10 +00:00
Jordan Lee aa906ced75 (trunk, libT) #5199 'tr_sessionGetNextQueuedTorrent() can be faster' -- modify session.c's tr_sessionGetNextQueuedTorrents() and peer-mgr.c's getPeerCandidates() functions use the new tr_quickfindFirstK() utility" 2012-12-28 20:10:03 +00:00
Jordan Lee 25b8b60245 (trunk, libT) #5199 'tr_sessionGetNextQueuedTorrent() can be faster' -- copy peer-mgr.c's partial-sorting peer candidate code to a reusable function in utils.c, tr_quickfindFirstK()" 2012-12-28 20:07:50 +00:00
Jordan Lee 7ff9e2d2ba copyediting: correct a couple of code comments. 2012-12-28 08:35:14 +00:00
Mitchell Livingston e6a730ba50 fixed implementation of r13701 2012-12-28 05:53:20 +00:00
Jordan Lee 29599b6926 oops, this should have been in the last commit. :/ 2012-12-28 05:38:27 +00:00
Jordan Lee 9e86a38345 #3833 'freespace' -- fix memset error. 2012-12-28 05:28:37 +00:00
Jordan Lee 8f9c502dfd (trunk, libT) copyediting: apply the new indentation style to handshake.c. I hate making changes to this file; even changing the whitespace probably breaks all the peer connections. 2012-12-27 22:03:58 +00:00
Jordan Lee 53ce198ee1 (trunk, libT) #3833 'freespace' argument for 'session-get' RPC method -- include stdint.h as possible fix for Mac build 2012-12-27 20:30:24 +00:00
Jordan Lee 5f1f4934eb (trunk, libT) #3833 'freespace' argument for 'session-get' RPC method -- use TR_PATH_MAX instead of PATH_MAX for session.downloadDirFsType and session.downloadDirBlkDev 2012-12-27 20:22:32 +00:00
Jordan Lee 0c1db5f67b (trunk, libT) #3833 'freespace' argument for 'session-get' RPC method -- copyediting for previous three patches: tab damage, indentation, spaces, etc 2012-12-27 20:19:41 +00:00
Jordan Lee 4cbe6a64e1 (trunk, libT) #3833 'freespace' argument for 'session-get' RPC method -- apply taem's 0003-Cache-download-dir-s-block-device-and-FS-type.patch​ to cache the download dir's block device and FS type 2012-12-27 19:45:01 +00:00
Jordan Lee 843d79d284 (trunk, libT) #3833 'freespace' argument for 'session-get' RPC method -- apply taem's 0002-Add-XFS-quota-support.patch​ to add XFS quota support 2012-12-27 19:41:34 +00:00
Jordan Lee 5024dbfd22 (trunk, libT) #3833 'freespace' argument for 'session-get' RPC method -- apply taem's 0001-Check-for-available-quota-when-getting-free-disk-spa.patch​ to check for available quota when getting free disk space 2012-12-27 19:39:44 +00:00
Jordan Lee ac17884741 (trunk, libT) #5184 'Transmission 2.73 keeps creating a directory called /home/charles' -- fixed. 2012-12-26 23:44:33 +00:00
Jordan Lee 7081027041 #5191 'using a webseed doesn't update the remaining time' -- fixed with patch by cfpp2p. 2012-12-26 23:34:32 +00:00
Jordan Lee 94b5e88d36 (trunk, libT) more tr_variant revision: faster serialization, dictionaries use less space 2012-12-24 22:38:41 +00:00
Mitchell Livingston 3976366306 change the #include of quark.h in variant.h 2012-12-23 03:18:39 +00:00
Jordan Lee c1559f3cc4 (trunk, libT) first drop of the tr_quark patch. 2012-12-22 20:35:19 +00:00
Jordan Lee 11b4431e09 (trunk, libT) #5176 'Deselecting all remaining files not working correctly' -- fix trunk regression. 2012-12-19 07:59:49 +00:00
Jordan Lee 106dfe2985 copyediting: indentation/whitespace 2012-12-18 03:03:23 +00:00
Jordan Lee 587567aa1a (trunk libT) when seraializing to JSON, set the LC_NUMERIC locale once for the entire serialization pass, instead of N times 2012-12-17 02:43:17 +00:00
Jordan Lee d4db7198fe copyediting: whitespace & indentation 2012-12-15 16:31:22 +00:00
Jordan Lee 1cd9d0f9b7 copyediting: indentation & whitespace 2012-12-15 04:28:19 +00:00
Jordan Lee 89b3c5fc0a when a peer sends us a block and we count it in tr_cpBlockAdd(), don't invalidate cp.sizeWhenDone unless sizeWhenDone wasn't already including that new block. 2012-12-15 03:47:11 +00:00
Jordan Lee df5b6365bd (trunk, libT) faster JSON parsing for tr_variant. This mostly helps the Qt client, which makes heavy use of the JSON-based RPC calls. 2012-12-15 00:01:59 +00:00
Jordan Lee aea6d7cd6f (trunk, libT) #5168 'make libtransmission's public funcs nonblocking when possible' -- remove tr_torrentRef() and tr_torrentUnref() as discussed in https://trac.transmissionbt.com/ticket/5168#comment:8 2012-12-14 20:04:37 +00:00
Jordan Lee c5ff0c0308 copyediting: indentation, whitespace 2012-12-14 16:04:44 +00:00
Jordan Lee a11d5a66ff svn add variant.c 2012-12-14 04:36:33 +00:00
Jordan Lee e96ed247fe refactor libtransmission's tr_benc class as tr_variant. 2012-12-14 04:34:42 +00:00
Jordan Lee e1c338b6c3 (trunk, libT) #5169 fix FTBFS in torrentStart() 2012-12-13 05:22:30 +00:00
Jordan Lee 104d4aa772 don't inline functions that can't be inlined. 2012-12-13 02:00:45 +00:00
Jordan Lee d74c7e93c8 copyediting: indentation cleanup 2012-12-13 01:47:40 +00:00
Jordan Lee e2f1d6744e fix another pair of #5168 oopses (oopsii?) 2012-12-12 21:19:25 +00:00
Jordan Lee 399c3233b7 remove a couple of unnecessary torrentIsLocked() assertions for #5168 2012-12-12 20:57:13 +00:00
Jordan Lee 079c78981c (trunk) #5168 'make libtransmission's public funcs nonblocking when possible' -- first attempt. 2012-12-12 20:22:57 +00:00
Jordan Lee 84f2cf8fa2 in bencode.c's makeroom(), make the containers' sizes scale in powers of 2 to avoid excess reallocs. 2012-12-11 05:23:48 +00:00
Jordan Lee bbc009bb0f in libtransmission's unit tests, add a convenience check macro for comparing pointer equality 2012-12-10 01:24:50 +00:00
Jordan Lee 46b3b79e63 in metainfo.c, don't include sys/stat.h anymore, it's unneeded after r13633 2012-12-09 22:05:31 +00:00
Jordan Lee 5766f6fb4d in bencode.c's makeroom(), clarify the entry assertions 2012-12-09 21:45:30 +00:00
Jordan Lee dd643537ae in bencode.c's tr_bencMergeDicts(), call tr_bencDictReserve() so the target dict only has to alloc once to hold all of the source dict's entries. 2012-12-09 21:36:51 +00:00
Jordan Lee 9ddd7e0166 preallocate a couple of dictionaries to the right size before using them. 2012-12-09 21:28:20 +00:00
Jordan Lee 0846d3f2ab in bitfield.c, speed up countArray() by about 15% 2012-12-09 19:08:06 +00:00
Jordan Lee 3d5b43b5b4 in bitfield.c's countRange() function, make walk_end an invariant 2012-12-09 18:24:57 +00:00
Jordan Lee 8a2061f2cf move bitfield tests to their own file 2012-12-09 05:32:52 +00:00
Jordan Lee 4f6dcc6d31 in tr_metainfoRemoveSaved(), don't look for .torrent files under our old naming scheme... we haven't used it since 2008 2012-12-09 01:32:25 +00:00
Jordan Lee 410fa7e054 remove unused function tr_metainfoMigrate() 2012-12-09 01:27:01 +00:00
Jordan Lee a2d2a10226 (trunk, libT) #5165: fix r13625 oops 2012-12-07 01:53:31 +00:00
Jordan Lee cff58b1904 (trunk, libT) #5163 'typo in tr_peerIoSupportsUTP()' -- fixed. 2012-12-06 15:04:52 +00:00
Jordan Lee 519feefcb4 (trunk, libT) #5157 -- fix r13628 oops 2012-12-06 00:50:40 +00:00
Jordan Lee 61c1f7efec (trunk, libT) #5157 'check valid address before UTP_Create()' -- added. 2012-12-05 23:48:00 +00:00
Jordan Lee ccb4a16ab8 (trunk, libT) #5146 'seeding complete callback called twice' -- fixed with patch from x190. 2012-12-05 22:56:45 +00:00
Jordan Lee 3d38723ad9 Follow more common whitespace style conventions in the C code (libtransmission, daemon, utils, cli, gtk). 2012-12-05 17:29:46 +00:00
Jordan Lee 7af02f7cdf (trunk, libT) #5150 'improper escaping of dirnames with new json' -- add one-liner fix. this also fixes the regression test added in the previous commit. 2012-11-27 23:24:37 +00:00
Jordan Lee dffc6343ae (trunk, libT) #5150 'improper escaping of dirnames with new json' -- added new regression test, currently failing, to trigger this bug 2012-11-27 23:21:13 +00:00
Mitchell Livingston b1309bc927 #5144 add BitZilla to clients list 2012-11-24 01:14:51 +00:00
Mitchell Livingston 6bebaee639 #5134 Magnet links not adding all trackers with tr.0= 2012-11-14 02:22:55 +00:00
Jordan Lee d010e33c32 (trunk, libT) #4886 'IPv6-only DHT.dat not being written' -- fixed. bug found & patched by jch. 2012-11-11 14:42:14 +00:00
Mitchell Livingston 3836821a95 fix a parameter type mismatch in jsonsl 2012-11-11 07:11:13 +00:00
Jordan Lee 9effd65f3e (trunk libT) #5131: replace JSON_parser with jsonsl to resolve licensing issue. 2012-11-11 04:26:56 +00:00
Jordan Lee d2ef01bc1a add more unit tests for the json-benc glue code 2012-11-11 04:20:15 +00:00
Mitchell Livingston 8cb08e2766 fix typo in r13604 2012-10-31 21:27:07 +00:00
Mitchell Livingston d73ca434c0 #5113 Add pbTorrent to client list 2012-10-31 21:25:23 +00:00
Mitchell Livingston 413f3dc532 #5111 Add Zona to client list 2012-10-31 21:22:23 +00:00
Mitchell Livingston ff83b4ee56 #5104 Unknown client -MG21r0- 2012-10-25 03:22:41 +00:00
Jordan Lee a981f4b6a6 (trunk, libT) #5097 'Rare buffer overflow (piece index too big)' -- fixed. 2012-10-20 15:57:56 +00:00
Jordan Lee e5304a8aaa make tr_mkdir() private. 2012-10-16 03:13:05 +00:00
Jordan Lee bb49ab9a01 in torrent-magnet.c and utils.h, use tr_torrentName() instead of tor->info.name 2012-10-16 02:48:26 +00:00
Jordan Lee 8fb80f5132 (trunk, libT) #4638 "Transmission sends an initial 'stopped' event when adding a torrent via RPC" -- fixed. 2012-10-15 03:11:16 +00:00
Jordan Lee 1dafe0beef more unit test cleanup 2012-10-14 23:38:52 +00:00
Jordan Lee 17beba3502 retrofit some of the tests to use the more expressive test API 2012-10-14 18:56:37 +00:00
Jordan Lee 031e313aa2 (trunk, libT) #5081 'Transmission discards webseed URLs that have trailing whitespace' -- fixed. Unit test passes and valgrind says 'All heap blocks were freed -- no leaks are possible' 2012-10-14 18:10:17 +00:00
Jordan Lee 0630583637 (trunk, libT) #5081 'Transmission discards webseed URLs that have trailing whitespace' -- add unit test (currently failing) for this bug. 2012-10-14 18:02:47 +00:00
Jordan Lee e89fcc9bf6 previous commit uncovered an unused shadow variable in test-peer-id.c 2012-10-14 18:00:29 +00:00
Jordan Lee a683ad49a8 steal some ideas about unit test error logging from Google Test 2012-10-14 17:59:24 +00:00
Jordan Lee e1e254d8c2 fix NULL-pointer-dereference regression introduced in r13546 for #5069. 2012-10-13 17:32:23 +00:00
Jordan Lee 718da0688f (trunk libT) fix webseed-in-magnet-link regression introduced in r13547 (2.71+). This issue was tracked down by by x190 in ticket #5081 2012-10-13 15:36:49 +00:00
Jordan Lee ebd4b5e386 (trunk, libT) #5063 'remaining time unknown with magnets that have webseeds' -- fixed. 2012-10-05 22:04:08 +00:00
Jordan Lee 1aa4286fbc (trunk, libT) #5069 'webseed magnet support is broken' reported & patch by cfpp2p 2012-10-05 16:44:36 +00:00
Jordan Lee cc51b1586c (trunk libT) #5075 'magnet.c:163 should use MAX_WEBSEEDS, not MAX_TRACKERS' ... fixed. Thanks to cfpp2p for catching this. 2012-10-05 16:10:12 +00:00
Jordan Lee b437b28228 (trunk, libT) #5049: fix bug that caused some incoming encrypted peer connections to fail 2012-09-25 02:07:03 +00:00
Jordan Lee 624c8ff1cc (trunk, libt) #4932 'crash on magnet links' -- fixed. 2012-09-19 05:11:19 +00:00
Mitchell Livingston 8e5a62ed40 add a missing @ to a comment 2012-09-18 03:46:01 +00:00
Mitchell Livingston 40e75b20ed return a value (and rename) testTurtleTime instead of passing in a flag to set 2012-09-18 03:44:59 +00:00
Mitchell Livingston ddabdcb1c7 remove a comment referring to a non-existant param 2012-09-18 01:13:31 +00:00
Mitchell Livingston e46309a0fa #4201 Automatic limit can't be stopped 2012-09-18 00:58:10 +00:00
Jordan Lee 357b160cde remove trailing spaces 2012-09-07 04:25:04 +00:00
Mitchell Livingston 723d681b63 Whoops! Revert new changes committed in r13469 2012-09-06 03:23:50 +00:00
Mitchell Livingston 9e7e64fe04 Revert r13468 for now. 2012-09-06 03:21:03 +00:00
Mitchell Livingston 3961a7e4f4 #4321 uTP implementation is very slow. 2012-09-05 11:39:57 +00:00
Jordan Lee 74c56f27b0 (trunk, libtransmission) #4934 "Create a test harness and use it for current tests" -- patch by gvdl 2012-08-18 16:07:05 +00:00
Jordan Lee 4963b65c1f (trunk utils) #4979 "add manget link generator to transmission-show" -- done. 2012-07-23 15:28:27 +00:00
Jordan Lee 9b98c0fc2e (trunk libT) #4969 "jsonrpc response to torrent-get emits malformed json" -- fixed. 2012-07-14 19:34:38 +00:00
Jordan Lee 5c34257ee0 (trunk libT) #4943 "tr_sessionClearStats() does not set the stats' dirty flag to true s.t. stats.json gets saved" 2012-07-01 04:00:27 +00:00
Jordan Lee f55ab8dddb (trunk libT) move torrent.c's private function fileExists() to the utility function tr_fileExists() so that it can also be used by stats.c 2012-07-01 03:05:36 +00:00
Jordan Lee 3398a48e57 (trunk libT) #4402 "Transmission Bandwidth allocation getting overflows" -- use gvdl's patch '4402-uint-bpsoverflow.patch' 2012-07-01 02:17:35 +00:00
Jordan Lee 99b615b3b8 (trunk libT) #4931 "Wrong peer percentages for magnetized transfers" -- fixed.
tr_peerUpdateProgress() is guessing at the progress size, but when we don't have the data size yet that guess isn't very good. Add boundary
 clamps on the peer.progress field.
2012-07-01 02:00:02 +00:00
Jordan Lee df80c1ce03 Fix the size for the peers and peersFrom dictionaries.
By setting the initial allocation size correctly, we can avoid unnecessary resizing when adding all the dictionary's fields.
2012-07-01 01:42:58 +00:00
Jordan Lee d717248e75 (trunk libT) fix the Linux build wrt compiling with the new snapshot of libutp checked into r13317
Previously we made sure to include stdbool.h (via transmission.h) before utp.h, since the latter used 'bool' without defining it. The new snapshot defines it unconditionally in non-C++ code, so now we need to include it first.
2012-05-30 17:47:29 +00:00
Jordan Lee f226d8a03f (trunk libT) #4914 if a tracker has no scrape URL but the announce response contains any scrape fields, that's as close to a scrape as we're going to get, so use those fields. 2012-05-22 20:21:00 +00:00
Jordan Lee 1e07439cd0 (trunk libT) #4908 "Handle UDP scrapes when they don't follow the /announce idiom" -- fixed. 2012-05-20 14:47:18 +00:00
Jordan Lee e9e76fa970 (trunk libT) #4888: when scraping magnet links, don't send a left=0 argument to the tracker. 2012-05-20 14:14:59 +00:00
Jordan Lee 512cc1af73 silence an unused-variable compiler warning introduced in the previous commit 2012-05-17 22:22:30 +00:00
Jordan Lee 6948852013 (trunk libT) #4894 -- don't use evbuffer_add_printf() and evbuffer_pullup() together. 2012-05-17 17:40:31 +00:00
Jordan Lee 00919e932d silence a compiler warning of implicitly casting the 3rd arg of initnatpmp() from a void* to an int 2012-04-07 00:12:57 +00:00
Mitchell Livingston bbf274109a #4825 update libnatpmp to libnatpmp-20110808 2012-03-21 02:51:26 +00:00
Jordan Lee a025510834 (trunk libT) #4810 "add environment variable option to have libcurl verify SSL certs" -- patch by infinity0 2012-03-04 13:21:42 +00:00
Jordan Lee ecfab318ed (trunk libT) fix potential NULL pointer dereference in rpc-server.c's crude mime multipart parser 2012-02-15 01:44:21 +00:00
Jordan Lee 43f7dc4c17 (trunk libT) fix minor memory leak of the 'dir' string when deleting local data. (Thanks, valgrind!) 2012-02-04 03:09:31 +00:00
Jordan Lee 6d4858d8dd (trunk) #4732 "allow switching between internal and system libnatpmp" -- fixed with patch scarabeus and applied by me, so any patch breakage is probably mine... ;) 2012-02-04 01:28:15 +00:00
Jordan Lee c56b12690c (trunk libT) #4687 "magnet links behave oddly" -- fixed. Thanks to cfpp2p for some very nice sleuthing on this one. 2012-02-04 00:34:39 +00:00
Jordan Lee b2d65db45f (trunk) remove trailing spaces from code lines ;) 2012-02-03 16:44:07 +00:00
Mitchell Livingston 3eb8b12fa8 #4704 req->left = tr_cpLeftUntilComplete( &tor->completion ) should end with a semicolon 2012-01-11 22:31:02 +00:00
Jordan Lee 57d273cd61 (trunk libT) #4700 "compilation fails on FreeBSD because it can't find alloca.h" -- fixed. 2012-01-10 19:18:18 +00:00
Jordan Lee cac5c360f2 (trunk libT) #4690 "getPeerCandidates() uses more CPU than necessary" -- fixed.
Once we've scored all n candidates, we sort them by score so that we can pick out the k best candidates. If n is large, sorting them can be expensive. If we use the Selection Algorithm, we select in O(n) without having to sort.
2011-12-31 21:28:53 +00:00
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 9576dd16e2 (trunk libT) #4666 "webseed downloading never gets downloaded" -- fixed.
The webseed in question is downloading from an ubuntuone.com url. We ask for piece-sized ranges in a couple of different concurrent connections, and curl hints to the server that it's okay to gzip the response, or deflate it, or leave it raw. It looks like there's a bug in the server or in libcurl (or, somehow, Transmission) that's not compressing or decompressing these responses correctly -- we never get the right number of bytes in the response from libcurl. If we ask for the contents uncompressed, the download progresses towards completion.

As an aside, when testing this I noticed that deluge is a lot faster than Transmission on this torrent. In order for Transmission to reach parity here, webseed.c needs to know when it's appropriate to have more than 4 concurrent tasks and/or be able to request ranges > the torrent's piece size.
2011-12-14 05:58:23 +00:00
Jordan Lee f9cc51f0d3 (trunk libT) fix a minor memory leak in the bencode regression tests.
Found by llvm's static analyzer. This is a minor issue since the leak is in an automated test rather than in shipping code, but it's still better to fix it.
2011-12-14 05:44:15 +00:00
Jordan Lee 0d13057111 (trunk libT) fix warnings in fileset_get_empty_slot() found by llvm's static-build analyzer.
static-build found a potential NULL pointer dereference. The circumstances where this could get triggered don't seem very likely, but doesn't hurt to fix the warning.
2011-12-14 05:42:15 +00:00
Jordan Lee 206b1a9a5f (trunk web) fix warnings in tr_urlIsValidTracker() and tr_urlIsValid() found by llvm's scan-build.
scan-build found similar warnings in these two functions relating to allowing NULL pointers to be passed as arguments to functions that don't allow NULL. So now those NULL checks are made explicit before the function calls.
2011-12-14 05:40:21 +00:00
Jordan Lee 1cfeb4debb (trunk libT) #4644 "Transmission can't download big files from webseed." -- fix overflow error with a patch based on one from and_cesbo. (Modified by Jordan to add random bugs.) 2011-12-10 18:42:52 +00:00
Mitchell Livingston 0a9b47da50 whoops typo 2011-11-22 03:30:37 +00:00
Mitchell Livingston caa1c8fb8f #4643 Support µTorrent's long-version-number peer id 2011-11-22 03:02:18 +00:00
Jordan Lee 42997e4102 don't use the word 'template' as a variable name, since it's a reserved word in C++ 2011-11-12 00:16:04 +00:00
Jordan Lee b3d382874a (trunk libT) #4625 "Transmission 2.42 fails to build on Solaris 10: Undefined symbol 'mkdtemp'" -- fixed. 2011-11-10 03:31:43 +00:00
Jordan Lee 4f1db26672 (trunk libT) bandwidth.c: minor phaseOne() improvements suggested by livings 2011-10-25 21:54:51 +00:00
Jordan Lee 82595e8ad8 (trunk libT) #4592 "Algorithm bug in bandwidth allocation" -- apply patch from Algorithmus 2011-10-25 16:56:19 +00:00
Jordan Lee ae972b50c4 utils.h's public function tr_realpath() function relies on the private constant TR_MAX_PATH. Make TR_MAX_PATH public. 2011-10-25 15:57:10 +00:00
Jordan Lee 4d74095591 (trunk libT) #4571 "can't edit UDP trackers via RPC" -- fixed. 2011-10-17 12:44:17 +00:00
Jordan Lee ed56cd1193 (trunk libT) #4526 "do not skip scrape unless all three scrape fields came with announce" -- add field initializers. 2011-10-14 00:27:14 +00:00
Jordan Lee 9c6e686882 (trunk libT) #4556 "Transmission 2.40 fails to connect with UDP trackers on big endian systems" -- fixed. 2011-10-14 00:02:36 +00:00
Jordan Lee 576ded51d0 (trunk libT) #4323 "allow usage of system miniupnpc" -- possibly fix OS X regression caused by r12957 2011-10-09 14:51:13 +00:00
Jordan Lee 01f68ca846 (trunk libT) #4323 "Allow usage of system miniupnpc" -- fixed. 2011-10-09 02:05:52 +00:00
Jordan Lee c9421c4041 (trunk libT) #4530 "lastAnnounceResult is not properly set" -- fixed. 2011-10-09 00:21:36 +00:00
Jordan Lee bc4e3f137c (trunk libT) #4526 "do not skip scrape unless all three scrape fields came with announce" -- fixed. 2011-10-09 00:18:18 +00:00
Jordan Lee 2786136015 (trunk) #4490 "Transmission 2.40b1 fails to build: undefined references" -- fixed. 2011-10-08 23:53:27 +00:00
Mitchell Livingston 0808bdd2fe We now require Mac OS X 10.6 or later. Make that change and all the nice little adjustments that go with it. 2011-10-06 00:30:40 +00:00
Jordan Lee 0337806b03 #4506 'crash from memory corruption somewhere called from tr_handshakeDone()' -- possible fix. 2011-09-28 16:07:35 +00:00
Jordan Lee 1aefd9f1de munge tr_torrent's memory immediately before freeing it. 2011-09-28 16:06:19 +00:00
Mitchell Livingston eb46c13d74 #4524 Redirects with https are broken 2011-09-27 22:34:52 +00:00
Jordan Lee 16de40c78d remove redundant assertion 2011-09-27 02:44:07 +00:00
Jordan Lee 18b90f60bc (trunk libt) in tr_bitfieldSetRaw(), add a `bounded' argument for cases where we know how large the final bitfield will be. This can be used ensure that the excess bits at the end of the array are zeroed out and safe for bitfield.c's countArray() function. 2011-09-26 22:50:42 +00:00
Jordan Lee bf6c2a0df7 peer.have was being initialized to the block count, rather than the piece count, resulting in wasted overhead. 2011-09-26 22:48:50 +00:00
Jordan Lee 0c4fe00658 (trunk libT) #4511 "fromLpd in rpc" -- add to torrent-get's "peersFrom" response. 2011-09-26 20:49:26 +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 0fde2ddc8e in freeTorrent(), don't destruct the torrent's completion field until after calling tr_announceRemoveTorrent() 2011-09-26 05:57:03 +00:00
Jordan Lee 5332d234bb (trunk libT) #4504 "crash when adding malformed magnet link" -- fixed. 2011-09-25 21:51:50 +00:00
Jordan Lee 4522a3c055 (trunk libT) #4507 "scrape min_request_interval no longer working" -- fixed. 2011-09-25 21:48:34 +00:00
Jordan Lee 246d6a72a3 (trunk libT) #4502 "allow verbose scrape" -- patch by reardon. 2011-09-24 05:54:47 +00:00
Jordan Lee daa795fb6a #4496 'freeze when having a huge torrent' -- more tweaks based on Shark reports from MechMK1 2011-09-21 23:04:39 +00:00
Jordan Lee 6f05024dab #4496 'freeze when having a huge torrent' -- remove redundant debug calls to countArray(). This is a second iteration of optimizations based on MechMK1's Shark report. 2011-09-21 20:17:36 +00:00
Jordan Lee 3a3cef615c #4344 'zero peers observed with 2.32' -- experimental change suggested by gunzip 2011-09-21 00:20:02 +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 46154e7309 (trunk libT) add a magnet link check to deleteLocalData(). Thanks to plaes for reporting this issue. 2011-09-16 23:08:35 +00:00
Jordan Lee e2240e0831 (trunk libT) #4473 'underflow from malformed ssha1 can crash tr_ssha1_matches()' -- bah, fix oops in r12884. 2011-09-16 22:55:58 +00:00
Jordan Lee bb59768557 (trunk libT) #4473 "underflow from malformed ssha1 can crash tr_ssha1_matches()" -- fixed. Thanks to Volfram for finding this crash and tracking down the cause. 2011-09-16 22:53:26 +00:00
Jordan Lee 6add3fb940 (trunk web) small refactoring of webseed's batch processing.
1. move the callback structs' declarations next to the callback functions where they're used.
2. rename the callback structs to clarify their link to the callback functions.
3. constify some of the callback functions' local variables.
4. clarify some of the comments.
2011-09-12 21:46:15 +00:00
Jordan Lee 3a39486cf1 tr_free() already checks for null, so no need for the caller to wrap it in an 'if not null' test 2011-09-12 20:41:28 +00:00
Jordan Lee 10734ab7bc remove two redundant variables from tr_webseed_task 2011-09-12 20:40:09 +00:00
Jordan Lee fd6e7a7fbd (trunk libT) #4445 "transmission only downloads partially from webseeds with redirections" -- fixed with patch from alexat. 2011-09-12 05:39:27 +00:00
Jordan Lee cfa4077e5e (trunk libT) #4437 "Multi file webseeds don't work" -- handle multifile torrents with web seed urls that incorrectly don't end with a slash. 2011-09-06 16:45:48 +00:00
Jordan Lee b3db349c83 (trunk libt) #4437 'multi file webseeds do not work' -- revert r12740, which was a bad patch. 2011-09-06 16:10:27 +00:00
Mitchell Livingston 516164e78e add an RPC session callback for when queue order changes 2011-08-27 23:54:10 +00:00
Jordan Lee 6c61d6ac67 (trunk libT) #4437 "Multi file webseeds don't work" -- fixed. 2011-08-25 09:08:50 +00:00
Jordan Lee 56e47e96d0 (trunk libT) improve the is_same_file() test in deleteLocalData() to handle nonexistent directories too. 2011-08-20 18:41:45 +00:00
Jordan Lee a14e72b1f7 (trunk libT) #4377 "Incomplete Folder removed when sub-folder of Default Location" -- fix r12665-r12667 regression reported by KyleK in comment:31 2011-08-16 22:42:43 +00:00
Mitchell Livingston fbfae34837 #4422 On Mac, tr_getWebClientDir() uses incorrect encoding for creating the web content dir path 2011-08-15 00:10:06 +00:00
Jordan Lee 177f2398a5 (trunk libT) #4396 "Scrape requests not showing in logfile" -- when the announce response contains scrape information, add a log message saying that the next scrape has been rescheduled. 2011-08-14 14:45:54 +00:00
Jordan Lee ecb2054493 (trunk libT) #4377 "Incomplete Folder removed when sub-folder of Default Location" -- another revision to r12665 2011-08-12 01:56:35 +00:00
Jordan Lee 6d36b3d763 (trunk libT) #4377 "Incomplete Folder removed when sub-folder of Default Location" -- minor revision to r12665 to fix a minor memory leak with the 'subpath' string. 2011-08-11 21:02:15 +00:00
Jordan Lee d9541de52d (trunk libT) #4377 "Incomplete Folder removed when sub-folder of Default Location" -- possible fix. 2011-08-11 14:16:29 +00:00
Jordan Lee 3778da6f82 remove dead code 2011-08-08 16:58:29 +00:00
Jordan Lee ff303e6fd7 queuing: lower the default 'active downloads' value to 5 2011-08-08 16:29:47 +00:00
Jordan Lee 398b6ad8dc bump RPC_VERSION to 14 because of the queuing changes 2011-08-07 19:25:36 +00:00
Jordan Lee 313bd9e211 Add a mechanism for enabling/disabling the stalled minutes feature. This is a pre-existing feature in the Mac client. 2011-08-07 19:24:33 +00:00
Jordan Lee fbc2eb1a65 silence a minor compiler warning when building with -DNDEBUG 2011-08-05 17:03:34 +00:00
Jordan Lee 7915b49b03 revert the last commit -- the Mac client uses the isIdle flag to know when hibernation is allowed 2011-08-04 04:31:14 +00:00
Jordan Lee d8a11a33f1 tr_torrentIsStalled(): return false if that torrent's queue is disabled. 2011-08-04 02:25:38 +00:00
Jordan Lee ae89e4683d add user_data (void *) to the queue callback 2011-08-03 23:40:51 +00:00
Jordan Lee ce77935009 Add a callback to be invoked when the queue starts a torrent. 2011-08-03 03:14:57 +00:00
Jordan Lee 3430ce714c #671 "torrent queuing" -- fix r12611 oops 2011-08-02 14:03:43 +00:00
Jordan Lee 307754e807 #671 "torrent queuing" -- modify the queue implementation s.t. every torrent has a queuePosition, even if it's not currently in the queue. 2011-08-02 03:59:54 +00:00
Jordan Lee 2e9d419bd4 #671 "torrent queuing" -- add a tr_stat.isStalled flag. 2011-08-01 23:27:11 +00:00
Jordan Lee 61174b007e (trunk) #671 "torrent queuing" -- Preliminary implementation. Covers libtransmission; GTK+ and Qt clients, and rudimentary web client support. 2011-08-01 22:24:24 +00:00
Jordan Lee 56525f4b80 (trunk libT) Remove the backup implementation of tr_ptrArrayLowerBound() that was added 5 weeks ago in r12512. This was for testing in the nightlies, to use its output against the function's primary implementation. 2011-07-31 14:04:43 +00:00
Jordan Lee 60f9191fdc (trunk libT) modify announcer's scrape triggers as per discussion with Elbandi 2011-07-31 00:58:05 +00:00
Jordan Lee 0bffa36377 (trunk libT) improve the debugging message that logs an http announce response 2011-07-30 22:40:15 +00:00
Jordan Lee 8ae478a62f (trunk libT) #4395 "Crash when removing data for incomplete magnetized torrent file" -- fixed. 2011-07-30 13:11:06 +00:00
Mitchell Livingston d7ab7d9012 #4387 Update miniupnpc to 1.6 2011-07-26 01:36:30 +00:00
Jordan Lee b14c44a3a6 (trunk libT) during the extended handshake, don't send the "m" dict if it doesn't have any entries. 2011-07-25 22:33:07 +00:00
Jordan Lee 8fab45f0fc undo r12585, where I checked in the wrong file. 2011-07-25 22:30:56 +00:00
Juliusz Chroboczek 7eda3ae2ec Add stub for the DHT blacklisting support.
Using blacklists with Kademlia is not a good idea, which is why we
don't support it in Transmission.  However, some people insist on
implementing the support in their own copies, this well-defined
hook ensures that at least they'll do it right.
2011-07-25 21:30:46 +00:00
Jordan Lee fe42e456b4 (trunk libT) during the extended handshake, don't send the "m" dict if it doesn't have any entries. 2011-07-25 20:46:56 +00:00
Juliusz Chroboczek 17d1210b95 Reword debugging messages for the IPv4 DHT.
The IPv6 DHT is no longer expermiental, no need for the asymmetry.
2011-07-25 19:53:39 +00:00
Jordan Lee 434a988165 (trunk libt) #4305 "New Torrent via RPC Error:No data found when subfolder does not exist" -- revert r12076 s.t. parent directories are created as necessary when saving local data to disk. 2011-07-25 17:48:14 +00:00
Jordan Lee feb4ddadd5 (trunk libT) #4383 "transmission-create bug when using leading ./" -- fixed. 2011-07-24 20:18:33 +00:00
Jordan Lee 3928a9d8e9 (trunk libT) #3219 "Don't scrape paused torrents" -- allow this as a 'hidden' option in settings.json, but don't add it to the GUI or to RPC. 2011-07-23 17:14:12 +00:00
Jordan Lee 5076efd20e (trunk libT) "DHT and blocklists are incompatible" -- revert r12544. 2011-07-22 17:47:08 +00:00
Jordan Lee bd6aaf9a12 (trunk libT) remove trailing spaces from a couple of lines of code 2011-07-17 18:11:34 +00:00
Jordan Lee f8c92d06e6 (trunk libT) fix minor compiler warning when compiling with assertions disabled 2011-07-17 14:34:33 +00:00
Jordan Lee dcd7bed20a (trunk libT) fix minor compiler warning when compiling with assertions disabled 2011-07-17 14:33:20 +00:00
Jordan Lee b4960a3f29 (trunk libT) fix minor compiler warning when compiling with assertions disabled 2011-07-17 14:32:51 +00:00
Jordan Lee efc306a8d3 (trunk libT) truncate the fractions when formatting KB/s speeds 2011-07-17 14:15:02 +00:00
Jordan Lee de34a0545b (trunk libT) minor #include cleanups 2011-07-13 03:23:37 +00:00
Jordan Lee a4e095b26f (trunk libT) #4016 "blocklists loaded in Transmission should be used to filter DHT communication." -- fixed. 2011-07-12 12:30:17 +00:00
Jordan Lee 7b71470ea0 (trunk libT) #4351 "DHT can't be uninitialized during a session" -- don't process incoming DHT messages if DHT is disabled. Don't process incoming UTP messages if UTP is disabled. 2011-07-12 12:26:24 +00:00
Jordan Lee 731ee3640c (trunk libT) remove unnecessary "UNUSED" attribute 2011-07-12 12:24:41 +00:00
Jordan Lee 2c69c42554 (trunk libT) restore setrlimit(), although in an non-configurable mode. 2011-07-11 20:48:06 +00:00
Jordan Lee 9b208d2777 (trunk libT) possible fix for three related tickets. still needs more testing.
#3732 "Delete system files when removing torrent data"
#4224 "Folders don't get deleted"
#3871 "torrent-set-location does not delete old folder if only one file in torrent"
2011-07-10 17:34:03 +00:00
Jordan Lee 2317f08d38 (trunk libT) #4338 "improved webseed support" -- patch by alexat 2011-07-10 15:24:51 +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 23adb55d2e (trunk libT) #4101 "RPC method blocklist-update is broken" -- use lower-level zlib API calls so that we can skip writing a temporary gzipped file to disk 2011-06-26 17:05:17 +00:00
Jordan Lee b4ffdaac42 (trunk libT) #4277 "Checkmarks for leechers" -- possible fix.
It appears 2.30 and 2.31 might be making too many assumptions about which peers are seeds.
2011-06-25 19:29:25 +00:00
Jordan Lee 34642e7259 (trukn libT) lessen the importance of error messages returned by trackers in a multi-tracker torrent. It's all too often that people will load up a .torrent file with dozens of announce URLs, many of them dead... 2011-06-25 18:47:35 +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 35fb00fd9e (trunk libt) #4315 "Transmission 2.31 crashes (segfaults) immediately after launch" -- remove the "max-open-files" code.
max-open-files might have been a nice configuration option once, but (1) we've never advertised it in the gui apps, and (2) the crazy cases are causing more trouble than this feature is worth. It's more complicated now after #4164 -- see #4294, #4311, and this ticket.
2011-06-24 22:39:20 +00:00
Jordan Lee f5815a89bf (trunk libT) minor code formatting 2011-06-24 19:30:25 +00:00
Jordan Lee 2d3fdc4235 (trunk libT) the edge condition bug in ptrarray's bsearch code seems to be fixed, so let's commit the fix with lots of assert()ions enabled so that the nightly build users can show me where I'm wrong :) 2011-06-24 18:25:56 +00:00
Jordan Lee 2362580e0e (trunk libT) add a unique key to each tr_bandwidth object, so that when sorting them arbitrarily we can use that key rather than their pointer address. Apparently comparing pointers that aren't allocated in the same array is undefined behavior. 2011-06-19 18:34:10 +00:00
Jordan Lee f134858453 (trunk libT) avoid thread issues on startup by ensuring that tr_sessionLoadTorrents() runs in the libtransmission thread. 2011-06-19 18:30:57 +00:00
Jordan Lee bcf89fa9c3 (trunk libT) modify how the "stops" sorted container is used s.t. the container's uniqueness requirements are met. 2011-06-19 18:26:04 +00:00
Jordan Lee 437ebe32c7 (trunk libT) don't use tr_list for the tr_web_task queue 2011-06-19 18:18:48 +00:00
Mitchell Livingston 62f594267a #4326 flags for completeness and wasRunning flipped in completeness callback 2011-06-19 03:31:41 +00:00
Mitchell Livingston 0a5d025568 add µTorrent Embedded to the client list 2011-06-16 12:08:52 +00:00
Jordan Lee f6d68844bd (trunk libT) #4101 "RPC method blocklist-update is broken" -- add debugging error messages for cases where gzopen/gzread fails 2011-06-10 05:34:16 +00:00
Jordan Lee 0aa163dfe9 (trunk libT) #4295 "'download-dir-free-space' contains garbage" -- fixed by bugmenot patch 2011-05-30 18:17:16 +00:00
Jordan Lee 3f6ffb90c2 (trunk libt) #4301 "strerror used instead of tr_strerror -- fix in peer-io.c too 2011-05-30 15:50:50 +00:00
Jordan Lee 7f2e4084dc (trunk libT) fix webseed issue reported by Alex Hartl 2011-05-29 14:59:00 +00:00
Jordan Lee d6e39e4d2f (trunk libT) #4284 "crash via webfrontend or transmission-remote" -- use patch from jerwied 2011-05-27 23:28:40 +00:00
Jordan Lee dcf814a481 (trunk libT) #4283 "Remove 'Prefetch failed' error message" -- done. 2011-05-27 23:26:05 +00:00
Jordan Lee 33eb6d3f9e (trunk) #3817 remove OS proxy integration from the GTK+ client 2011-05-27 13:36:53 +00:00
Jordan Lee eb53352d40 fix an r12447 typo -- SoMud's two-letter prefix is SM, not SO 2011-05-20 18:00:57 +00:00
Jordan Lee c453175e0e (trunk libT) recognize a few more peer apps by name: Arctic, BitBuddy, GSTorrent, Hekate, Meerkat, SoMud, SymTorrent, TuoTu, and XSwifter 2011-05-20 17:55:48 +00:00
Jordan Lee 52512857ae (trunk libT) better r12434 2011-05-16 07:11:21 +00:00
Jordan Lee 7cd9cc0176 (trunk libT) #4237 "tarnsmission-remote -l shows torrent list in reverse order" -- revert r12424 to fix this 2011-05-16 02:09:31 +00:00
Jordan Lee a4ab013568 (trunk libT) fix magnet link crash in peer-msgs.c's updateDesiredRequestCount() reported by quinx in the forums.
In some odd cases (such as if unchoked without having shown interest), the code could dividing a number by the torrent's block size without checking to see if the torrent had its metadata yet. This caused a division by zero because a magnet torrent's blocksize is unset until the metadata is downloaded.
2011-05-12 06:43:40 +00:00
Jordan Lee ddaaa92c31 (trunk libT) make allocateBandwidth()'s "priority" field const. 2011-05-11 21:09:31 +00:00
Jordan Lee d32c5b36c7 (trunk libT) minor CPU improvement to peer-mgr.c's bandwidthPulse()
We looped through all the torrents 3x to do three separate tasks... instead, loop only once and do the three tasks inside the single loop.
2011-05-10 14:41:59 +00:00
Jordan Lee ffba6a16bd (trunk libT) oops, r12424 included a second CPU improvement patch that I had in the pipeline. Fix a typo in that patch. 2011-05-10 05:18:40 +00:00
Jordan Lee 94cc3f87f7 (trunk libT) CPU improvement in torrent.c's torrentInit()
Add the new torrent to the session's torrent list by prepending it instead of appending it. That way we don't have to walk the list in order to add it. tr_session.torrentList is an unordered list, so there's no real difference between prepending and appending.
2011-05-10 04:46:44 +00:00