1
0
Fork 0
mirror of https://github.com/transmission/transmission synced 2024-12-25 01:03:01 +00:00

(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.
This commit is contained in:
Jordan Lee 2011-02-03 17:37:53 +00:00
parent ca55bca4fa
commit 11d60307cf

View file

@ -153,7 +153,7 @@ watchdir_update_impl( dtr_watchdir * w )
#define WATCHDIR_POLL_INTERVAL_SECS 10 #define WATCHDIR_POLL_INTERVAL_SECS 10
#define FILE_DELIMITER '\0' #define FILE_DELIMITER '\t'
static void static void
watchdir_new_impl( dtr_watchdir * w UNUSED ) watchdir_new_impl( dtr_watchdir * w UNUSED )