Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Use FileIsDirectory everywhere to support kits. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
4aeafb1c4ee08063fcd60d010a39ea10 |
User & Date: | peter 2005-09-28 21:09:04.000 |
Context
2005-09-28
| ||
21:20 | Support code coverage and stubs. check-in: 5a97853587 user: peter tags: trunk | |
21:09 | Use FileIsDirectory everywhere to support kits. check-in: 4aeafb1c4e user: peter tags: trunk | |
21:07 | Detect kits and automatically mount them. check-in: ab853f4298 user: peter tags: trunk | |
Changes
Changes to src/dirdiff.tcl.
︙ | ︙ | |||
47 48 49 50 51 52 53 | return 0 } if {[catch {file stat $file2 stat2}]} { return 0 } # Same type? | | | | 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 | return 0 } if {[catch {file stat $file2 stat2}]} { return 0 } # Same type? if {[FileIsDirectory $file1] != [FileIsDirectory $file2]} { return 0 } # If contents is not checked, same size is enough to be equal if {$stat1(size) == $stat2(size) && $Pref(comparelevel) == 0} { return 1 } # Different size is enough when doing binary compare if {$stat1(size) != $stat2(size) && $Pref(comparelevel) eq "1b"} { return 0 } # Same size and time is always considered equal if {$stat1(size) == $stat2(size) && $stat1(mtime) == $stat2(mtime)} { return 1 } # Don't check further if contents should not be checked if {$Pref(comparelevel) == 0} { return 0 } # Don't check further if any is a directory if {[FileIsDirectory $file1] || [FileIsDirectory $file2]} { return 0 } set ignorekey $Pref(dir,ignorekey) switch $Pref(comparelevel) { 1b - 1 { # Check contents internally |
︙ | ︙ | |||
137 138 139 140 141 142 143 | # The values in infoFiles are: # 1 = noLeft, 2 = noRight, 4 = left is dir, 8 = right is dir, 16 = diff proc ListFiles {df1 df2 diff level} { global dirdiff Pref # Optionally do not list directories. if {$Pref(nodir)} { | | | | 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 | # The values in infoFiles are: # 1 = noLeft, 2 = noRight, 4 = left is dir, 8 = right is dir, 16 = diff proc ListFiles {df1 df2 diff level} { global dirdiff Pref # Optionally do not list directories. if {$Pref(nodir)} { if {$df1 != "" && [FileIsDirectory $df1] && \ $df2 != "" && [FileIsDirectory $df2] } { return } } lappend dirdiff(leftFiles) $df1 lappend dirdiff(rightFiles) $df2 set info [expr {$diff? 16 : 0}] |
︙ | ︙ | |||
163 164 165 166 167 168 169 | } if {$df2 != ""} { set f2 [file split $df2] set i [expr {[llength $f2] - $level - 1}] set f2 [eval file join [lrange $f2 $i end]] } | | | | 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 | } if {$df2 != ""} { set f2 [file split $df2] set i [expr {[llength $f2] - $level - 1}] set f2 [eval file join [lrange $f2 $i end]] } if {[FileIsDirectory $df1]} { append f1 / incr info 4 } if {[FileIsDirectory $df2]} { append f2 / incr info 8 } set maptag [expr {$diff ? "change" : ""}] if {$df1 eq ""} { set tag2 new2 |
︙ | ︙ | |||
258 259 260 261 262 263 264 | if {$p1 < $len1 && $p2 < $len2} { set f1 [lindex $files1 $p1] set df1 [file join $dir1 $f1] set f2 [lindex $files2 $p2] set df2 [file join $dir2 $f2] set apa [FStrCmp $f1 $f2] if {$apa == 0} { | | | | | 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 | if {$p1 < $len1 && $p2 < $len2} { set f1 [lindex $files1 $p1] set df1 [file join $dir1 $f1] set f2 [lindex $files2 $p2] set df2 [file join $dir2 $f2] set apa [FStrCmp $f1 $f2] if {$apa == 0} { set apa [expr {- [FileIsDirectory $df1] \ + [FileIsDirectory $df2]}] } switch -- $apa { 0 { set diff [expr {![CompareFiles $df1 $df2]}] if {$diff || !$Pref(dir,onlydiffs)} { ListFiles $df1 $df2 $diff $level } if {[FileIsDirectory $df1] && [FileIsDirectory $df2] && \ $Pref(recursive) && [file tail $df1] != "CVS"} { CompareDirs $df1 $df2 [expr {$level + 1}] } incr p1 incr p2 } -1 { |
︙ | ︙ | |||
300 301 302 303 304 305 306 | } } } # Run the directory comparison proc doDirCompare {} { global dirdiff | | | | 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 | } } } # Run the directory comparison proc doDirCompare {} { global dirdiff if {![FileIsDirectory $dirdiff(leftDir)]} return if {![FileIsDirectory $dirdiff(rightDir)]} return set dirdiff(leftFiles) {} set dirdiff(rightFiles) {} set dirdiff(infoFiles) {} set dirdiff(leftMark) "" set dirdiff(rightMark) "" set tail1 [file tail $dirdiff(leftDir)] |
︙ | ︙ | |||
333 334 335 336 337 338 339 | # Pick a directory for compare proc BrowseDir {dirVar entryW} { global Pref upvar "#0" $dirVar dir set newdir $dir | | | 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 | # Pick a directory for compare proc BrowseDir {dirVar entryW} { global Pref upvar "#0" $dirVar dir set newdir $dir while {$newdir != "." && ![FileIsDirectory $newdir]} { set newdir [file dirname $newdir] } set newdir [tk_chooseDirectory -initialdir $newdir -title "Select Directory"] if {$newdir != ""} { set dir $newdir $entryW xview end } |
︙ | ︙ |