Browse Source

Fix zero division

Vadim Markovtsev 8 years ago
parent
commit
c356781280
2 changed files with 8 additions and 1 deletions
  1. 1 1
      analyser.go
  2. 7 0
      file.go

+ 1 - 1
analyser.go

@@ -295,7 +295,7 @@ func (slice sortableBlobs) Swap(i, j int) {
 }
 }
 
 
 func (analyser *Analyser) sizesAreClose(size1 int64, size2 int64) bool {
 func (analyser *Analyser) sizesAreClose(size1 int64, size2 int64) bool {
-	return abs64(size1-size2)*100/min64(size1, size2) <=
+	return abs64(size1-size2)*100/max64(1, min64(size1, size2)) <=
 		int64(100-analyser.SimilarityThreshold)
 		int64(100-analyser.SimilarityThreshold)
 }
 }
 
 

+ 7 - 0
file.go

@@ -33,6 +33,13 @@ func max(a int, b int) int {
 	return a
 	return a
 }
 }
 
 
+func max64(a int64, b int64) int64 {
+	if a < b {
+		return b
+	}
+	return a
+}
+
 func abs64(v int64) int64 {
 func abs64(v int64) int64 {
 	if v <= 0 {
 	if v <= 0 {
 		return -v
 		return -v