Charles Kerr
1fd5f90a77
win32 cleanly compiles and starts now. (still doesn't atually *work*, but we're getting closer...)
2007-08-02 19:43:29 +00:00
Charles Kerr
65b81d09b6
use a straight lock, rather than a rwlock, for rate control
2007-08-02 16:07:34 +00:00
Charles Kerr
0e1e45605a
fix manual-announce but noted by BMW
2007-08-02 02:38:42 +00:00
Charles Kerr
25c1dff6d8
fix tyop
2007-08-01 23:22:01 +00:00
Charles Kerr
8aebe31de1
tr_trackerCanManualAnnounce() should return false immediately after the user's manually announced; not just after the announce request is processed by the tracker
2007-08-01 13:33:01 +00:00
Mitchell Livingston
043d517730
in the clients list show dev builds as Transmission as "+" builds
2007-08-01 02:38:31 +00:00
Charles Kerr
26caf4f5dd
More Win32 portability changes
2007-08-01 00:40:49 +00:00
Charles Kerr
497856e6e4
add Win32 implementations of tr_thread_t, tr_mutex_t, and tr_cond_t
2007-07-31 19:56:40 +00:00
Charles Kerr
ba3dc008fc
get the socket/net code working on win32 too
2007-07-31 16:55:47 +00:00
Charles Kerr
0f85cc3297
continue whittling away at internal.h to reduce the global #include dependencies
2007-07-31 14:26:44 +00:00
Charles Kerr
11752dae78
remove unused macros
2007-07-31 01:21:10 +00:00
Charles Kerr
88fe038e6e
(libT) not all libT source files need to #include sha1/openssl, just three of them. Also, no need to compile a local sha1 implementation if we're using openssl's.
2007-07-30 19:55:10 +00:00
Charles Kerr
d209052051
add portability wrapper for in_port_t...
2007-07-30 18:04:10 +00:00
Charles Kerr
1be185aacd
(libT) get "update tracker" working again.
...
(gtk) add "update tracker" button.
2007-07-30 17:11:00 +00:00
Charles Kerr
ebb141b232
better encapsulation of platform-specific constructs: tr_thread_t, tr_cond_t, tr_lock_t
2007-07-30 15:27:52 +00:00
Charles Kerr
7ba03d40b7
sync the two build systems w.r.t. dirname() and basename()
2007-07-30 14:31:03 +00:00
Charles Kerr
d8f8f9f922
Get BeOS client building on Zeta 1.21 thanks to patches by Fredrik Modéen
2007-07-30 13:59:23 +00:00
Charles Kerr
e1eaae5d19
fix small memory leak
2007-07-29 19:16:13 +00:00
Josh Elsasser
e429ebcb1b
Add a couple headers needed to build on openbsd.
2007-07-29 18:31:25 +00:00
Charles Kerr
e07d0220a9
this looks bug but it's not: just janitorial cleanup, moving #includes from headers into source file
2007-07-29 18:11:21 +00:00
Charles Kerr
7cfafc5371
* now that we've got a new function at the top of the CPU hog list, tweak it too.
...
* reduce large torrents' memory consumption in tr_completion_t.
2007-07-28 22:47:10 +00:00
Charles Kerr
530507760b
fix r2531 bug reported by Lacrocivious
2007-07-28 16:31:08 +00:00
Charles Kerr
29367fda62
add a temporary debugging statement for Lacrocivious
2007-07-28 15:58:59 +00:00
Charles Kerr
79a0081092
a nice patch that makes the three most CPU-hogging functions (as reported by Shark) essentially free and reduces memory overhead by 8 bytes per piece per torrent. Lots of asserts for extra testing fun.
2007-07-28 15:43:34 +00:00
Charles Kerr
a9fc478955
get both build systems (hand-written configure, and autoconf) to generate equivalent version.h headers
2007-07-28 04:10:09 +00:00
Charles Kerr
9542f7fe9e
* better `info' icon for torrent inspector.
...
* fix internal.h ifdefs s.t. we can use openssl for SHA1 when using configure.ac
2007-07-28 02:17:15 +00:00
Charles Kerr
a180698e8a
save a little bit of memory per-torrent.
2007-07-27 23:07:26 +00:00
Charles Kerr
b372ce45bf
fix stupid typo in completion.c that gave the wrong valid dl amount
2007-07-27 11:56:34 +00:00
Charles Kerr
9e266f6cbc
tweak r2510 misassertion reported by Lacrocivious
2007-07-27 01:59:48 +00:00
Charles Kerr
cd52d97529
refinement of r2510
2007-07-27 01:58:49 +00:00
Charles Kerr
0e6f766a57
gracefully fail when poison torrents containing no files, or zero byte files, are opened.
2007-07-27 01:50:26 +00:00
Charles Kerr
8f4fb4efbe
speed improvements to tr_torrentStat() by folding two expensive & redundant functions together.
2007-07-27 01:22:49 +00:00
Charles Kerr
3b6b9d3852
fix bug in tr_cpDownloadedValid() that caused download sizes of > 4 GiB to be misreported locally
2007-07-26 19:15:36 +00:00
Charles Kerr
31ac4e604a
a better fix for the tr_rand() crash experienced earlier today
2007-07-26 03:57:45 +00:00
Charles Kerr
daf26881b7
avoid using tr_rand() in peerPulse(); it's giving both me and SWE some odd behavior
2007-07-25 20:55:39 +00:00
Charles Kerr
abbcc72154
fix misassertion from a couple of revisions ago when trying to smoke out SoftwareElves' bug
2007-07-25 19:01:36 +00:00
Charles Kerr
3e40e06938
avoid null pointer dereferencing in tr_torrentInit*() as reported by wereHamster
2007-07-25 18:43:21 +00:00
Charles Kerr
fd7c112151
fix endgame bug reported again and again and again by SoftwareElves ;)
2007-07-25 18:30:00 +00:00
Charles Kerr
d84c2bd44a
some assertions to smoke out the error that SoftwareElves is seeing
2007-07-25 17:46:00 +00:00
Charles Kerr
c81f38360f
Undo the reporting stats change in r2493, based on info from xiffix that Azureus does not do this for the tracker, and when uTorrent did, it provoked a ban.
2007-07-25 17:38:05 +00:00
Charles Kerr
e8fb29ea44
fix compiler warnings reported by wereHamster
2007-07-25 17:27:19 +00:00
Charles Kerr
66883e72a9
fix double-free crash on opening a corrupt torrent file. reported by wereHamster
2007-07-25 17:19:29 +00:00
Charles Kerr
88d4df169b
Follow Azureus' and uTorrent's lead in not counting corrupt pieces in our announce data, as it could give us a misleadingly bad share ratio . (Ticket #263 )
2007-07-25 16:50:32 +00:00
Charles Kerr
d259e7b65a
Fix peer destructor bug from ticket #270 . This bug dates back to r1419 in January... I'm surprised it hasn't been reported before now.
2007-07-25 16:33:22 +00:00
Charles Kerr
95313e077a
fix off-by-one in r2488 reported by BentMyWookie. Hooray for assert()!
2007-07-25 02:28:25 +00:00
Charles Kerr
730d6df742
* fix overflow error from earlier today. (this was the crash talked about in IRC)
...
* fix long-standing error that occurred when pieceSize isn't evenly divisible by blockSize
* speed up and macro-ize piece-to-block conversions
2007-07-25 01:59:46 +00:00
Mitchell Livingston
a459ba3a74
make values in newly created .torrent files alphabetically sorted
2007-07-25 01:00:17 +00:00
Charles Kerr
79b85b36ab
add some assertion tests for #transmission
2007-07-24 20:49:47 +00:00
Charles Kerr
8c79683c83
take a shot in the dark on the crash reported in #transmission
2007-07-24 20:29:27 +00:00
Charles Kerr
e352d56925
fix the high CPU load during endgame.
2007-07-24 18:59:37 +00:00
Charles Kerr
339005346c
remove unused function tr_cpMostMissingBlockInPiece()
2007-07-24 17:08:45 +00:00
Charles Kerr
e1c18610be
remove unused function _tr_blockPosInPiece()
2007-07-24 16:04:43 +00:00
Charles Kerr
17a8ae9fa2
faster tr_cpGetStatus() and tr_bitfieldHas(), which were showing up at the top of the CPU profile.
2007-07-24 14:51:46 +00:00
Charles Kerr
eefa51c65c
tr_cpBlockAdd: small speedup.
2007-07-24 11:50:29 +00:00
Charles Kerr
7326f4db32
do the low-CPU tests first when deciding which blocks to request. these get called a /lot/ during endgame.
2007-07-24 11:47:59 +00:00
Charles Kerr
dd55805012
much faster rechecking of incomplete torrents. added tr_stat_t.recheckProgress field.
2007-07-24 01:33:59 +00:00
Charles Kerr
c7d97e5f0a
get "recheck files" working properly again.
2007-07-24 00:09:23 +00:00
Charles Kerr
eaca893b4c
set default torrent ul/dl speed limits from global ul/dl speed. as a side effect, totally decouples fastresume from inout.
2007-07-23 03:00:20 +00:00
Charles Kerr
486f483751
xmission: load torrents on startup and populate the torrent list.
2007-07-22 02:24:13 +00:00
Charles Kerr
809ec63e95
new utility function for app startup: tr_loadTorrents()
2007-07-21 18:46:54 +00:00
Charles Kerr
a9526adbdd
put information messages in tr_inf(), not fprintf()
2007-07-21 18:31:08 +00:00
Charles Kerr
50f407933b
when closing torrents, don't try to re-stop torrents that are already stopped.
2007-07-21 18:03:24 +00:00
Charles Kerr
1d932b07c7
fix looooong-standing bug that choked tracker connections
2007-07-21 17:35:47 +00:00
Charles Kerr
bbac082af5
finish splitting the rate control from one state into two states as requested by BMW
2007-07-20 08:33:59 +00:00
Charles Kerr
3e3bf8b4a7
more work on speed control
2007-07-20 06:08:34 +00:00
Charles Kerr
4ef1592e6b
more work on the speed limits as hammered out w/BentMyWookie
2007-07-20 03:24:04 +00:00
Charles Kerr
459b8958cb
simplify xml.c and utils.c's dependencies
2007-07-19 11:54:37 +00:00
Charles Kerr
c24fc6e16a
de-inline some big functions.
2007-07-19 10:56:14 +00:00
Charles Kerr
05d88f2c48
remove the TR_HTONL macro
2007-07-19 10:49:44 +00:00
Charles Kerr
6d21f2fb16
remove TR_NTOHL macro
2007-07-19 10:37:30 +00:00
Charles Kerr
615afaa445
add extra state change checks
2007-07-19 03:48:27 +00:00
Charles Kerr
73cfb2605d
include version.h.in, not version.h, in "make dist"
2007-07-18 23:05:38 +00:00
Charles Kerr
2a9ab2a7d9
add version.h.in
2007-07-18 23:04:50 +00:00
Charles Kerr
bd3ce76fa5
part one of moving the build environment over to automake/autoconf. beware!
2007-07-18 23:04:26 +00:00
Charles Kerr
b73297e799
sync with r2397
2007-07-18 22:59:29 +00:00
Charles Kerr
3c60fb0ded
remove unused variable
2007-07-18 22:11:47 +00:00
Josh Elsasser
99e471f05d
Replace nice readable bitshifts with ugly hex constants
...
to avoid the compiler warning about our weird error codes.
2007-07-18 18:09:03 +00:00
Josh Elsasser
900aff7beb
Include trcompat.h for asprintf()
...
Don't mix function and non function pointers without casting.
Replace a couple bzero()s with memset()s.
Remove a stray ;
Include a missing header.
2007-07-18 17:25:42 +00:00
Josh Elsasser
adc0d4ac92
Add asprintf implementation for systems which lack it.
2007-07-18 17:19:14 +00:00
Charles Kerr
dbe96a9e82
fold per-torrent ul/dl speed cap settings into libtransmission. synchronize gtk+ client with this change. breaks os x client.
2007-07-18 05:27:45 +00:00
Charles Kerr
04af3493d5
maybe fix ticket #256 . or maybe not. I'd need the osx client to tell, so BentMyWookie gets to test my code as usual.
2007-07-18 03:30:57 +00:00
Mitchell Livingston
53d15b5483
images for priorities, courtesy of BigBossman
2007-07-18 00:59:08 +00:00
Charles Kerr
d182f5b4b6
test fix tr_getDone() for BentMyWookie
2007-07-17 00:31:38 +00:00
Charles Kerr
9c7a913cdc
r2377 cleanup
2007-07-16 23:52:05 +00:00
Mitchell Livingston
091a56d4ca
identify dev builds of transmission correctly in the peers list
2007-07-16 21:57:22 +00:00
Charles Kerr
2f173fd4d4
fix overlap bug in file-selection where files adjacent to a "do not download" file could end up missing a few bytes.
2007-07-16 19:57:34 +00:00
Charles Kerr
1d95bcc689
re-randomize peer_id each time we start a torrent. (ticket #257 )
2007-07-16 11:19:44 +00:00
Josh Elsasser
1ee1b38c60
Add getright peer id.
2007-07-16 05:53:10 +00:00
Charles Kerr
82fbfb4c47
disambiguate some of the tr_stat_t variables' names
2007-07-16 00:50:43 +00:00
Charles Kerr
a814d843ad
get UPNP working again. huge thanks to BigBossman and persept for doggedly tracking down this bug.
2007-07-15 22:18:49 +00:00
Charles Kerr
7229f6c56b
remove more functions made obsolete by tr_torrentFile().
2007-07-15 20:29:57 +00:00
Charles Kerr
59459feb26
replace tr_torrentGetFileStatus() with tr_torrentFiles() for BMW
2007-07-15 20:05:32 +00:00
Charles Kerr
321b01d430
make tr_torrentStat() const.
...
malloc, rather than calloc, the buffer in strndup.
2007-07-15 19:12:54 +00:00
Charles Kerr
4a0c4b6fbc
make tr_torrentGetFileStatus() more accurate
2007-07-15 18:47:43 +00:00
Charles Kerr
ad6ae58e06
fix the bugs outlined by cluthi81 in ticket #255 .
2007-07-15 17:36:56 +00:00
Charles Kerr
73ca83a455
split tr_stat_t's peersTotal into peersTotal and peersConnected
2007-07-15 17:19:07 +00:00
Mitchell Livingston
975e066919
whoops
2007-07-15 15:45:08 +00:00
Mitchell Livingston
1facf22f58
move towards fixing activity display bug
2007-07-15 15:43:31 +00:00
Charles Kerr
a572902dae
make tr_stat_t and tr_peer_stat_t more accurately reflect ul/dl rates
2007-07-15 05:18:18 +00:00
Josh Elsasser
9120508167
According to azureus, bitspirit v0 is really v1.
2007-07-15 05:13:35 +00:00
Josh Elsasser
1e3248e54a
Add bitspirit to clients list.
2007-07-15 05:02:30 +00:00
Charles Kerr
8bf8cb4c47
if a torrent's status changes due to a manual recheck while a torrent is stopped, update the torrent's seeding/downloading state appropriately.
2007-07-15 04:19:39 +00:00
Charles Kerr
1c7c8072b4
fix crash on zero-byte torrents
2007-07-15 03:52:51 +00:00
Charles Kerr
4311b160b5
add tr_torrentGetFileStatus() for BentMyWookie
2007-07-15 03:26:22 +00:00
Josh Elsasser
1ecbe8da65
Change a couple functions to take an in_addr pointer instead of an in_addr.
...
Forward declare struct in_addr and include the relevant headers in the .c files where it's used.
2007-07-14 16:29:21 +00:00
Josh Elsasser
1b5cde1edb
Don't silently ignore IPC messages which aren't in the table (oops).
2007-07-14 05:29:18 +00:00
Josh Elsasser
c0970d0431
Unbreak the build on my system.
2007-07-14 05:28:35 +00:00
Charles Kerr
261ac20427
tr_bitfieldIsEmtpy(): fix a howler of a bug that caused some files to not be rechecked on startup even if they should've been.
2007-07-14 04:26:30 +00:00
Charles Kerr
f0d97e1a02
fix bug that gave the wrong peer count when uploading.
2007-07-13 22:22:46 +00:00
Charles Kerr
e6e6d574db
second draft of a fix for the tracker communication bug reported by TMT
2007-07-13 01:34:14 +00:00
Charles Kerr
b667ad3037
... and do the same for tr_torrentGetFileDL()
2007-07-13 01:17:21 +00:00
Charles Kerr
a3eb718162
revise tr_torrentSetFilePriorities() for BMW
2007-07-13 00:27:47 +00:00
Charles Kerr
6f09fbe18d
add #include files for stat()
2007-07-13 00:15:45 +00:00
Charles Kerr
5e4a49be16
first draft of a fix for the tracker communication bug reported by TMT
2007-07-12 20:48:13 +00:00
Charles Kerr
9f16191b0e
remove unused macros. constify some tracker functions.
2007-07-12 18:54:39 +00:00
Charles Kerr
790476ac23
clean up #includes a bit.
2007-07-12 17:51:45 +00:00
Charles Kerr
5455df4373
update versioning scheme as per consensus between TMT, John_Clay, Gimp_, and charles_
2007-07-10 19:40:21 +00:00
Charles Kerr
f86cf5449d
fix rate control bug reported by John_Clay
2007-07-10 17:07:18 +00:00
Eric Petit
2c141f9609
Adds BeOS tr_condBroadcast implementation
2007-07-10 14:00:20 +00:00
Eric Petit
26b837ffc0
Adds basename/dirname implementation for platforms that lack it (BeOS...)
2007-07-10 11:30:11 +00:00
Charles Kerr
043ba9e1bf
more fastresume fixin'
2007-07-10 03:49:10 +00:00
Charles Kerr
e45df69b9a
oops, that debugging statement shouldn't've been checked in
2007-07-10 03:45:58 +00:00
Charles Kerr
adb3d2399b
fix dnd-setting bug created while splitting DND and priorities into two separate entities
2007-07-10 03:41:16 +00:00
Charles Kerr
0c39aa6565
minor cleanups of last checkin
2007-07-10 03:23:07 +00:00
Charles Kerr
ed226a32ac
splitting dnd and priorities apart, and moving the file storage for those fields into fastresume
2007-07-10 03:12:46 +00:00
Charles Kerr
8d37a2601e
remove unused functions tr_ioRemoveResume() and fastResumeRemove()
2007-07-10 00:33:48 +00:00
Charles Kerr
9c73ecbf63
more assertion tests to tr_peerGotBlockFromUs() and tr_peerSentBlockToUs() to smoke out any remaining spurious ul/dl bytecounts
2007-07-09 23:27:57 +00:00
Charles Kerr
bcb3cf99ab
Revert version back to 079 as per BentMyWookie's suggestion
2007-07-09 23:09:00 +00:00
Charles Kerr
caf68deb8f
don't calculate swift largesse for torrents we're seeding.
2007-07-09 20:26:16 +00:00
Charles Kerr
b79beeff66
clean up #includes a bit.
2007-07-09 20:10:42 +00:00
Charles Kerr
34b4d0b7f9
fix r2306 double-free crash reported by Gimp_, webaake
2007-07-09 16:30:20 +00:00
Charles Kerr
3a4a0053ca
give the nightlies a peer id of 0079, to differentiate between the previous stable release (0072) and the next one (0080)
2007-07-09 05:40:35 +00:00
Charles Kerr
8fd06f3687
fix values for tr_cpLeftUntilComplete(), which were slightly off. (TooMuchTime)
2007-07-09 05:20:23 +00:00
Charles Kerr
08f787291a
remove the "peer is asking for too many blocks!" warning reported by Gimp_ by changing from a fixed-size array to a linked lists of incoming requests
2007-07-09 04:37:16 +00:00
Charles Kerr
b1ab3968e7
add Transmission's SVN version number to the id string we send the tracker
2007-07-09 04:34:54 +00:00
Charles Kerr
26660b0594
fix broken rate control.
2007-07-07 04:13:13 +00:00
Charles Kerr
a62302d709
Better handling of malformed bencoded strings. Thanks to cluthi81 for reporting this.
2007-07-06 20:43:17 +00:00
Charles Kerr
73af49bd08
don't crash when creating a single-file torrent of a zero-byte file. Reported by BentMyWookie.
2007-07-06 18:24:54 +00:00
Charles Kerr
d8a6dd1e28
fix inout.c read/write mode bug.
2007-07-06 17:19:34 +00:00
Charles Kerr
a166914a27
fix endgame bugs
2007-07-06 16:17:37 +00:00
Charles Kerr
3fda85725c
fix peer memory leak.
2007-07-06 15:51:06 +00:00
Eric Petit
981ede4d4b
Fixes a typo that caused us to reject all incoming connections
2007-07-04 15:04:05 +00:00
Charles Kerr
18aa394019
when creating a torrent, initialize its cpStatus field before passing it to the torrent's worker thread
2007-07-02 01:29:05 +00:00
Charles Kerr
bfee506ff4
Move the initial fastresume check into the thread that creates the torrent, rather than in the torrent's worker thread
2007-07-01 19:10:14 +00:00
Charles Kerr
432c26d353
Fix makemeta infinite loop reported by BentMyWookie
2007-07-01 14:04:18 +00:00
Charles Kerr
0fb5d03514
d'oh! openssl has rc4 already.
2007-07-01 12:09:43 +00:00
Charles Kerr
e77a18c882
make the "Error while parsing bencoded data" more helpful by showing the bad bencoded data. (though the string might be very long...)
2007-07-01 02:54:37 +00:00
Charles Kerr
58f89cdc77
replace the unhelpful error message "error: insufficient resources" with more descriptive cases
2007-07-01 01:50:14 +00:00
Charles Kerr
ed4e789b97
Silence the "Too many requests!" error that's not really an error
2007-06-30 22:47:59 +00:00
Charles Kerr
3b1597789e
fix r2252 copy-and-paste bug. Thanks BentMyWookie
2007-06-30 21:39:03 +00:00
Charles Kerr
4784289921
fix bug that caused libtransmission to think private torrents were public.
2007-06-30 21:29:49 +00:00
Charles Kerr
c58013c048
don't count too many bytes in the last block in tr_cpDownloadedValid(), tr_cpLeftUntilDone(), tr_cpLeftUntilComplete(). Very minor speedups in tr_bitfieldHas(), tr_bitfieldAdd(), tr_bitfieldRem().
2007-06-30 21:11:17 +00:00
Charles Kerr
bacc2dc445
I wonder what this is for.
2007-06-30 19:46:41 +00:00
Charles Kerr
b6819d6a12
fix r2247 oops
2007-06-30 15:16:08 +00:00
Charles Kerr
3e0cac55fd
(1) check a torrent's `fast resume' state as soon as it's added. (2) in gtk, show % done even when torrent is stopped
2007-06-30 13:53:10 +00:00
Charles Kerr
6c6732ed39
make tr_torrentInfo() a const function
2007-06-30 13:36:58 +00:00
Charles Kerr
ec12220404
make decrementing the torrent count the last thing we do when destroying a torrent.
2007-06-30 13:19:57 +00:00
Charles Kerr
05ca8403c6
* make tr_cpLeftUntilDone() slightly more accurate
...
* simplify completion code a little
2007-06-30 12:54:26 +00:00
Charles Kerr
2b1cf88ea9
fix crash reported by persept
2007-06-30 12:46:45 +00:00
Charles Kerr
781c557e52
use tr_new(), not g_new(). I've been hacking in glib too long
2007-06-29 17:29:02 +00:00
Charles Kerr
59388ed0ba
fix some ugliness from last night's hackfest
2007-06-29 17:24:14 +00:00
Charles Kerr
3a73f6790e
Fix endgame bug that caused the last 2-3% to drag out forever in recent nightlies. Thanks SoftwareElves
2007-06-29 06:24:55 +00:00
Charles Kerr
ab191885b5
revert one of last checkin's changes to better handle low peer situations. Thanks to SoftwareElves for the helpful explanation.
2007-06-29 06:03:54 +00:00
Charles Kerr
f0950d7390
lots of performance improvements. fun!
...
* dynamically resize the request queue on a per-peer basis based on its speed
* fix a huge bug that sabotaged the `swift' performance
* on startup, unchoke peers much sooner
* bump MAX_PEERS and PERCENT_PEER_WANTED
* do a better job of estimating speed on torrents less than 30 seconds old.
* getting an unrecognized extension ID, ignore it instead of stopping the torrent.
2007-06-29 05:45:17 +00:00
Charles Kerr
9b65364dcc
fix divide by zero bug in makemeta code, calculating number of pieces for a zero-sized file. (SoftwareElves)
2007-06-29 02:53:12 +00:00
Charles Kerr
3d7f38fa68
get the bencoded text compliant with the bittorrent spec w.r.t. dictionaries: "keys must be strings and appear in sorted order (sorted as raw strings, not alphanumerics)."
2007-06-29 02:27:00 +00:00
Josh Elsasser
a09a9c9157
Add client/server name to IPC version handshake.
2007-06-29 02:21:29 +00:00
Charles Kerr
6890359001
Make tr_torrentParseHash() public
2007-06-28 23:35:02 +00:00
Charles Kerr
73ee59a21f
* (libT) stopped torrents shouldn't use CPU cycles.
...
* (gtk) if a torrent is stopped when you exit, keep it stopped when restarting.
2007-06-28 17:43:53 +00:00
Charles Kerr
37234a3e34
Make tr_trackerAnnouncePulse() just return safely if there's no tracker initialized.
2007-06-28 04:28:23 +00:00
Charles Kerr
81dfe09b5e
make it safe to pass a bzero()ed struct into tr_metainfoFree()
2007-06-28 02:02:30 +00:00
Charles Kerr
831cd4a3da
better documentation on tr_torrentParse()'s behavior
2007-06-28 01:20:10 +00:00
Charles Kerr
8aa002b25e
* fix memory leak when adding torrents.
...
* zero out tr_torrentParse()'s tr_info_t before filling it
2007-06-28 01:12:16 +00:00
Charles Kerr
ae40410b4e
Fix tr_getComplete() and tr_getDone() bug reported by BentMyWookie
2007-06-28 00:09:59 +00:00
Charles Kerr
995c1cdbb1
fix r2210 oops
2007-06-28 00:04:42 +00:00
Charles Kerr
63fce9cf06
simplify tr_torrentParse() based on BWM's feedback
2007-06-27 23:22:09 +00:00
Charles Kerr
8e401729cd
Modified tr_torrentCanAdd() to give the new functionality BMW suggests
2007-06-27 14:54:31 +00:00
Charles Kerr
47a5ff4120
add tr_torrentCanAdd() as per BentMyWookie's request... clear tracker error string when restarting... fix r2202 "completed" announce bug.
2007-06-27 05:14:38 +00:00
Charles Kerr
7e09d157cd
Thread safety improvements. Also, stopping/starting/rechecking/etc. torrents no longer blocks the calling thread. Since this a big commit, it will probably create some short-term pain via new bugs.
2007-06-26 18:45:03 +00:00
Charles Kerr
21cf51e3f7
Add tr_stat_t.downloadedValid hook to IPC for Gimp_
2007-06-26 17:52:45 +00:00
Charles Kerr
6011450518
building up our threading tools: implement RW locks
2007-06-25 21:52:18 +00:00
Charles Kerr
9d139eefe4
possible fix for the -0.0 percent done bug
2007-06-23 02:24:03 +00:00
Charles Kerr
ab85deaf51
add color-coded lines to the gtk debug window -- info is black, debug is grey, errors are red...
2007-06-22 20:59:23 +00:00
Charles Kerr
5401979ffa
misc cleanup.. ansification; fix my own typos, etc...
2007-06-22 04:30:39 +00:00
Charles Kerr
e087ac395a
Maybe fix the bug of progress-for-done not including non-checked files even if they're finished
2007-06-22 00:44:26 +00:00
Charles Kerr
e161544761
adding experimental implementation of Tamilmani's `Swift' tit-for-tat algorithm for testing. To tweak or disable, change the values around line 50 of libtransmission/peer.c
2007-06-21 14:47:26 +00:00
Charles Kerr
bda9067ee7
more improvements to makemeta's piece size heuristics (SoftwareElves & charles_)
2007-06-19 16:36:15 +00:00
Charles Kerr
d4e1c19e32
better algorithm to decide on a good piece size. (SoftwareElves & charles_)
2007-06-19 06:01:30 +00:00
Charles Kerr
5128d0a434
fix terribly nasty bencode corruption bug from r2024 regarding the sorting of dictionary keys in tr_bencDictAdd(). this corrupts all the pointers that are already floating out there to existing values in the dictionary... if BitTornado really needs these to be sorted, then we should sort a temporary copy in tr_bencSave(), not here in our internal structures.
2007-06-19 03:01:57 +00:00
Charles Kerr
64ce2edbfb
* makemeta: don't add dotfiles to the torrents
...
* bencode: trying to chase down a memory leak
2007-06-19 01:49:56 +00:00
Charles Kerr
4eea50e991
ugly code removal: we were calling stat() three times on each file! (BMW: builder struct changed slightly... this shouldn't affect the mac client but you might want to recompile to confirm)
2007-06-19 00:08:39 +00:00
Mitchell Livingston
a4d5dfa328
avoid ridiculously rate divide-by-0
2007-06-19 00:08:06 +00:00
Charles Kerr
9791bb6f22
better error message (BigBossman)
2007-06-18 21:03:10 +00:00
Charles Kerr
64c21325e8
make the torrent file parser errors more useful. (John_Clay)
2007-06-18 20:56:04 +00:00
Charles Kerr
7afba516ff
fix platform.c oops reported by BigBossman
2007-06-18 20:36:25 +00:00
Charles Kerr
06e761d950
* fix error checking large files reported by Gimp_
...
* portability changes to pathname/filename building
* small gratuitous changes
2007-06-18 19:39:52 +00:00
Charles Kerr
932438eba5
Fix very large file error reported by Gimp_
2007-06-18 05:05:16 +00:00
Mitchell Livingston
0256f4616d
Merge file selection and torrent creation into the main branch.
...
The new code for these features is under a new license.
2007-06-18 03:40:41 +00:00
Eric Petit
1636fc70d2
BeOS fixes
2007-06-14 11:41:09 +00:00
Josh Elsasser
cf6994f559
Fix upnp verbose logging to show outgoing http requests.
2007-06-10 23:12:43 +00:00