1
0
Fork 0
mirror of https://github.com/transmission/transmission synced 2024-12-26 17:47:37 +00:00
Commit graph

660 commits

Author SHA1 Message Date
Charles Kerr
0a4d8602e0 (trunk libT) #2548: T's request queue can send out too many duplicate requests 2009-11-01 02:10:47 +00:00
Charles Kerr
3a75050be4 (trunk libT) undo all the test commits for #2533 from r9445 through r9451. The problem appears to be an llvm issue, reported upstream @ apple dev center bug #7353773 2009-10-31 00:54:03 +00:00
Charles Kerr
7113ae2502 (trunk libT) BANG 2009-10-30 22:03:32 +00:00
Charles Kerr
9ae5ce0bf8 (trunk libT) tear out another line of code. subtle, this isn't. this is like figuring out which neighbor is stealing your newspaper in the morning by secretly shooting a different neighbor each morning until the paper stops disappearing. 2009-10-30 21:51:59 +00:00
Charles Kerr
66eac308ef (trunk libT) still banging along at #2533 2009-10-30 21:41:41 +00:00
Charles Kerr
632f98c8fd throwing darts in the dark. this smells like a compiler bug. 2009-10-30 17:29:51 +00:00
Charles Kerr
8bdaedc723 (trunk libT) lather, rinse, repeat 2009-10-30 17:17:53 +00:00
Charles Kerr
586deb9d12 (trunk libT) Adding term debug messages to help track down #2533 w/m1b and *acrocivious 2009-10-30 16:46:33 +00:00
Charles Kerr
a7361372c3 Adding term debug messages to help track down #2533 w/m1b 2009-10-30 16:24:58 +00:00
Charles Kerr
a34d742e36 (trunk libT) OS X fix for tr_torrentDeleteLocalData() -- .DS_Store gave it trouble 2009-10-30 04:23:51 +00:00
Charles Kerr
d60fa654cb (trunk libT) fix regression introduced by #2539 that caused single-file torrents to not be deleted even if the user requested it 2009-10-30 02:58:30 +00:00
Charles Kerr
b5042148e8 (trunk libT) #2539: "incomplete folder" feature may lead to deleted files 2009-10-29 17:00:22 +00:00
Charles Kerr
4b804e32ed (trunk libT) another tweak to tr_torrentSetLocation() 2009-10-28 04:50:37 +00:00
Charles Kerr
22e3f1175a (trunk libT) #2531: when the user moves a torrent from one location to another, we don't need to reverify if the files are just rename()d 2009-10-27 23:00:34 +00:00
Mitchell Livingston
130c9af1d1 on second thought, the other UI's might want this value sooner or later, and it's cheaper to calculate it in the stat function 2009-10-25 18:49:20 +00:00
Mitchell Livingston
a5e0b6e5b2 since the Mac UI is the only one to use it, move percentRatio calculation into the Mac code 2009-10-25 18:45:35 +00:00
Mitchell Livingston
9254de1a36 smooth out the upload eta the same way as the download eta 2009-10-25 02:42:57 +00:00
Mitchell Livingston
47e19c4410 when calculating the "smoothed" eta, 1. only factor in previous speeds when those speeds were recent (ie. if we just resumed from pause, discard the previous speed) and 2. factor in if the speed was 0 as well 2009-10-25 02:36:03 +00:00
Charles Kerr
c85ee09fef (trunk) trunk's just been too stable lately. #2119: reload settings.json on SIGHUP 2009-10-23 03:41:36 +00:00
Mitchell Livingston
236bdc594f #2524 torrent peer limit not saved right away 2009-10-21 23:32:02 +00:00
Charles Kerr
0c53f3fa62 (trunk libT) add a couple of hooks for the mac client to use when migrating from its earlier move-on-complete code 2009-10-21 05:03:10 +00:00
Charles Kerr
8d1d91499a (trunk libT) #2520: tor->isRunning is not always saved to .resume file 2009-10-21 02:45:49 +00:00
Charles Kerr
7b5dcdf6d1 (trunk libT) semi-paranoid safeguard: when searching for a torrent's file, look for finished versions (normal filename) before unfinished ones (with the .part suffix). In the unlikely event of a bug where both exist, it's better for Transmission to use the finished one... 2009-10-20 04:15:10 +00:00
Charles Kerr
27b9f6e27d (trunk libT) make the ".part" suffix an optional feature as per BMW's request. Clean up the code a little. 2009-10-20 03:14:44 +00:00
Charles Kerr
6af5b7691e (trunk libT) make tr_torrentFileCompleted() safe for older torrents that were incomplete before the ".part" feature was added 2009-10-19 13:15:46 +00:00
Charles Kerr
05c77cc975 (trunk) #1483: move completed torrents to a user-specified directory + #629: different file extension for incomplete files 2009-10-19 05:05:00 +00:00
Charles Kerr
fe2d851e5b (trunk libT) #2489: stricter checking of fringe cases in tr_torrentSetAnnounceList() 2009-10-10 19:39:43 +00:00
Charles Kerr
2a22e1782f (trunk libT) #2489: tr_torrentSetAnnounceList() should check for invalid and duplicate announce URLs 2009-10-10 19:16:21 +00:00
Charles Kerr
5b19021ab1 (trunk libT) #2393: Transmission deletes all files when moving to the same physical directory 2009-10-07 03:49:55 +00:00
Charles Kerr
21bd104bda (trunk libT) #2471: added/removed trackers aren't applied until restart 2009-10-02 04:54:02 +00:00
Charles Kerr
b32e5cc25d (trunk libT) #2450: --find should not delete original 2009-09-27 18:48:00 +00:00
Charles Kerr
9bf4c599b8 (trunk libT,gtk) plug a couple of minor leaks reported by valgrind 2009-09-26 23:46:30 +00:00
Charles Kerr
4a09a1de13 (trunk) remove tr_stats fields: downloaders, leechers, seeders, timesCompleted as per discussion with livings 2009-09-26 06:20:33 +00:00
Charles Kerr
86ada18266 (trunk)
#1699: Announce to multiple trackers at once
#2424: Tracker address is not listed in GTK client.
2009-09-25 21:05:59 +00:00
Charles Kerr
44d785f9ca (trunk libT) #2284: crashes when some invalid torrents are added. reported by Flemzard in irc 2009-09-05 16:51:22 +00:00
Charles Kerr
14dfd896ba (trunk libT) a debugging message was accidenally being dumped to the terminal. Reported by ubuntuforums user "Nevermor7" in <http://ubuntuforums.org/showpost.php?p=7743702&postcount=1> 2009-08-16 21:09:08 +00:00
Charles Kerr
37a4a5c68e (trunk libT) fix pause-on-shutdown bug reported by KyleK and introduced in r8878 for #2317. 2009-08-15 21:09:06 +00:00
Charles Kerr
30bc1c6e7a (trunk libT) revision to r8910 for #2162: check to see if a field's value has actually changed before setting the "dirty" flag. 2009-08-14 14:41:59 +00:00
Charles Kerr
d318f1f0b8 (trunk libT) revision of r8915 for #1765: give the same user-level warning message if T first notices that a torrent's disappeared when it's doing a tr_torrentVerify() 2009-08-13 19:28:06 +00:00
Charles Kerr
9d0760e58c (trunk libT) revision of r8915 for #1766: flag the warning message for translation. 2009-08-13 17:56:50 +00:00
Charles Kerr
deb25906d0 (trunk libT) fix #1765: "if a downloaded file disappears, stop the torrent instead of redownloading it" 2009-08-13 17:50:41 +00:00
Charles Kerr
11717de1d0 (trunk libT) fix #2332: filesystem-based error messages lack context 2009-08-13 17:25:26 +00:00
Charles Kerr
784464450a (trunk libT) fix #2162: .resume file doesn't get saved often enough when its contents change 2009-08-13 14:47:56 +00:00
Charles Kerr
cf9c9a3e0b (trunk libT) another revision for preventing the bug in #2297 2009-08-12 04:36:59 +00:00
Charles Kerr
97ca8eab39 (trunk libT) possible fix for #2297 by removing potential thread issue in tr_torrentVerify() 2009-08-12 04:08:25 +00:00
Charles Kerr
c88dd2de12 (trunk libT) in tr_torrentStar(), there's no need to reload the progress after #2317's changes in r8878 2009-08-12 03:56:53 +00:00
Charles Kerr
cb79214854 (trunk) remove trailing spaces 2009-08-10 20:04:08 +00:00
Charles Kerr
24bb159bfe (trunk libT) #2137: .resume file gets saved too frequently 2009-08-07 05:29:37 +00:00
Charles Kerr
6a2879f0ee (trunk libT) fix r8871 oops 2009-08-05 02:07:51 +00:00
Charles Kerr
1c3b53244d (trunk) clean up the return value of tr_torrentParse() 2009-08-05 01:59:16 +00:00
Charles Kerr
a4767894e7 (trunk) #1400, #2308: differentiate warnings and errors; differentiate between local messages and messages from the tracker 2009-08-05 01:25:36 +00:00
Charles Kerr
87a7bf043a (trunk libT) possible fix for #2238 as suggested by kjg 2009-08-03 16:24:44 +00:00
Charles Kerr
1e6902a328 (trunk libT) fix r8770 oops 2009-07-02 02:04:34 +00:00
Charles Kerr
a8619eb645 (trunk libT) #529: Time remaining for downloads is unreliable 2009-07-02 01:50:07 +00:00
Charles Kerr
32aeae1388 (trunk libT) #2252: Folders stay in the original folder after using "Set location" and moving folder(torrent) 2009-07-01 15:30:17 +00:00
Charles Kerr
ef9896e223 (trunk libT) more efficient closing of a torrent's open files 2009-06-21 07:36:51 +00:00
Charles Kerr
683073855e (trunk libT) revert most of r8693 as a quick fix for a possible alignment issue on a NAS 2009-06-16 19:31:17 +00:00
Charles Kerr
deb679dab0 (trunk libT) avoid an extra per-torrent malloc/free by aggregating its tr_bandwidth into its struct 2009-06-14 22:19:19 +00:00
Charles Kerr
6755041894 (trunk) #1864: Tracker not found (404) when a check of local file is done. 2009-06-13 17:11:46 +00:00
Charles Kerr
4c60377168 (trunk) fix oops 2009-06-11 22:46:33 +00:00
Charles Kerr
17cb7945ed (trunk libT) #2199: DHT should not announce stopped torrents 2009-06-11 21:42:59 +00:00
Charles Kerr
9513fcbe66 (trunk libT) add a bunch of comments denoting where the libevent 2.0 changes will go 2009-06-02 18:21:23 +00:00
Charles Kerr
9238fb0299 (trunk) #2131: clean up benc read/write API 2009-06-02 01:48:48 +00:00
Mitchell Livingston
3f89538e28 when adding a torrent, set the default torrent speed limit to the global speed limit (the limit will still be disabled) 2009-05-28 22:05:21 +00:00
Charles Kerr
8504baf7aa (trunk libT) #2022: Torrentbar shows wrong speeds: Webseed-peers aren't taken into account 2009-05-28 02:28:14 +00:00
Charles Kerr
690b029c52 (trunk libT) take out the test scaffolding for the tr_torrentFiles() rewrite 2009-05-22 01:21:56 +00:00
Charles Kerr
a2480049d5 tweak the assertion to track down Rolcol's crash 2009-05-21 22:49:59 +00:00
Charles Kerr
b1f675eb83 (trunk libT) smoke out any errors in the tr_torrentFiles() rewrite 2009-05-21 18:37:55 +00:00
Charles Kerr
7d844ec279 (trunk) #920 Add "Move Data" to libT so all clients can use it 2009-05-20 16:02:12 +00:00
Charles Kerr
3d7cc36424 (trunk) #7: DHT support. This is a work in progress... no gui/rpc support yet 2009-05-19 18:38:26 +00:00
Charles Kerr
1c3f3acbca (trunk) add an option to the JSON generator to disable the human-readable indentations. Keep indenting the data files such as settings.json, but don't indent the messages used for RPC. This cuts the cost of deflate()ing those RPC messages by about 80%... 2009-05-16 05:51:52 +00:00
Charles Kerr
063b11bda1 (trunk libT) experimental faster implementation of tr_torrentFiles(). for the time being, keep the old implementation too and add an assertion that the two come up with the same results. 2009-05-16 01:43:21 +00:00
Charles Kerr
da42fe8a7c (trunk libT) #2035: Transmission causes wakeups by unnecessary polling. 2009-05-14 13:42:29 +00:00
Charles Kerr
29b1d3e2cc (trunk) #920: add "move data" to libT so all clients can use it 2009-05-13 15:54:04 +00:00
Charles Kerr
3c97a10a3e (trunk libT) add an assertion to tr_torrentStop() 2009-04-19 16:21:27 +00:00
Charles Kerr
03fa0b3e7d (trunk) experimental support for tr_torrentSetPriority() 2009-04-18 23:17:30 +00:00
Charles Kerr
bee21fb545 (trunk libT) #1992: try to cleanly destroy the "verify local data" thread on shutdown 2009-04-16 13:10:25 +00:00
Charles Kerr
cf552651f7 (trunk libT) in tr_torrentFiles(), avoid some expensive calculations if the torrent is a seed. 2009-04-12 17:31:17 +00:00
Charles Kerr
b3813000e9 (trunk libT) add more tests to verify r8214 2009-04-11 15:48:58 +00:00
Charles Kerr
35564b76a4 (trunk libT) startup uses less cpu now on big torrents. another cachegrind discovery 2009-04-11 06:58:14 +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
81766a8dcb (trunk libT) another possible fix for #1894: Crash when download finishes and seed ratio is already met 2009-04-09 14:10:31 +00:00
Charles Kerr
a1adee368f (trunk)
1. add to the "recently-changed" torrent a list of recently-removed torrent ids.
2. make the day-of-week alt speed a bitfield of days or'ed together, so that you can have (say) speed limits on monday and wednesday
2009-04-04 05:29:08 +00:00
Charles Kerr
96b726c08a (trunk rpc) add "torrentFile" to the list of allowed arguments to the "torrent-get" method 2009-04-02 22:59:30 +00:00
Charles Kerr
b6daa50ecf (trunk rpc) add the ability to set file priorities and download flags when adding a new torrent via rpc 2009-04-02 20:43:42 +00:00
Charles Kerr
c3b24bc471 (trunk) modify tr_torrentParse() and tr_torrentNew() arguments s.t. they use the ctor's session instead of passing it in again. Allow a NULL session pointer for some cases of tr_torrentParse(). 2009-04-02 17:30:29 +00:00
Charles Kerr
f1d92708e7 (trunk) more speedlimit work 2009-03-28 16:47:01 +00:00
Charles Kerr
cc1a4ec1e9 (trunk) rpc changes:
1. new field "blocklist-size" to session-info, so RPC clients can know how big the blocklist is
2. new method "torrent-reannounce" so RPC clients can ask the tracker for more peers
2009-03-26 18:06:54 +00:00
Charles Kerr
41b0cc8cdd (trunk) libT and gtk+ parts for #1889: per-torrent vs. global speed limit confusion 2009-03-04 19:52:57 +00:00
Charles Kerr
e8422f8cdd (trunk libT) always invoke the stop-ratio check when a torrent switches from leeching to seeding. 2009-03-04 15:13:56 +00:00
Charles Kerr
ebe125e896 (trunk libT) add another seed-ratio check when starting a torrent, as per Mitchell's suggestion 2009-03-02 23:52:25 +00:00
Charles Kerr
6f994f6708 (trunk libT) in tr_torrentCheckSeedRadio(), make sure to check & see if the torrent is running ;) 2009-03-02 03:18:03 +00:00
Mitchell Livingston
3ffbb31774 if the ratio is infinity, stop seeding if a stop ratio is set 2009-03-01 23:49:43 +00:00
Mitchell Livingston
2dabe5ce34 move the percent to the stop ratio into libtransmission 2009-03-01 23:48:04 +00:00
Charles Kerr
6fc252e007 (trunk libT) tweak r7985 2009-03-01 17:38:23 +00:00
Charles Kerr
d2f69877cf (trunk libT) tweak r7978 2009-03-01 17:37:10 +00:00
Mitchell Livingston
7400adb70d make the ratio that is checked for stop ratio match the displayed ratio 2009-03-01 14:01:49 +00:00
Charles Kerr
857b3dab10 (trunk libT) #1823: Ratio limit is only checked when peers are active 2009-03-01 13:56:22 +00:00
Mitchell Livingston
3d1cf6ba0d assorted trivial cleanup 2009-02-17 04:00:53 +00:00
Mitchell Livingston
b9ff19ba38 a newly-added torrent should always follow the global ratio setting 2009-02-17 01:42:10 +00:00
Mitchell Livingston
39b0108366 have the mac ui use libT's ratio settings (attempt 1); when seed ratio is reached in libT, set the seed ratio setting to "seed forever" 2009-02-14 21:15:57 +00:00
Mitchell Livingston
fa3b9a12c5 eta will now indicate time remaining to reach seed ratio when seeding 2009-02-14 05:15:23 +00:00
Charles Kerr
3f9a1d090b (trunk) #1787: add support for seeding ratio limiting in libtransmission 2009-02-13 18:23:56 +00:00
Charles Kerr
e7c2fe4b46 (trunk libT) #1760: test fix for a deadlock that occurs stopping a file that's being verified 2009-02-05 19:57:50 +00:00
Charles Kerr
6c7097d1f4 (trunk libT) more assertions 2009-01-30 00:41:08 +00:00
Charles Kerr
61e18f1d1b (trunk libT) yet even *more* assertions for Biiaru and persept :) 2009-01-29 16:56:43 +00:00
Charles Kerr
6f95a057d0 (trunk libT) when deleting a torrent's local data -- folders and files -- use remove() instead of unlink() because the former handles both folders and files gracefully 2009-01-22 21:43:46 +00:00
Charles Kerr
486c55c1ed (trunk libT) peerMgr: operate directly on tr_torrent and not peerMgr+torrentHash 2009-01-13 21:00:05 +00:00
Charles Kerr
dab899f132 (trunk libT) #1427: Files are kept open in read/write mode after a torrent finishes 2009-01-12 19:58:16 +00:00
Charles Kerr
2f6b56671f (trunk libT) win32 portability patch from Alexey 2009-01-11 17:02:04 +00:00
Charles Kerr
b545dbe28a (trunk libT) fix downloadDir error reported & tracked down by wereHamster 2009-01-09 18:39:30 +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
5ccd5a7700 (trunk libT) fix the much-hated "Assertion failed: (tr_isPeerIo( io ))". Also, repeated calls to tr_date() were taking up about 78% of the time in tr_stat(), so instead of calling multiple times, call it once in tr_stat() and pass that value around to the functions that need it. 2009-01-05 04:27:54 +00:00
Charles Kerr
ead8254b85 (trunk libT) tr_torrentStat() speedups 2009-01-03 23:11:29 +00:00
Charles Kerr
0d2d375125 (trunk libT) inline a few more torrent methods 2009-01-03 00:25:27 +00:00
Charles Kerr
86d3e70121 (trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_ratecontrol, contain the it directly rather than a pointer to one allocated elsewhere on the heap. 2009-01-02 20:42:35 +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
427f639664 (trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_ptrArray, contain the tr_ptrArray directly rather than a pointer to one allocated elsewhere on the heap. 2008-12-29 08:54:36 +00:00
Charles Kerr
dfcc9173e5 (trunk libT) #include "session.h" cleanup from wereHamster 2008-12-23 17:27:15 +00:00
Charles Kerr
303356d110 (trunk) #1029: When removing local data only remove data from the torrent 2008-12-23 16:04:11 +00:00
Charles Kerr
8556ce653f (trunk libT) comments, tr_bool correctness, better runtime tests. 2008-12-21 18:15:00 +00:00
Charles Kerr
54be88dec3 (trunk libT) add ipv6 support by jhujhiti. I think this is the largest user-contributed patch we've ever used... thanks jhujhiti :) 2008-12-15 00:17:08 +00:00
Charles Kerr
788b397ecc (trunk libT) more semantic cleanup: tr_handle->tr_session, int->tr_bool, int->tr_port 2008-12-14 11:21:11 +00:00
Charles Kerr
f1419a95c0 (trunk libT) semantic cleanup: int -> tr_bool 2008-12-13 23:39:12 +00:00
Charles Kerr
6b0d98a695 (trunk) #1559: Simplify tr_sessionInitFull 2008-12-13 23:17:36 +00:00
Charles Kerr
a33b78fc53 (daemon) #1510: kysucix's patch to give an option to delete local data via RPC when removing a torrent. 2008-12-09 17:01:49 +00:00
Charles Kerr
519b4d3f5e (trunk libT) if an individual torrent's speed limit is set, don't pay attention to the global speed limit 2008-12-09 15:09:26 +00:00
Charles Kerr
76ce949419 (libT) fix a minor memory leak. 2008-12-06 02:21:50 +00:00
Charles Kerr
bdffa5ce20 (libT) #1454: List of files selection/priority resetting 2008-12-02 23:27:45 +00:00
Charles Kerr
d4ee0d714a (libT) #1379: support "partial seeds" BEP 22 2008-12-02 19:46:51 +00:00
Charles Kerr
9d39ed2540 (libT) misc cleanup 2008-12-02 18:24:26 +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
ff651209c8 (libT) remove debugging statement that got checked in by accident 2008-11-26 05:58:10 +00:00
Charles Kerr
f44248a7d7 (libT) yet another stab at getting bandwidth management under control. this version may suck less than previous attempts. It also breaks the mac build until someone adds iobuf.[ch] to xcode... 2008-11-25 21:35:17 +00:00
Charles Kerr
be5e6774ad (libT) #1468: another stab at getting the peer transfer speeds both fast and a little more consistent. 2008-11-24 04:21:23 +00:00
Charles Kerr
42fe27c067 more fucking around with the speed measurements. 2008-11-08 02:49:04 +00:00
Charles Kerr
58ea9e4be8 (libT) revise r7065 2008-11-07 05:37:59 +00:00
Charles Kerr
c8b51fb734 #1429 (libT) cleaner handling of the special case where the upload or download speed limit is zero 2008-11-07 04:10:27 +00:00
Charles Kerr
04d10183e1 (libT) fix r7055 oops. Also, the comment on that last commit should read "in the values returned by the public API's speed functions, only give the piece data transfer speeds -- don't include the protocol overheads" 2008-11-06 03:04:21 +00:00
Charles Kerr
8e4fa83c77 update NEWS 2008-11-06 02:56:51 +00:00
Charles Kerr
10566eece9 (libT) #849: preallocate files when possible to prevent disk fragmentation 2008-11-05 05:56:06 +00:00
Charles Kerr
5d35dfaeca (libT) micro-optimizations suggested by cachegrind 2008-11-03 17:01:08 +00:00
Charles Kerr
f2a933fb77 #1308: Transmission forgets it's verifying data 2008-10-28 15:13:07 +00:00
Charles Kerr
11f240365e fix tab damage 2008-10-27 17:35:22 +00:00
Charles Kerr
5ad58ea83e fix r6965 oops 2008-10-27 04:39:30 +00:00
Charles Kerr
631d9d9a8f (libT) fold together some redundant sanity tests that were taking up 6.6% in softwareelves' profile 2008-10-27 04:27:55 +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
ea668ca9ff (libT) possible fix for the up/down display inconsistency reported by BentMyWookie. 2008-10-20 03:47:48 +00:00
Charles Kerr
e3a5524189 have tr_buildPath() allocate memory from the heap rather than using an input buffer 2008-10-14 03:03:29 +00:00
Charles Kerr
4fab4c9e9b (libT) finish killing tr_errno. 2008-10-03 04:49:06 +00:00
Charles Kerr
b1ef118e3f (libT) housekeeping: tr_torrent.handle --> tr_torrent.session 2008-10-02 15:53:33 +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
4fe1e1dae3 first draft at having more accurate speed controls 2008-09-17 19:44:24 +00:00
Charles Kerr
419242e36f (libT) change benc's integral type from int to size_t, squashing a couple of minor warnings 2008-09-04 14:42:32 +00:00
Mukund Sivaraman
de62de3e19 Replace random number generation code 2008-08-14 11:11:25 +00:00
Charles Kerr
2e6443a53d #1168: reading past the end of KTorrent's pex added.f strings 2008-08-10 14:58:11 +00:00
Charles Kerr
c6026a3b66 #1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero 2008-08-06 11:39:30 +00:00
Charles Kerr
74dd613895 #1135: crashes when adding torrent, with "assert( ( info->pieceSize % tor->blockSize ) == 0 );" 2008-08-05 20:27:40 +00:00
Charles Kerr
b860119cd3 minor text cleanup 2008-08-01 16:43:22 +00:00
Charles Kerr
2eb89eb2a7 (libT) fix some minor warnings foudn by clang's scan-build and reported by m1b 2008-07-17 20:33:34 +00:00
Charles Kerr
16e3803082 small tr_torrentStat() speedup suggested by BentMyWookie 2008-06-17 14:25:23 +00:00
Charles Kerr
6cce27bf54 (rpc) simplify the rpc accessors 2008-06-16 03:47:50 +00:00
Charles Kerr
effb78d674 unify the daemon and gtk client's config files so that you can easily swap back and forth between clients and keep the same torrents and preferences. 2008-06-12 16:25:36 +00:00
Charles Kerr
13424ed977 (libT) add NULL pointer checks to tr_torrentStart(), tr_torrentStop() 2008-06-10 19:25:18 +00:00
Charles Kerr
393ebbc24a more webseed work. 2008-06-10 02:36:52 +00:00
Charles Kerr
837f997e6c (libT) new API for webseed statistics: tr_torrentGetWebSpeeds() 2008-06-10 01:38:12 +00:00
Charles Kerr
dce24eb1f0 libT: first cut at implementing the internal peers' request queues as pieces rather than blocks, as discussed with erdgeist and denis, to avoid a couple of nasty CPU bottlenecks. 2008-06-09 22:53:45 +00:00
Charles Kerr
9f2d7c2c67 (libT) if there are webseeds, update the available amount accordingly 2008-06-09 02:38:27 +00:00
Charles Kerr
044bfbad39 add tr_torrentSetDoneDate() too 2008-06-03 19:42:54 +00:00
Charles Kerr
870c4d7650 add tr_torrentSetAddedDate() and tr_torrentSetActivityDate() 2008-06-03 19:22:22 +00:00
Charles Kerr
e1a23350d4 (1) add a doneDate to tr_torrent and tr_stat. (2) save tr_torrent.doneDate and tr_torrent.activityDate between sessions in the .resume file. 2008-06-03 19:16:12 +00:00
Charles Kerr
5db4ca7fa3 #981: add tr_stat.dateAdded to libT; add "sort by age" to gtk+ client 2008-06-02 04:41:55 +00:00
Charles Kerr
07c1b28e9e #838 (Adding trackers to existing torrents): add a backend API for this (tr_torrentSetAnnounceList) and implement a GUI for it in the gtk+ client. 2008-06-01 01:40:32 +00:00
Charles Kerr
0a023367b6 fix r5985 oops. I shouldn't make commits when I'm in a hurry. 2008-05-31 15:15:54 +00:00
Charles Kerr
cdf5cb87d6 another tweak for calculating tr_stat.desiredAvailable faster, suggested by BentMyWookie 2008-05-31 05:22:10 +00:00
Charles Kerr
f3db37ab1b add a couple of more ways to short-circuit the tr_stat.desiredAvailable test in tr_torrentStat(), as suggested by BentMyWookie 2008-05-30 16:49:03 +00:00
Charles Kerr
0705eaa1c0 minor speedups in tr_torrentStat() and in bitfield manipulation 2008-05-30 15:40:46 +00:00
Charles Kerr
ad2146cc24 #972 (partial) Transmission fails to compile with Sun Studio due to funky C code 2008-05-28 13:03:34 +00:00
Charles Kerr
7bfe7cc471 remove unused functions tr_torrentSetActiveCallback() and tr_torrentClearActiveCallback() 2008-05-23 20:33:54 +00:00
Charles Kerr
53d8574b11 * change tr_stat.activityDate's and tr_stat.startedDate's type to time_t, since that's how everyone uses them anyway
* add a little more documentation to tr_stat and tr_ctor in transmission.h
2008-05-23 20:04:41 +00:00
Charles Kerr
d18fb68fbc sine we now have two public ports (peer and rpc), rename "publicPort" as "peerPort" 2008-05-23 16:18:58 +00:00
Charles Kerr
0621c67c41 more cleanup work:
(1) kill the pointless "tr_tracker_stat" struct.
(2) kill the unused "tr_torrentRemoveSaved()" function.
(3) kill the redundant "nextManualAnnounceTime" variable.
(4) make the TR_ERROR_IS_* macros private.
2008-05-22 23:11:21 +00:00
Charles Kerr
26b5a16630 (libt) more janitorial work on cleaning up tr_session*() and tr_torrent*() functions: session stats, torrent count, and manual update. 2008-05-22 20:44:41 +00:00
Charles Kerr
dceabc5661 make tr_stat identical in transmission.h and rpc-spec.txt. 2008-05-22 16:59:51 +00:00
Charles Kerr
e406dcc2ab rename tr_torrentClose() as tr_torrentFree() and make it private. change client code to use tr_torrentRemove() instead. This fixes the confusion between the two methods that led to #954 2008-05-21 17:14:58 +00:00
Charles Kerr
c7b9c8c043 (#954) rpc: add "torrent-remove" method. rename tr_torrentDelete() as tr_torrentRemove() for consistency with various parts of the code. 2008-05-20 23:58:59 +00:00
Charles Kerr
2c79888a93 RPC/IPC redesign 2008-05-18 16:44:30 +00:00
Charles Kerr
be9427931a ipc: add session accessor/mutators.
transmission.h: make the session API more consistent.
2008-05-12 16:33:17 +00:00
Charles Kerr
63b82714f8 partial implementation of json-ipc backend: torrent start/stop/close/verify/stat/info, as are getting & setting per-torrent peer limits, upload speeds, and download speeds. this is a work in progress. 2008-05-12 00:41:55 +00:00
Charles Kerr
33839f77be new utility for iterating through torrents: tr_torrentNext() 2008-05-10 00:19:00 +00:00
Charles Kerr
e19149bbb7 #751: tear down some of the scaffolding used in tracking down this bug. 2008-05-08 20:30:27 +00:00
Charles Kerr
ed4e902482 #912: Resume file parsed twice on startup 2008-05-06 01:43:24 +00:00
Charles Kerr
2cd2b35238 fix multitracker problem reported by BentMyWookie 2008-05-05 20:11:03 +00:00
Charles Kerr
d561187227 when one of the trackers in a multitracker list is successful, bump it to the top of the tier. 2008-05-05 19:51:53 +00:00
Charles Kerr
c5eed39275 add #include <limits.h> to pick up INT_MAX 2008-05-05 19:33:29 +00:00
Charles Kerr
643716c6f0 randomize the announce addresses within multitracker tiers 2008-05-05 18:54:19 +00:00
Charles Kerr
2f3eba4b01 #899: Hangs when clicking verify data twice 2008-04-27 06:34:34 +00:00
Charles Kerr
52ea125c45 #894: wont start - cp->doneHave <= cp->completeHave 2008-04-24 15:25:01 +00:00
Charles Kerr
19fbb3ef2c string folding 2008-04-21 15:22:54 +00:00
Charles Kerr
08b27749ba #890: be smarter about noticing seeds from tracker & pex 2008-04-19 15:07:59 +00:00
Charles Kerr
87a77ea331 more hacking on the bencoded resume files 2008-04-15 17:00:44 +00:00
Charles Kerr
35502f0559 add more debugging messages for loading progress from the bencoded resume file 2008-04-14 20:30:43 +00:00
Charles Kerr
e4f6b9592d get tr_ctorSetMetainfoFromHash() working again. 2008-04-14 14:39:13 +00:00
Charles Kerr
afde752dc0 'resume' cleanup 2008-04-14 11:52:50 +00:00
Charles Kerr
c8c84d6bd1 #872: crash in bitfield code when loading resume files 2008-04-13 14:29:11 +00:00
Charles Kerr
fc866f51f3 minor tr_torrentStat cleanup 2008-04-12 15:56:21 +00:00
Charles Kerr
f12ac60d0a update a couple of the tr_stat fields based on feedback from BMW 2008-04-11 23:05:14 +00:00
Mitchell Livingston
f34cd7299f fix incorrect eta value 2008-04-07 05:00:07 +00:00
Mitchell Livingston
2a8b6f8b1f fix marking the eta of torrents with peers as unavailable 2008-04-07 03:01:57 +00:00
Charles Kerr
69eaaed409 remove a debugging printf 2008-04-06 17:12:15 +00:00
Charles Kerr
9f3f0c03e6 #843: download eta should consider availability 2008-04-06 14:42:47 +00:00
Charles Kerr
b71a2985b3 #684: Use XDG basedir spec for configuration and cache files in $HOME 2008-04-05 20:12:11 +00:00
Charles Kerr
eb24ad760d (1) make tr_torrentRates() faster.
(2) new function: tr_torrentGetStatus() for when you need the status but not the overhead of tr_stat
2008-04-01 02:35:04 +00:00
Charles Kerr
3e4168025b experimental commit to save 1888 bytes from each tr_torrent 2008-03-31 19:34:20 +00:00
Charles Kerr
51a82e70c1 remove `TR_STATUS_DONE' from libtransmission's public API. It's useful as an internal state but not for code calling libtransmission. 2008-03-31 17:59:16 +00:00
Charles Kerr
b3663db916 #811: fix r5329 error in trunk. 2008-03-24 16:10:04 +00:00
Charles Kerr
2ca35e1ea7 allow NULL as the second argument to tr_torrentFiles() 2008-03-22 18:27:29 +00:00
Charles Kerr
c63b548195 fix bug that caused very large torrents to crash Transmission 2008-03-22 18:10:59 +00:00
Charles Kerr
531dd851ad more string work before the freeze. (1) use %'d to get thousands' grouping in end-user strings (2) follow HiG capitalization, quotation guidelines (3) fold a few more strings 2008-03-19 20:07:27 +00:00
Charles Kerr
05c6938f5a changes to message logging: (1) bring back "Torrent hasn't responded yet", but only in the message log. (2) make PEX messages debug. (3) log a message when a torrent reaches completion. 2008-03-18 16:56:01 +00:00
Charles Kerr
913f2843b2 #740: back out the previous "fix" because it caused an regression in the mac client 2008-03-18 16:26:45 +00:00
Charles Kerr
146b9df023 meh, too early in the morning :) 2008-03-13 11:59:19 +00:00
Charles Kerr
18ab99970b fix r5243 typo reported by BentMyWookie 2008-03-13 11:57:42 +00:00
Charles Kerr
29f092197f #138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages 2008-03-13 03:53:18 +00:00
Charles Kerr
e3c1d221fb #781: experimental commit on the "failed data" issue. 2008-03-13 00:38:16 +00:00
Charles Kerr
909cb89b43 even more i18n string work, w/more feedback and reading through the transmission.pot file. 2008-03-08 01:43:20 +00:00
Charles Kerr
7200b27a18 lots more i18n string work -- making strings more consistent, folding redundant strings together, etc. 2008-03-07 20:48:36 +00:00
Charles Kerr
5e3dcb5f6f #751: more digging to try to figure out where the problem is. 2008-03-06 13:24:44 +00:00
Charles Kerr
84a8592d1d first cut at adding i18n hooks into libtransmission. 2008-03-04 02:02:25 +00:00
Charles Kerr
6b1001600b remove scaffolding that was accidentally committed in r5183 a few minutes ago 2008-03-02 19:55:04 +00:00
Charles Kerr
d712545433 don't crash in makemeta when trying to build a torrent from files you don't have read access to. (wereHamster) 2008-03-02 19:42:45 +00:00
Charles Kerr
f00dd3cbd3 possibly-better patch for #740. 2008-02-27 20:44:46 +00:00
Charles Kerr
82d0cd852a #740 fix tr_torrentParse() leak when adding duplicate torrents. 2008-02-27 20:16:01 +00:00
Charles Kerr
9ee96fd0dc add `verify' command to ipc. 2008-02-27 17:38:39 +00:00
Charles Kerr
8cc587a66f more housekeeping: benc_val_t --> tr_benc 2008-02-26 21:58:58 +00:00
Charles Kerr
58b655338a libT: add tracker information to tr_stat. gtk: add `tracker' tab to inspector 2008-02-21 07:29:39 +00:00
Charles Kerr
cfe068876e remove unnecessary #includes 2008-02-19 18:39:49 +00:00
Charles Kerr
4456c2dd90 (gtk) #544: remove fast-resume cache when appropriate 2008-02-19 05:03:56 +00:00
Charles Kerr
6fb57dcd59 modify "verify local data" to not lose the blocks in incomplete pieces 2008-02-15 16:00:46 +00:00
Charles Kerr
d360607a02 fix a possible crash when deleting a torrent. 2008-02-13 01:22:55 +00:00
Charles Kerr
7cf9f8cc35 #417: add the libtransmission bits for telling users when they can "Ask Tracker for More Peers" 2008-02-09 17:07:30 +00:00
Charles Kerr
88cfec047f #666: pausing in the middle of "verify local data" makes T forget about the nonverified portion 2008-02-01 01:38:55 +00:00
Charles Kerr
0f981db778 #665: Ratio calculations aren't strictly accurate when re-seeding a torrent 2008-01-29 16:33:29 +00:00
Charles Kerr
b1cd6ecccc remove unused "max unchoked peers" feature. fix obsolete TR_FLAG_SAVE comment. 2008-01-23 17:06:36 +00:00
Charles Kerr
de515ee339 if the torrent's download path doesn't exist, don't create it -- it's might be a removeable disk that got unplugged. 2008-01-18 19:13:32 +00:00
Charles Kerr
5965d8d1ae handle tr_torrentClose( NULL ) gracefully. 2008-01-16 17:57:13 +00:00
Charles Kerr
549778dc7e #589 fix crash that occurred when the next-to-last file in a torrent ended on a piece boundary and the last file had a size of 0 bytes. 2008-01-08 03:08:36 +00:00
Charles Kerr
3cfbb199af remove unnecessary assertion 2008-01-05 19:01:51 +00:00