Files
acp/cleanup.go
2023-05-07 16:19:11 +08:00

28 lines
487 B
Go

package acp
import (
"context"
"fmt"
"os"
)
func (c *Copyer) cleanupJob(ctx context.Context, copyed <-chan *baseJob) {
for {
select {
case job, ok := <-copyed:
if !ok {
return
}
for _, name := range job.successTargets {
if err := os.Chtimes(name, job.modTime, job.modTime); err != nil {
c.reportError(job.path, name, fmt.Errorf("change info, chtimes fail, %w", err))
}
}
job.setStatus(jobStatusFinished)
case <-ctx.Done():
return
}
}
}