Don't try to return a list if there is none
continuous-integration/drone/pr Build is passing Details

This commit is contained in:
kolaente 2021-01-16 14:26:04 +01:00
parent e16c5f72ca
commit 7e1d9c6caf
Signed by: konrad
GPG Key ID: F40E70337AB24C9B
1 changed files with 9 additions and 0 deletions

View File

@ -397,6 +397,11 @@ func (vlra *VikunjaListResourceAdapter) CalculateEtag() string {
if vlra.task != nil {
return `"` + strconv.FormatInt(vlra.task.ID, 10) + `-` + strconv.FormatInt(vlra.task.Updated.Unix(), 10) + `"`
}
if vlra.list == nil {
return ""
}
// This also returns the etag of the list, and not of the task,
// which becomes problematic because the client uses this etag (= the one from the list) to make
// Requests to update a task. These do not match and thus updating a task fails.
@ -439,6 +444,10 @@ func (vcls *VikunjaCaldavListStorage) getListRessource(isCollection bool) (rr Vi
s := db.NewSession()
defer s.Close()
if vcls.list == nil {
return
}
can, _, err := vcls.list.CanRead(s, vcls.user)
if err != nil {
_ = s.Rollback()