File tree Expand file tree Collapse file tree 1 file changed +22
-15
lines changed
Expand file tree Collapse file tree 1 file changed +22
-15
lines changed Original file line number Diff line number Diff line change @@ -434,21 +434,28 @@ if {1} {
434434proc NumberOfBytesToString {value suffix} {
435435 set prefixes { " " " k" " M" " G" " T" " P" }
436436 set maxPrefixIndex [llength $prefixes ]
437- set prefixIndex [expr int(floor(log($value ) / log(1024)))]
438- if {$prefixIndex > $maxPrefixIndex } {
439- set prefixIndex $maxPrefixIndex
440- }
441- if {$prefixIndex < 0} {
442- set prefixIndex 0
443- }
444- set scaledValue [expr $value / pow(1024, $prefixIndex )]
445- set l [expr int(floor(log10(abs($scaledValue ))))]
446- if {$l < 0} {
447- set l 3
448- } elseif {$l <= 3} {
449- set l [expr 3 - $l ]
450- } else {
451- set l 0
437+ set prefixIndex 0
438+ set l 0
439+ set scaledValue $value
440+ catch {
441+ if {$value > 0} {
442+ set prefixIndex [expr int(floor(log($value ) / log(1024)))]
443+ if {$prefixIndex > $maxPrefixIndex } {
444+ set prefixIndex $maxPrefixIndex
445+ }
446+ if {$prefixIndex < 0} {
447+ set prefixIndex 0
448+ }
449+ set scaledValue [expr $value / pow(1024, $prefixIndex )]
450+ set l [expr int(floor(log10(abs($scaledValue ))))]
451+ if {$l < 0} {
452+ set l 3
453+ } elseif {$l <= 3} {
454+ set l [expr 3 - $l ]
455+ } else {
456+ set l 0
457+ }
458+ }
452459 }
453460 return [format " %.*f %s%s" $l $scaledValue [lindex $prefixes $prefixIndex ] $suffix ];
454461}
You can’t perform that action at this time.
0 commit comments