Fix issues with __bad__
This commit is contained in:
@@ -49,6 +49,7 @@ func (c CachedTorrent) copy() CachedTorrent {
|
|||||||
Torrent: c.Torrent,
|
Torrent: c.Torrent,
|
||||||
AddedOn: c.AddedOn,
|
AddedOn: c.AddedOn,
|
||||||
IsComplete: c.IsComplete,
|
IsComplete: c.IsComplete,
|
||||||
|
Bad: c.Bad,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -308,9 +309,6 @@ func (c *Cache) Sync() error {
|
|||||||
newTorrents := make([]*types.Torrent, 0)
|
newTorrents := make([]*types.Torrent, 0)
|
||||||
idStore := make(map[string]struct{}, totalTorrents)
|
idStore := make(map[string]struct{}, totalTorrents)
|
||||||
for _, t := range torrents {
|
for _, t := range torrents {
|
||||||
if _, exists := idStore[t.Id]; exists {
|
|
||||||
c.logger.Debug().Msgf("Torrent %s already exists in cache", t.Id)
|
|
||||||
}
|
|
||||||
idStore[t.Id] = struct{}{}
|
idStore[t.Id] = struct{}{}
|
||||||
if _, ok := cachedTorrents[t.Id]; !ok {
|
if _, ok := cachedTorrents[t.Id]; !ok {
|
||||||
newTorrents = append(newTorrents, t)
|
newTorrents = append(newTorrents, t)
|
||||||
|
|||||||
@@ -39,8 +39,8 @@ func (c *Cache) markAsFailedToReinsert(torrentId string) {
|
|||||||
// Remove the torrent from the directory if it has failed to reinsert, max retries are hardcoded to 5
|
// Remove the torrent from the directory if it has failed to reinsert, max retries are hardcoded to 5
|
||||||
if torrent, ok := c.torrents.getByID(torrentId); ok {
|
if torrent, ok := c.torrents.getByID(torrentId); ok {
|
||||||
torrent.Bad = true
|
torrent.Bad = true
|
||||||
c.setTorrent(torrent, func(torrent CachedTorrent) {
|
c.setTorrent(torrent, func(t CachedTorrent) {
|
||||||
c.listingDebouncer.Call(false)
|
c.RefreshListings(false)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -53,7 +53,7 @@ func (c *Cache) markAsSuccessfullyReinserted(torrentId string) {
|
|||||||
if torrent, ok := c.torrents.getByID(torrentId); ok {
|
if torrent, ok := c.torrents.getByID(torrentId); ok {
|
||||||
torrent.Bad = false
|
torrent.Bad = false
|
||||||
c.setTorrent(torrent, func(torrent CachedTorrent) {
|
c.setTorrent(torrent, func(torrent CachedTorrent) {
|
||||||
c.listingDebouncer.Call(false)
|
c.RefreshListings(false)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -182,6 +182,7 @@ func (tc *torrentCache) refreshListing() {
|
|||||||
}
|
}
|
||||||
tc.folderListingMu.Unlock()
|
tc.folderListingMu.Unlock()
|
||||||
}()
|
}()
|
||||||
|
wg.Done()
|
||||||
|
|
||||||
now := time.Now()
|
now := time.Now()
|
||||||
wg.Add(len(tc.directoriesFilters)) // for each directory filter
|
wg.Add(len(tc.directoriesFilters)) // for each directory filter
|
||||||
|
|||||||
@@ -269,7 +269,7 @@ func (h *Handler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
|||||||
LockSystem: webdav.NewMemLS(),
|
LockSystem: webdav.NewMemLS(),
|
||||||
Logger: func(r *http.Request, err error) {
|
Logger: func(r *http.Request, err error) {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
h.logger.Error().
|
h.logger.Trace().
|
||||||
Err(err).
|
Err(err).
|
||||||
Str("method", r.Method).
|
Str("method", r.Method).
|
||||||
Str("path", r.URL.Path).
|
Str("path", r.URL.Path).
|
||||||
|
|||||||
Reference in New Issue
Block a user