@@ -300,19 +300,20 @@ set extfiletail $currpkginfo(extfile) set workdir [file join $dstdir package name $pkg ver $ver arch $arch] set regfile [file join $workdir file] set extfile [file join $workdir $extfiletail] + + if {[file exists $extfile] && !$force} { + continue + } + catch { file mkdir $workdir } if {$multifile} { - if {[file exists $extfile] && !$force} { - continue - } - if {[catch { cd $pkgdir file delete -- $extfile exec zip -r $extfile . -x build.log @@ -502,12 +503,14 @@ foreach pkgdata [lsort -dictionary [array names pkginfo]] { unset -nocomplain entity lappend entity entity package for {set endidx 0} {$endidx < [llength $entfields]} {incr endidx} { - lappend entity [lindex $entfields $endidx] - lappend entity [lindex $pkgdata $endidx] + set enttype [lindex $entfields $endidx] + set entval [lindex $pkgdata $endidx] + lappend entity $enttype + lappend entity $entval if {[lsearch -exact $seen_entities $entity] != -1} { continue } lappend seen_entities $entity