]> granicus.if.org Git - transmission/log
transmission
13 years agoMake the initial DHT bootstrap more persistent.
Juliusz Chroboczek [Tue, 15 Feb 2011 19:10:56 +0000 (19:10 +0000)]
Make the initial DHT bootstrap more persistent.

We now try to contact the bootstrap nodes up to six times.
A better solution might be to reattempt bootstrap every half hour
or so.  This might be beneficial to people whose connectivity
changes while Transmission is running.

13 years ago(trunk libT) #3656 "endgame could be faster" -- fixed. Patch by harrydb.
Jordan Lee [Tue, 15 Feb 2011 16:04:56 +0000 (16:04 +0000)]
(trunk libT) #3656 "endgame could be faster" -- fixed. Patch by harrydb.

13 years ago(trunk gtk) #3866 "popup menu for file list manipulation" -- remove unused code in...
Jordan Lee [Tue, 15 Feb 2011 15:21:22 +0000 (15:21 +0000)]
(trunk gtk) #3866 "popup menu for file list manipulation" -- remove unused code in file-list.c

This code can be pulled back out of svn and readded if it's needed in the future.

13 years ago(trunk) make tr_torrentName() a public function.
Jordan Lee [Tue, 15 Feb 2011 15:18:51 +0000 (15:18 +0000)]
(trunk) make tr_torrentName() a public function.

This has been a private function in libtransmission for awhile now but it makes more sense as a public function.

13 years agoadjust the spacing between the "Add" and "Cancel" buttons in the Add windows
Mitchell Livingston [Sun, 13 Feb 2011 20:50:29 +0000 (20:50 +0000)]
adjust the spacing between the "Add" and "Cancel" buttons in the Add windows

13 years ago(trunk libT) #4016 "blocklists don't handle overlapping/unsorted rules" -- fixed.
Jordan Lee [Sun, 13 Feb 2011 16:14:31 +0000 (16:14 +0000)]
(trunk libT) #4016 "blocklists don't handle overlapping/unsorted rules" -- fixed.

13 years ago(trunk) #4022 "please update .gitignore" -- done.
Jordan Lee [Sun, 13 Feb 2011 16:04:54 +0000 (16:04 +0000)]
(trunk) #4022 "please update .gitignore" -- done.

13 years agorename "Clear Completed" to "Cleanup Completed"
Mitchell Livingston [Sun, 13 Feb 2011 03:25:06 +0000 (03:25 +0000)]
rename "Clear Completed" to "Cleanup Completed"

13 years agoremove selected transfers when removing completed transfers, removing through RPC...
Mitchell Livingston [Sun, 13 Feb 2011 02:14:21 +0000 (02:14 +0000)]
remove selected transfers when removing completed transfers, removing through RPC, etc. (whenever removing transfers that aren't the selected transfers)

13 years agoAdd option to remove completed transfers
Mitchell Livingston [Sun, 13 Feb 2011 02:02:13 +0000 (02:02 +0000)]
Add option to remove completed transfers

13 years ago(trunk gtk) #4012 "Cannot set individual seeding time in GTK+ client" -- fixed.
Jordan Lee [Sat, 12 Feb 2011 23:54:33 +0000 (23:54 +0000)]
(trunk gtk) #4012 "Cannot set individual seeding time in GTK+ client" -- fixed.

The code in gtk/details.c was still using the pre-release RPC key "seedInactiveLimit" when it should have been using "seedIdleLimit" instead.

13 years ago(trunk libT) rename "tr_ip_range" as "tr_ipv4_range" in blocklist.c
Jordan Lee [Sat, 12 Feb 2011 21:20:19 +0000 (21:20 +0000)]
(trunk libT) rename "tr_ip_range" as "tr_ipv4_range" in blocklist.c

13 years ago(trunk) #4019 "Minor patch, kill useless casts in transmission source." -- fixed...
Jordan Lee [Sat, 12 Feb 2011 17:27:47 +0000 (17:27 +0000)]
(trunk) #4019 "Minor patch, kill useless casts in transmission source." -- fixed. patch by jlouis

jlouis used Coccinelle to scan transmission's source for redundant code that casts a type to its own type.

13 years agopixel adjustment to the tracker add/remove button
Mitchell Livingston [Sat, 12 Feb 2011 05:30:51 +0000 (05:30 +0000)]
pixel adjustment to the tracker add/remove button

13 years agochange the add/remove tracker buttons in the inspector to the rounded rect style...
Mitchell Livingston [Sat, 12 Feb 2011 05:01:31 +0000 (05:01 +0000)]
change the add/remove tracker buttons in the inspector to the rounded rect style, and add tooltips

13 years agoadjust the pop up button style in the the inspector - options tab
Mitchell Livingston [Sat, 12 Feb 2011 04:39:50 +0000 (04:39 +0000)]
adjust the pop up button style in the the inspector - options tab

13 years agoincrease the width of the bandwidth limit fields in the inspector
Mitchell Livingston [Sat, 12 Feb 2011 04:05:28 +0000 (04:05 +0000)]
increase the width of the bandwidth limit fields in the inspector

13 years agocenter the "No Torrents Selected" in the inspector
Mitchell Livingston [Sat, 12 Feb 2011 03:53:23 +0000 (03:53 +0000)]
center the "No Torrents Selected" in the inspector

13 years agoinspector: update the displayed global seeding settings only when necessary; update...
Mitchell Livingston [Sat, 12 Feb 2011 03:28:36 +0000 (03:28 +0000)]
inspector: update the displayed global seeding settings only when necessary; update only the displayed global seeding settings instead of all the options

13 years ago#4017 display the global seeding settings in the inspector
Mitchell Livingston [Sat, 12 Feb 2011 03:13:14 +0000 (03:13 +0000)]
#4017 display the global seeding settings in the inspector

13 years agofix a warning
Mitchell Livingston [Sat, 12 Feb 2011 00:25:24 +0000 (00:25 +0000)]
fix a warning

13 years agofix a crash with the URL window, and memory leak with the URL window, and update...
Mitchell Livingston [Fri, 11 Feb 2011 03:17:36 +0000 (03:17 +0000)]
fix a crash with the URL window, and memory leak with the URL window, and update the "Open" button of the URL window when shown

13 years agomake the buttons in the URL window localizable
Mitchell Livingston [Fri, 11 Feb 2011 03:05:57 +0000 (03:05 +0000)]
make the buttons in the URL window localizable

13 years agoremember the URL sheet window size
Mitchell Livingston [Thu, 10 Feb 2011 01:16:26 +0000 (01:16 +0000)]
remember the URL sheet window size

13 years agoenable the URL sheet's add button when shown if text is already entered
Mitchell Livingston [Thu, 10 Feb 2011 01:03:21 +0000 (01:03 +0000)]
enable the URL sheet's add button when shown if text is already entered

13 years agoremember the text in the URL sheet
Mitchell Livingston [Thu, 10 Feb 2011 00:58:05 +0000 (00:58 +0000)]
remember the text in the URL sheet

13 years agomove the "open torrent URL" sheet into its own xib file
Mitchell Livingston [Thu, 10 Feb 2011 00:51:25 +0000 (00:51 +0000)]
move the "open torrent URL" sheet into its own xib file

13 years ago#3989 Menubar not translated in Dutch localisation
Mitchell Livingston [Wed, 9 Feb 2011 13:22:02 +0000 (13:22 +0000)]
#3989 Menubar not translated in Dutch localisation

13 years ago(trunk) improvement to r11864
Jordan Lee [Wed, 9 Feb 2011 06:10:01 +0000 (06:10 +0000)]
(trunk) improvement to r11864

Since the contents of getcwd() are undefined on error, explicitly terminate the buffer string if getcwd() fails.

13 years ago(trunk libt) silence a couple of identical compiler warnings: "ignoring return value...
Jordan Lee [Wed, 9 Feb 2011 05:42:52 +0000 (05:42 +0000)]
(trunk libt) silence a couple of identical compiler warnings: "ignoring return value of ‘getcwd’, declared with attribute warn_unused_result".

13 years ago(trunk libT) silence compiler warning in libtransmission/fdlimit.c: "ignoring return...
Jordan Lee [Wed, 9 Feb 2011 05:34:23 +0000 (05:34 +0000)]
(trunk libT) silence compiler warning in libtransmission/fdlimit.c: "ignoring return value of ‘ftruncate’, declared with attribute warn_unused_result"

13 years ago(trunk libT) fix gcc compiler warning in libtransmission/makemeta.c: "ignoring return...
Jordan Lee [Wed, 9 Feb 2011 05:16:37 +0000 (05:16 +0000)]
(trunk libT) fix gcc compiler warning in libtransmission/makemeta.c: "ignoring return value of ‘read’, declared with attribute warn_unused_result"

13 years ago(trunk gtk) msgwin.c: silence compiler warning "warning: ‘pinned_to_new’ may be used...
Jordan Lee [Wed, 9 Feb 2011 05:10:29 +0000 (05:10 +0000)]
(trunk gtk) msgwin.c: silence compiler warning "warning: ‘pinned_to_new’ may be used uninitialized in this function"

13 years ago#3696 Publish Web Interface via Wide-Area Bonjour (in addition to Link-Local)
Mitchell Livingston [Wed, 9 Feb 2011 03:06:05 +0000 (03:06 +0000)]
#3696 Publish Web Interface via Wide-Area Bonjour (in addition to Link-Local)

13 years agoformat the number of times opened
Mitchell Livingston [Wed, 9 Feb 2011 02:49:32 +0000 (02:49 +0000)]
format the number of times opened

13 years ago#4002 Update to JQuery 1.5
Mitchell Livingston [Wed, 9 Feb 2011 02:45:54 +0000 (02:45 +0000)]
#4002 Update to JQuery 1.5

13 years ago(trunk libT) fix compiler warning: "peer-io.h:282: warning: inlining failed in call...
Jordan Lee [Wed, 9 Feb 2011 02:35:16 +0000 (02:35 +0000)]
(trunk libT) fix compiler warning: "peer-io.h:282: warning: inlining failed in call to ‘evbuffer_add_uint8’: optimizing for size and code size would grow"

13 years ago(trunk libT) #3991 "connection encryption stopped working" -- silence minor compiler...
Jordan Lee [Wed, 9 Feb 2011 02:26:35 +0000 (02:26 +0000)]
(trunk libT) #3991 "connection encryption stopped working" -- silence minor compiler warning. patch by ijuxda.

13 years agobump to version 2.21+
Jordan Lee [Tue, 8 Feb 2011 21:07:15 +0000 (21:07 +0000)]
bump to version 2.21+

13 years ago(trunk) bump to 2.21 2.21
Jordan Lee [Tue, 8 Feb 2011 21:05:30 +0000 (21:05 +0000)]
(trunk) bump to 2.21

13 years ago(trunk libT) #3993 "Version (-V) option no longer outputs svn revision no." -- fixed.
Jordan Lee [Tue, 8 Feb 2011 04:17:33 +0000 (04:17 +0000)]
(trunk libT) #3993 "Version (-V) option no longer outputs svn revision no." -- fixed.

update-version-h.sh tries to use {{{svnversion}}} when possible. But when it's not, it looks through the "$Id:" lines in the source file comments and uses the largest version number it finds. The new files tr-dht.[ch] didn't have the line of its $Id: comment formatted in the way update-version-h.sh expected. tr-dht.[ch]'s $Id: line has been homogenized to be like everyone else's...

13 years agoadd the application type to Info.plist
Mitchell Livingston [Tue, 8 Feb 2011 02:02:09 +0000 (02:02 +0000)]
add the application type to Info.plist

13 years ago#3987 Display issue in the main window in the German localisation
Mitchell Livingston [Tue, 8 Feb 2011 01:26:35 +0000 (01:26 +0000)]
#3987 Display issue in the main window in the German localisation

13 years agoset the visibility priority for high and low priority menu items
Mitchell Livingston [Tue, 8 Feb 2011 01:08:30 +0000 (01:08 +0000)]
set the visibility priority for high and low priority menu items

13 years agohave miniupnp use the project's flags
Mitchell Livingston [Tue, 8 Feb 2011 00:41:01 +0000 (00:41 +0000)]
have miniupnp use the project's flags

13 years ago#3994 don't compile assert statements in Release mode
Mitchell Livingston [Tue, 8 Feb 2011 00:36:57 +0000 (00:36 +0000)]
#3994 don't compile assert statements in Release mode

13 years ago(libT) #3991 "Connection encryption stopped working" -- fixed.
Jordan Lee [Tue, 8 Feb 2011 00:31:50 +0000 (00:31 +0000)]
(libT) #3991 "Connection encryption stopped working" -- fixed.

This is a pretty straightfoward bug: the call to evbuffer_peek() should not have been wrapped in assert().

13 years ago(trunk gtk) refresh the translations again for 2.21
Jordan Lee [Tue, 8 Feb 2011 00:19:22 +0000 (00:19 +0000)]
(trunk gtk) refresh the translations again for 2.21

13 years ago(trunk libT) silence minor "unused function argument" compiler warning
Jordan Lee [Mon, 7 Feb 2011 23:09:36 +0000 (23:09 +0000)]
(trunk libT) silence minor "unused function argument" compiler warning

13 years ago(trunk qt) refresh the strings for transmission-qt 2.20; updated es translation from...
Jordan Lee [Mon, 7 Feb 2011 22:54:18 +0000 (22:54 +0000)]
(trunk qt) refresh the strings for transmission-qt 2.20; updated es translation from rb07 :)

13 years agobump version to 2.20+
Mitchell Livingston [Sun, 6 Feb 2011 20:25:53 +0000 (20:25 +0000)]
bump version to 2.20+

13 years agobump to 2.20 2.20
Jordan Lee [Sun, 6 Feb 2011 20:15:38 +0000 (20:15 +0000)]
bump to 2.20

13 years agoset 2.20 release date in NEWS
Mitchell Livingston [Sun, 6 Feb 2011 20:12:18 +0000 (20:12 +0000)]
set 2.20 release date in NEWS

13 years ago(trunk libT) #3975 "tr_bencToFile() contains unnecessary calls to stat() and unlink...
Jordan Lee [Sun, 6 Feb 2011 18:56:44 +0000 (18:56 +0000)]
(trunk libT) #3975 "tr_bencToFile() contains unnecessary calls to stat() and unlink()" -- fixed for win32.

remove() doesn't have the same behavior on Windows. On that platform, we should use MoveFileEx( oldpath, newpath, MOVEFILE_REPLACE_EXISTING )." Thanks to rb07 for testing & confirming the fix.

13 years ago(trunk gtk) #3866 "Popup menu for file list manipulation" -- removing from the 2...
Jordan Lee [Sun, 6 Feb 2011 18:50:35 +0000 (18:50 +0000)]
(trunk gtk) #3866 "Popup menu for file list manipulation" -- removing from the 2.20 milestone

Looking over the 2.20 tickets, this one keeps sticking out. A popup menu may be useful if the "delete files" ticket is accepted in 2.30, but for this release (2.20) it doesn't really add anything new. One lesson from the 2.1x cycle was that features are a harder to remove than to add. So I'm going to hold off on adding this feature until it has a clear raison d'être.

13 years agoupdate French localization for 2.2
Mitchell Livingston [Sun, 6 Feb 2011 18:07:32 +0000 (18:07 +0000)]
update French localization for 2.2

13 years ago#3675 handle trashing data over RPD in the Mac client
Mitchell Livingston [Sun, 6 Feb 2011 17:32:16 +0000 (17:32 +0000)]
#3675 handle trashing data over RPD in the Mac client

13 years ago(trunk) #3675 "Not all .part files are removed" -- handle trashing files via RPC.
Jordan Lee [Sun, 6 Feb 2011 17:30:46 +0000 (17:30 +0000)]
(trunk) #3675 "Not all .part files are removed" -- handle trashing files via RPC.

When libtransmission gets a "remove torrent" request from RPC, it tries to delegate the work. This is because the GTK+ and Mac clients don't want torrents disappearing in a different thread and causing possible thread issues. So the GTK+ and Mac clients get notification about this via libtransmission's RPC callback and remove the torrents themselves. Unfortunately, that notification doesn't include information about whether or not to delete local data.

This commit adds that information to the RPC callback so that the Mac and GTK+ clients will know whether or not to trash the local files when a third-party RPC client requests that at torrent and its files be deleted.

14 years ago(trunk libT) #3931 "'Announce is Queued' but doesn't get announced" -- remove the...
Jordan Lee [Sat, 5 Feb 2011 18:46:10 +0000 (18:46 +0000)]
(trunk libT) #3931 "'Announce is Queued' but doesn't get announced" -- remove the 'unresponsive tracker' penalty from torrents whose announce time has been reached.

The 'bad tracker' penalty was introduced in 2009 after a top tier trackers went down. Announces to it would hang, tying up an announce slot in libcurl for minutes at a time. If a user had enough torrents from that tracker, it could bottleneck all announce slots. The workaround was to deprioritize failing trackers so that they wouldn't obstruct other trackers.

Its implementation could be better, however. There are two parts:

  1. Deciding how frequently to retry unresponsive trackers

  2. Once an unresponsive tracker announce was ready to go, it would be bumped down the queue if other announces were ready too.

Part 2 probably contributes to #3931. If there are enough torrents loaded, there will always be good tracker announces that get pushed ahead of a bad one in the queue. Modifying 2's heuristics would be one option, but it seems simpler to remove it altogether now that getRetryInterval() grades more hashly for consecutive failures. Altering the retry interval also gives better visual feedback to users than Part 2 did.

This commit removes "Part 2" as described above.

14 years ago(trunk libT) announcer.c cleanup, part 1
Jordan Lee [Sat, 5 Feb 2011 16:45:06 +0000 (16:45 +0000)]
(trunk libT) announcer.c cleanup, part 1

Separating this commit into a few different stages. This one is superficial/readability changes, such as grouping related functions together.

14 years ago(trunk libT) #3980 "segfault when adding many torrents remotely" -- possible fix.
Jordan Lee [Sat, 5 Feb 2011 05:03:00 +0000 (05:03 +0000)]
(trunk libT) #3980 "segfault when adding many torrents remotely" -- possible fix.

gtk/main.c's onRPCChanged() is called from inside the libtransmission thread, yet it still made GTK+ calls to modify the GTK+ client's tr-core object when a torrent was added. This caused a race condition inside of the GTK+ internals. onRPCChanged() already knows to delegate work back to the GTK+ thread when a torrent is removed via RPC. This commit uses the same kind of mechanism to delegate work back to the GTK+ thread when a torrent is added via RPC.

14 years agobump to nightly peer-id
Jordan Lee [Sat, 5 Feb 2011 04:22:38 +0000 (04:22 +0000)]
bump to nightly peer-id

14 years agoupdate Dutch localization
Mitchell Livingston [Fri, 4 Feb 2011 13:22:45 +0000 (13:22 +0000)]
update Dutch localization

14 years ago(trunk libT) #3978 "Message window column sorting fails and triggers gtk warnings...
Jordan Lee [Fri, 4 Feb 2011 06:12:55 +0000 (06:12 +0000)]
(trunk libT) #3978 "Message window column sorting fails and triggers gtk warnings" -- fixed.

I'm not sure why sorting was in there in the first place; it doesn't make sense in a message log.. Disabling sorting fixes this bug.

14 years agobump to 2.20 beta 4 2.20b4
Jordan Lee [Fri, 4 Feb 2011 04:00:16 +0000 (04:00 +0000)]
bump to 2.20 beta 4

14 years ago(trunk libT) minor futzing: remove unnecessary "assert( tr_isTorrent( tor ) );" calls
Jordan Lee [Thu, 3 Feb 2011 22:53:02 +0000 (22:53 +0000)]
(trunk libT) minor futzing: remove unnecessary "assert( tr_isTorrent( tor ) );" calls

Remove these calls from private functions whose callers have already asserted the same thing.

14 years ago(trunk qt) in the "new torrent" dialog, have the "save to" and "source folder" file...
Jordan Lee [Thu, 3 Feb 2011 22:13:31 +0000 (22:13 +0000)]
(trunk qt) in the "new torrent" dialog, have the "save to" and "source folder" file dialogs be QFileDialog::DirectoryOnly rather than QFileDialog::Directory

14 years ago(trunk libT) #3967 "regression: transmission-daemon's non-inotify watchdir is broken...
Jordan Lee [Thu, 3 Feb 2011 17:37:53 +0000 (17:37 +0000)]
(trunk libT) #3967 "regression: transmission-daemon's non-inotify watchdir is broken in 2.20 betas" -- fixed.

When inotify isn't available, watch.c uses readdir() to look for new .torrent files. It keeps a list of old .torrent files internally so that it doesn't try to keep re-adding the same file. This list is stored in an evbuffer. As part of the libevent2 upgrade (#3836), r11594 changed how the buffer is searched by replacing the (deprecated) event_find() call with libevent2's evbuffer_search(). However the latter's semantics are different in that searching stops when '\0' is reached, so '\0' is no longer a good filename delimiter. Fixed by changing watch.c's internal delimiter from '\0' to '\t' ... so all those torrents with tabs in their filenames had better watch out.

14 years agoupdate Simplified Chinese localization for 2.2
Mitchell Livingston [Thu, 3 Feb 2011 12:36:30 +0000 (12:36 +0000)]
update Simplified Chinese localization for 2.2

14 years ago(trunk libT) now that bencode.c doesn't call stat() anymore, we can remove a couple...
Jordan Lee [Thu, 3 Feb 2011 06:19:54 +0000 (06:19 +0000)]
(trunk libT) now that bencode.c doesn't call stat() anymore, we can remove a couple of #includes

14 years ago(trunk libT) #3519 "Webseeds don't work" -- handle nonresponsive webseeds
Jordan Lee [Thu, 3 Feb 2011 04:17:48 +0000 (04:17 +0000)]
(trunk libT) #3519 "Webseeds don't work" -- handle nonresponsive webseeds

Don't keep trying to use nonresponsive webseeds or it will generate unnecessary network traffic and kill us during endgame.

14 years ago(trunk libT) #3975: "tr_bencToFile() contains unnecessary calls to stat() and unlink...
Jordan Lee [Thu, 3 Feb 2011 00:48:05 +0000 (00:48 +0000)]
(trunk libT) #3975: "tr_bencToFile() contains unnecessary calls to stat() and unlink()" -- fixed.

When saving a tr_benc object to disk at $dst, bencode.c saves it to a tmp file in the same directory as $dst, unlinks $dst if it exists, and then renames $tmp as $dst. This commit removes the middle step, which is unnecessary because rename() has guarantees about atomically overwriting $dst.

14 years ago(trunk libT) #3973 "JIT verification verifies fresh downloaded torrents" -- remove...
Jordan Lee [Wed, 2 Feb 2011 23:33:25 +0000 (23:33 +0000)]
(trunk libT) #3973 "JIT verification verifies fresh downloaded torrents" -- remove a debugging printf() statement that shouldn't have been checked in.

14 years ago(trunk libT) #3973 "JIT verification verifies fresh downloaded torrents" -- improveme...
Jordan Lee [Wed, 2 Feb 2011 23:29:17 +0000 (23:29 +0000)]
(trunk libT) #3973 "JIT verification verifies fresh downloaded torrents" -- improvement to r11813.

r11813 fixed the timestamp issue by fsync()ing files before close()ing them in tr_close_file(). This causes a little overhead as even read-only files cause a sync as their atimes are modified. Instead, we should call fsync() further back in the call chain in tr_fdFileClose() so that we can know to only sync torrent files that were opened with write access.

14 years ago(trunk libT) #3973 "JIT verification verifies fresh downloaded torrents" -- win32...
Jordan Lee [Wed, 2 Feb 2011 23:19:54 +0000 (23:19 +0000)]
(trunk libT) #3973 "JIT verification verifies fresh downloaded torrents" -- win32 portability fix for r11813.

fsync() doesn't exist on Windows. bencode had a private function, tr_fsync(), that is a portability wrapper around fsync() on *nix and _commit() on win32. Make this function package-visible, rather than private, so fdlimit.c can use it too.

14 years agoupdate European Portuguese for 2.2
Mitchell Livingston [Wed, 2 Feb 2011 22:55:13 +0000 (22:55 +0000)]
update European Portuguese for 2.2

14 years ago(trunk libT) #2955 "verify pieces only when necessary, or when the user requests...
Jordan Lee [Wed, 2 Feb 2011 21:17:16 +0000 (21:17 +0000)]
(trunk libT) #2955 "verify pieces only when necessary, or when the user requests it." -- improvements to .resume file

As pointed out by longinus00 and ijuxda, storing per-piece timestamps in the .resume file can involve a lot of overhead. This commit reduces the overhead by adding a couple of optimizations: (1) in cases where *all* or *none* of the files' pieces were checked after the file's mtime, we can safely fold all the pieces' mtimes into a single per-file mtime. (2) since unix time takes up a lot of space when rendered as a benc integer, find a common per-file "baseline" number, then store the pieces' timestamps as offsets from that number.  Also add documentation explaining this new format, and also better explaining the pre-2.20 progress format.

14 years ago(trunk libT) #3973 "JIT verification verifies freshly-downloaded torrents" -- test...
Jordan Lee [Wed, 2 Feb 2011 20:30:04 +0000 (20:30 +0000)]
(trunk libT) #3973 "JIT verification verifies freshly-downloaded torrents" -- test fix.

Files downloaded in Transmission 2.20 betas [1..3] forced each piece to be checked twice -- once on download, and once when uploading the piece for the first time. Older versions of Transmission didn't perform the latter check unless the file had changed after it was downloaded. This commit restores that behavior.

14 years ago(trunk libT) tweak the documentation on a couple of structs
Jordan Lee [Wed, 2 Feb 2011 17:15:41 +0000 (17:15 +0000)]
(trunk libT) tweak the documentation on a couple of structs

14 years ago(trunk libT) minor code cleanup to inout.c's readOrWriteBytes().
Jordan Lee [Wed, 2 Feb 2011 06:06:09 +0000 (06:06 +0000)]
(trunk libT) minor code cleanup to inout.c's readOrWriteBytes().

Use ijuxda's suggestion of making the fstat(fd) call dependent on (fd>=0) rather than (!err).

14 years ago(trunk libT) silence some unused variable warnings from gcc when building with -DNDEBUG
Jordan Lee [Wed, 2 Feb 2011 05:18:33 +0000 (05:18 +0000)]
(trunk libT) silence some unused variable warnings from gcc when building with -DNDEBUG

14 years ago(trunk daemon) #3775 "'-tall' no longer works for transmission-remote" -- fixed.
Jordan Lee [Wed, 2 Feb 2011 03:17:38 +0000 (03:17 +0000)]
(trunk daemon) #3775 "'-tall' no longer works for transmission-remote" -- fixed.

looks like this was broken in r10907 for #3368 in 2.00 when we added "-ta" as the short form of "--tracker-add". "-ta" seems to be conflicting with "-tall". This can be fixed by changing --tracker-add's short form.

14 years ago(trunk gtk) #3972 "Verify progress changes not displaying" -- fixed.
Jordan Lee [Wed, 2 Feb 2011 02:45:20 +0000 (02:45 +0000)]
(trunk gtk) #3972 "Verify progress changes not displaying" -- fixed.

make sure to call gtk_list_store_set() on rows matching torrents whose tr_stat.recheckProgress value has changed, triggering a row change event that causes the verify progress change to be displayed.

14 years ago(trivial) make the implementation of tr_torPieceCountBlocks(), tr_torPieceCountBytes...
Jordan Lee [Tue, 1 Feb 2011 21:32:03 +0000 (21:32 +0000)]
(trivial) make the implementation of tr_torPieceCountBlocks(), tr_torPieceCountBytes(), and tr_torBlockCountBytes() consistent.

14 years ago(trunk libT) #3956 "tr_bencFree() could be faster" -- fix memory error.
Jordan Lee [Tue, 1 Feb 2011 17:56:19 +0000 (17:56 +0000)]
(trunk libT) #3956 "tr_bencFree() could be faster" -- fix memory error.

#3956's r11780 has uncovered a longstanding memory error that occurs when tr_bencParse() fails to parse a dict and leaves a dangling key. This is fixed by cleaning up the key.

14 years ago(trunk gtk) #3817 "use the OS' proxy support" -- fix memory leaks in the GTK+ impleme...
Jordan Lee [Tue, 1 Feb 2011 17:46:42 +0000 (17:46 +0000)]
(trunk gtk) #3817 "use the OS' proxy support" -- fix memory leaks in the GTK+ implementation.

r11512 introduced a handful of memory leaks by not freeing the GConfValue objects after use.

14 years ago(trunk gtk) #3876 "Give filesize its own column in the Files tree" -- fix minor memor...
Jordan Lee [Tue, 1 Feb 2011 17:42:50 +0000 (17:42 +0000)]
(trunk gtk) #3876 "Give filesize its own column in the Files tree" -- fix minor memory leak introduced by r11642

r11642 allocated a pango font description with pango_font_description_copy() but never freed it.

14 years ago(trunk libT) #3836 "libevent 2 support" -- fix minor memory leak.
Jordan Lee [Tue, 1 Feb 2011 17:12:20 +0000 (17:12 +0000)]
(trunk libT) #3836 "libevent 2 support" -- fix minor memory leak.

tr_peerIoReconnect() was calling event_del() rather than event_free() on its io.event_read and io.event_write fields, causing those fields to be leaked. This behavior is new with libevent 2 support and doesn't affect transmission 2.1x or older.

14 years ago(trunk gtk) #3970 "tr_core_update() wastes CPU cycles by toggling the sort mode"...
Jordan Lee [Tue, 1 Feb 2011 01:45:41 +0000 (01:45 +0000)]
(trunk gtk) #3970 "tr_core_update() wastes CPU cycles by toggling the sort mode" -- fix minor r11799 regression.

Clearing the model on shutdown generated a warning because it used the wrong cast. Rather than fixing the cast, add tr_core_clear() for symmetry with tr_core_load().

14 years ago(trunk gtk) #3971 "favicons do not work for IP addresses" -- fixed.
Jordan Lee [Tue, 1 Feb 2011 01:38:58 +0000 (01:38 +0000)]
(trunk gtk) #3971 "favicons do not work for IP addresses" -- fixed.

gtr_get_host_from_url() wasn't written to handle dotted-quad or IPv6 address strings, but can handle them now.

14 years ago(trunk libT) #3959 "by default, disable prefetch for lightweight builds" -- fixed.
Jordan Lee [Mon, 31 Jan 2011 23:35:10 +0000 (23:35 +0000)]
(trunk libT) #3959 "by default, disable prefetch for lightweight builds" -- fixed.

User jusid reports prefetch causes load on his NMT to jump from <1 to 3-4. He requests a way to disable prefetch, and suggests that prefetch be disabled by default on lightweight builds.  This commit adds a new settings.json key, "prefetch-enabled", which defaults to "true" on standard builds and "false" when compiled with --enable-lightweight.

14 years ago(trunk gtk) #3970 "tr_core_update() wastes CPU cycles by toggling the sort mode"...
Jordan Lee [Mon, 31 Jan 2011 23:01:46 +0000 (23:01 +0000)]
(trunk gtk) #3970 "tr_core_update() wastes CPU cycles by toggling the sort mode" -- fixed.

Long description in #3970. Split tr_core's torrent GtkTreeModel into two models: one low-level unsorted one, and one proxy sorted one. That way we don't have to disable sorting before walking through the low-level one to sync the table's attributes with the tr_torrent and tr_stat.

14 years ago(trunk libT) #3969 "tr_base64_encode() has unnecessary overhead with linefeeds" ...
Jordan Lee [Mon, 31 Jan 2011 22:47:07 +0000 (22:47 +0000)]
(trunk libT) #3969 "tr_base64_encode() has unnecessary overhead with linefeeds" -- fixed.

Don't add linefeeds to base64-encoded data. We don't need it and it just increases the length of the string, which is typically sent over the network to an RPC client.

14 years ago(trunk libt) #3968 "tr_cpFileIsComplete could be faster" -- fixed.
Jordan Lee [Mon, 31 Jan 2011 16:43:37 +0000 (16:43 +0000)]
(trunk libt) #3968 "tr_cpFileIsComplete could be faster" -- fixed.

Rewriting this function as described in ticket #3968. This rewrite drops it from 1.77% of cpu use to 0.07%.

14 years agofix icon alignment in inspector tabs
Mitchell Livingston [Sun, 30 Jan 2011 21:34:46 +0000 (21:34 +0000)]
fix icon alignment in inspector tabs

14 years agoalways unlock focus when drawing the inspector buttons
Mitchell Livingston [Sun, 30 Jan 2011 19:34:38 +0000 (19:34 +0000)]
always unlock focus when drawing the inspector buttons

14 years agotweak inspector button drawing to account for black lines
Mitchell Livingston [Sun, 30 Jan 2011 19:32:40 +0000 (19:32 +0000)]
tweak inspector button drawing to account for black lines

14 years ago(trunk) update NEWS and bump version to 2.20 beta 3. 2.20b3
Jordan Lee [Sun, 30 Jan 2011 17:52:11 +0000 (17:52 +0000)]
(trunk) update NEWS and bump version to 2.20 beta 3.

14 years ago(trunk utils) #3964 "transmission-edit replace option cuts off strings" -- fixed.
Jordan Lee [Sun, 30 Jan 2011 16:40:11 +0000 (16:40 +0000)]
(trunk utils) #3964 "transmission-edit replace option cuts off strings" -- fixed.

The trailing text after the last substring match wasn't being retained.

14 years ago(trunk libT) #3931 "announce is queued" -- minor revision for uClibc compatibility
Jordan Lee [Sun, 30 Jan 2011 16:23:53 +0000 (16:23 +0000)]
(trunk libT) #3931 "announce is queued" -- minor revision for uClibc compatibility

jusid reports that powl() doesn't exist on uClibc, so getRetryInterval() needs to work without it. A simple left-bit shifting would be fine, but since we max out after a handful of cases, a switch statement seems slightly more readable than shifting or powl().