소스 검색

Fix /0 in renames

Vadim Markovtsev 6 년 전
부모
커밋
2b8aa4dfe4
1개의 변경된 파일4개의 추가작업 그리고 3개의 파일을 삭제
  1. 4 3
      internal/plumbing/renames.go

+ 4 - 3
internal/plumbing/renames.go

@@ -211,8 +211,8 @@ func (ra *RenameAnalysis) Fork(n int) []core.PipelineItem {
 }
 
 func (ra *RenameAnalysis) sizesAreClose(size1 int64, size2 int64) bool {
-	return (internal.Abs64(size1-size2)*100)/internal.Max64(size1, size2) <=
-		int64(100-ra.SimilarityThreshold)
+	size := internal.Max64(1, internal.Max64(size1, size2))
+	return (internal.Abs64(size1-size2)*100)/size <= int64(100-ra.SimilarityThreshold)
 }
 
 func (ra *RenameAnalysis) blobsAreClose(
@@ -262,7 +262,8 @@ func (ra *RenameAnalysis) blobsAreClose(
 			}
 		}
 	}
-	similarity := (common*100)/internal.Max(utf8.RuneCountInString(src), utf8.RuneCountInString(dst))
+	size := internal.Max(1, internal.Max(utf8.RuneCountInString(src), utf8.RuneCountInString(dst)))
+	similarity := (common*100) / size
 	return similarity >= ra.SimilarityThreshold, nil
 }