diff --git a/internal/restic/snapshot.go b/internal/restic/snapshot.go index 2eace5cfd..61467013a 100644 --- a/internal/restic/snapshot.go +++ b/internal/restic/snapshot.go @@ -30,14 +30,18 @@ type Snapshot struct { // NewSnapshot returns an initialized snapshot struct for the current user and // time. func NewSnapshot(paths []string, tags []string, hostname string, time time.Time) (*Snapshot, error) { - for i, path := range paths { - if p, err := filepath.Abs(path); err == nil { - paths[i] = p + absPaths := make([]string, 0, len(paths)) + for _, path := range paths { + p, err := filepath.Abs(path) + if err == nil { + absPaths = append(absPaths, p) + } else { + absPaths = append(absPaths, path) } } sn := &Snapshot{ - Paths: paths, + Paths: absPaths, Time: time, Tags: tags, Hostname: hostname,