Fix missing pathname when scanning for .ts files

Don't abort on safe_delete error
This commit is contained in:
prpr 2023-05-28 19:24:53 +01:00
parent c9100acf66
commit 39d18b4ff0
1 changed files with 6 additions and 7 deletions

View File

@ -22,12 +22,13 @@ proc ::expire::directory {dir} {
set entries [lsort \ set entries [lsort \
-command [lambda {a b} {upvar getter g; expr {[$g $a] - [$g $b]}}]\ -command [lambda {a b} {upvar getter g; expr {[$g $a] - [$g $b]}}]\
[lmap i [readdir -nocomplain $dir] { [lmap i [readdir -nocomplain $dir] {
set fname "$dir/$i"
if {[string match {*.hmt} $i]} { if {[string match {*.hmt} $i]} {
if {[file exists "[file rootname $i].ts"]} continue if {[file exists "[file rootname $fname].ts"]} continue
if {[catch {set ts [ts parse "$dir/$i" [ts exec "$dir/$i"]]}]}\ if {[catch {set ts [ts parse $fname [ts exec $fname]]}]}\
continue continue
} elseif {[string match {*.ts} $i]} { } elseif {[string match {*.ts} $i]} {
if {[catch {set ts [ts fetch "$dir/$i"]}]} continue if {[catch {set ts [ts fetch $fname]}]} continue
} else continue } else continue
if {$ts == 0} continue if {$ts == 0} continue
list $ts list $ts
@ -68,11 +69,9 @@ proc ::expire::directory {dir} {
} }
} }
log " Removing." log " Removing."
if {![safe_delete $file]} { if {[safe_delete $file]} {
log "Unknown error in safe_delete, aborting." 0 log " EXPIRE: removed $file" 0
break
} }
log " EXPIRE: removed $file" 0
::auto::recalcdir $dir ::auto::recalcdir $dir
incr num -1 incr num -1
} }