serve restic: Return empty list for non-existing dirs

This commit is contained in:
Alexander Neumann
2018-03-11 14:48:43 +00:00
committed by Nick Craig-Wood
parent d073efdc6c
commit f832433fa5
+8 -3
View File
@@ -16,6 +16,7 @@ import (
"github.com/ncw/rclone/cmd/serve/httplib"
"github.com/ncw/rclone/cmd/serve/httplib/httpflags"
"github.com/ncw/rclone/fs"
"github.com/ncw/rclone/fs/fserrors"
"github.com/ncw/rclone/fs/object"
"github.com/ncw/rclone/fs/operations"
"github.com/ncw/rclone/fs/walk"
@@ -343,10 +344,14 @@ func (s *server) listObjects(w http.ResponseWriter, r *http.Request, remote stri
}
return err
})
if err != nil {
fs.Errorf(remote, "list failed: %v", err)
http.Error(w, http.StatusText(http.StatusNotFound), http.StatusNotFound)
return
_, err = fserrors.Cause(err)
if err != fs.ErrorDirNotFound {
fs.Errorf(remote, "list failed: %#v %T", err, err)
http.Error(w, http.StatusText(http.StatusNotFound), http.StatusNotFound)
return
}
}
data, err := json.Marshal(ls)