diff options
author | Michał Masłowski <mtjm@mtjm.eu> | 2013-02-10 11:32:41 +0100 |
---|---|---|
committer | Michał Masłowski <mtjm@mtjm.eu> | 2013-02-10 11:32:41 +0100 |
commit | bdf817c3549ba377334deb1161de703579670d62 (patch) | |
tree | c1b80c05c917cda2619e267049978f971bdad169 /extra/hefur/Check-that-added-torrents-from-the-disk-are-still-on.patch | |
parent | df609724f30aaccfb05d9fb73f68e7a37118f2f8 (diff) | |
parent | 1bb2648cde916ac27d3dd75d7b64a4ddc89787b7 (diff) |
Merge branch 'master' of ssh://parabolagnulinux.org:1863/home/parabola/abslibre-pre-mips64el
Conflicts:
community/cdemu-client/PKGBUILD
community/dcron/PKGBUILD
community/freevo/PKGBUILD
community/gmerlin-avdecoder/PKGBUILD
community/hacburn/PKGBUILD
community/htmldoc/PKGBUILD
community/ibus-table/PKGBUILD
community/iksemel/PKGBUILD
community/isomaster/PKGBUILD
community/libmatio/PKGBUILD
community/libtlen/PKGBUILD
community/luarocks/PKGBUILD
community/lxde-common/PKGBUILD
community/multipath-tools/PKGBUILD
community/nvclock/PKGBUILD
community/pam-krb5/PKGBUILD
community/pidgin-musictracker/PKGBUILD
community/pkgfile/PKGBUILD
community/pkgtools/PKGBUILD
community/print-manager/PKGBUILD
community/python-pyro/PKGBUILD
community/python-pyxmpp/PKGBUILD
community/python2-simplejson/PKGBUILD
community/rsnapshot/PKGBUILD
community/setconf/PKGBUILD
community/tagpy/PKGBUILD
community/terminator/PKGBUILD
community/udunits/PKGBUILD
community/vlock/PKGBUILD
community/winefish/PKGBUILD
core/nss-myhostname/PKGBUILD
extra/avfs/PKGBUILD
extra/bmp-musepack/PKGBUILD
extra/bmp-wma/PKGBUILD
extra/bochs/PKGBUILD
extra/botan/PKGBUILD
extra/cdargs/PKGBUILD
extra/cx_freeze/PKGBUILD
extra/dcfldd/PKGBUILD
extra/devilspie/PKGBUILD
extra/emelfm2/PKGBUILD
extra/evilwm/PKGBUILD
extra/fssos-nsvs/PKGBUILD
extra/gimp-dbp/PKGBUILD
extra/gimp-gap/PKGBUILD
extra/gimp-ufraw/PKGBUILD
extra/gmpc/PKGBUILD
extra/gtkpod/PKGBUILD
extra/hercules/PKGBUILD
extra/herqq/PKGBUILD
extra/hydrogen/PKGBUILD
extra/kdegames/PKGBUILD
extra/kradio/PKGBUILD
extra/kshutdown/PKGBUILD
extra/libmusicbrainz4/PKGBUILD
extra/mahjong/PKGBUILD
extra/mcrypt/PKGBUILD
extra/monica/PKGBUILD
extra/mpck/PKGBUILD
extra/mrtg/PKGBUILD
extra/nicotine/PKGBUILD
extra/normalize/PKGBUILD
extra/oprofile/PKGBUILD
extra/perl-event/PKGBUILD
extra/perl-unicode-string/PKGBUILD
extra/pidgin-encryption/PKGBUILD
extra/proftpd/PKGBUILD
extra/pymad/PKGBUILD
extra/qiv/PKGBUILD
extra/quodlibet/PKGBUILD
extra/ratpoison/PKGBUILD
extra/rox/PKGBUILD
extra/scrot/PKGBUILD
extra/stardict/PKGBUILD
extra/terminal/PKGBUILD
extra/usbview/PKGBUILD
extra/xdelta/PKGBUILD
extra/xdelta3/PKGBUILD
extra/xorg-xlsfonts/PKGBUILD
extra/zile/PKGBUILD
mozilla-testing/iceweasel-libre/mozconfig
mozilla-testing/iceweasel-libre/vendor.js
social/tokyocabinet/PKGBUILD
~fauno/notmuch/PKGBUILD
~mtjm/thinkfan/PKGBUILD
~mtjm/zbar/PKGBUILD
Diffstat (limited to 'extra/hefur/Check-that-added-torrents-from-the-disk-are-still-on.patch')
-rw-r--r-- | extra/hefur/Check-that-added-torrents-from-the-disk-are-still-on.patch | 93 |
1 files changed, 0 insertions, 93 deletions
diff --git a/extra/hefur/Check-that-added-torrents-from-the-disk-are-still-on.patch b/extra/hefur/Check-that-added-torrents-from-the-disk-are-still-on.patch deleted file mode 100644 index 8ad67ee74..000000000 --- a/extra/hefur/Check-that-added-torrents-from-the-disk-are-still-on.patch +++ /dev/null @@ -1,93 +0,0 @@ -From dbd00cfc3805b6f1ff794f7de0b52b1a7893401f Mon Sep 17 00:00:00 2001 -From: Alexandre Bique <bique.alexandre@gmail.com> -Date: Thu, 15 Nov 2012 20:43:41 +0100 -Subject: [PATCH 07/12] Check that added torrents from the disk are still on - the disk. -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - ---- - hefur/fs-tree-white-list.cc | 20 ++++++++++++++++++++ - hefur/fs-tree-white-list.hh | 1 + - hefur/torrent-db.hh | 4 +++- - 3 files changed, 24 insertions(+), 1 deletion(-) - -diff --git a/hefur/fs-tree-white-list.cc b/hefur/fs-tree-white-list.cc -index f493e95..61714d0 100644 ---- a/hefur/fs-tree-white-list.cc -+++ b/hefur/fs-tree-white-list.cc -@@ -54,10 +54,30 @@ namespace hefur - } - - void -+ FsTreeWhiteList::check() -+ { -+ std::vector<m::StringRef> keys; -+ auto db = Hefur::instance().torrentDb(); -+ m::SharedMutex::Locker locker(db->torrents_lock_); -+ db->torrents_.foreach([this, &keys] (Torrent::Ptr torrent) { -+ if (::strncmp(torrent->path().c_str(), root_.c_str(), root_.size())) -+ return; -+ -+ struct ::stat st; -+ if (::stat(torrent->path().c_str(), &st) && errno == ENOENT) -+ keys.push_back(torrent->key()); -+ }); -+ -+ for (auto it = keys.begin(); it != keys.end(); ++it) -+ db->torrents_.erase(*it); -+ } -+ -+ void - FsTreeWhiteList::loopScan() - { - do { - scan(); -+ check(); - } while (!stop_.timedWait(m::time() + rescan_interval_)); - } - } -diff --git a/hefur/fs-tree-white-list.hh b/hefur/fs-tree-white-list.hh -index c32bcd4..643fb78 100644 ---- a/hefur/fs-tree-white-list.hh -+++ b/hefur/fs-tree-white-list.hh -@@ -30,6 +30,7 @@ namespace hefur - * When a .torrent is found, call TorrentDb::addTorrent(). - */ - void scan(); -+ void check(); - - private: - /** -diff --git a/hefur/torrent-db.hh b/hefur/torrent-db.hh -index a1e5d38..e25ed33 100644 ---- a/hefur/torrent-db.hh -+++ b/hefur/torrent-db.hh -@@ -17,6 +17,7 @@ namespace hefur - { - class StatHandler; - class PeersHandler; -+ class FsTreeWhiteList; - - /** - * This is the "in memory" torrent database. -@@ -63,6 +64,7 @@ namespace hefur - friend class StatHandler; - friend class PeersHandler; - friend class FileHandler; -+ friend class FsTreeWhiteList; - - /** helper to use torrent->key() as a key for the trie */ - static inline m::StringRef torrentKey(Torrent::Ptr torrent) { -@@ -77,7 +79,7 @@ namespace hefur - m::Future<bool> cleanup_stop_; - m::Thread cleanup_thread_; - m::SharedMutex torrents_lock_; -- torrents_type torrents_; -+ torrents_type torrents_; - }; - } - --- -1.8.0.1 - |