Last minute fixes

This commit is contained in:
Ben Sarmiento
2023-11-21 19:17:36 +01:00
parent 81d1629c8c
commit fa41c81082
4 changed files with 12 additions and 12 deletions

View File

@@ -64,7 +64,7 @@ jobs:
uses: actions/upload-artifact@v3
with:
name: compiled-binaries
path: compressed_artifacts/*.zip
path: compressed_artifacts/
release:
name: Release
@@ -82,6 +82,7 @@ jobs:
uses: actions/download-artifact@v3
with:
name: compiled-binaries
path: compressed_artifacts
- name: Create Release
id: create_release

View File

@@ -45,7 +45,7 @@ func HandlePropfindRequest(w http.ResponseWriter, r *http.Request, t *torrent.To
}
func handleListDirectories(w http.ResponseWriter, t *torrent.TorrentManager) error {
fmt.Fprint(w, "<?xml?><d:multistatus xmlns:d=\"DAV:\">")
fmt.Fprint(w, "<?xml version=\"1.0\" encoding=\"utf-8\"?><d:multistatus xmlns:d=\"DAV:\">")
// initial response is the directory itself
fmt.Fprint(w, dav.Directory("", ""))
@@ -66,7 +66,7 @@ func handleListTorrents(w http.ResponseWriter, requestPath string, t *torrent.To
return fmt.Errorf("cannot find directory %s", basePath)
}
fmt.Fprint(w, "<?xml?><d:multistatus xmlns:d=\"DAV:\">")
fmt.Fprint(w, "<?xml version=\"1.0\" encoding=\"utf-8\"?><d:multistatus xmlns:d=\"DAV:\">")
// initial response is the directory itself
fmt.Fprint(w, dav.Directory(basePath, ""))
@@ -99,7 +99,7 @@ func handleListFiles(w http.ResponseWriter, requestPath string, t *torrent.Torre
return fmt.Errorf("cannot find torrent %s", accessKey)
}
fmt.Fprint(w, "<?xml?><d:multistatus xmlns:d=\"DAV:\">")
fmt.Fprint(w, "<?xml version=\"1.0\" encoding=\"utf-8\"?><d:multistatus xmlns:d=\"DAV:\">")
// initial response is the directory itself
fmt.Fprint(w, dav.Directory(requestPath, tor.LatestAdded))

View File

@@ -339,13 +339,11 @@ func (t *TorrentManager) getMoreInfo(rdTorrent realdebrid.Torrent) *Torrent {
var err error
// file cache
torrentFromFile := t.readFromFile(rdTorrent.ID)
if torrentFromFile != nil && len(torrentFromFile.ID) > 0 && len(torrentFromFile.Links) == len(rdTorrent.Links) {
if (len(torrentFromFile.Links) > 0 && torrentFromFile.Links[0] == rdTorrent.Links[0]) || len(torrentFromFile.Links) == 0 {
// see if api data and file data still match
// then it means data is still usable
info = torrentFromFile
info.Progress = rdTorrent.Progress
}
if torrentFromFile != nil && len(torrentFromFile.ID) > 0 && len(torrentFromFile.Links) > 0 && len(torrentFromFile.Links) == len(rdTorrent.Links) && torrentFromFile.Links[0] == rdTorrent.Links[0] {
info = torrentFromFile
info.Progress = rdTorrent.Progress
} else {
torrentFromFile = nil
}
if info == nil {
info, err = t.api.GetTorrentInfo(rdTorrent.ID)
@@ -390,6 +388,7 @@ func (t *TorrentManager) getMoreInfo(rdTorrent realdebrid.Torrent) *Torrent {
for _, file := range selectedFiles {
torrent.SelectedFiles.Set(filepath.Base(file.Path), file)
}
if len(selectedFiles) > 0 && torrentFromFile == nil {
t.writeToFile(info) // only when there are selected files, else it's useless
}

View File

@@ -150,7 +150,7 @@ func (rd *RealDebrid) GetTorrentInfo(id string) (*TorrentInfo, error) {
return nil, err
}
rd.log.Debugf("Got info for torrent %s", id)
rd.log.Debugf("Got info for torrent %s (progress=%d%%)", id, response.Progress)
return &response, nil
}