Ver código fonte

Avoid the empty slice bug

Vadim Markovtsev 6 anos atrás
pai
commit
d48d50d0b7
2 arquivos alterados com 3 adições e 3 exclusões
  1. 1 1
      internal/plumbing/tree_diff.go
  2. 2 2
      leaves/comment_sentiment.go

+ 1 - 1
internal/plumbing/tree_diff.go

@@ -139,7 +139,7 @@ func (treediff *TreeDiff) Consume(deps map[string]interface{}) (map[string]inter
 
 	if len(treediff.SkipDirs) > 0 {
 		// filter without allocation
-		filteredDiff := diff[:0]
+		filteredDiff := make([]*object.Change, 0, len(diff))
 	OUTER:
 		for _, change := range diff {
 			for _, dir := range treediff.SkipDirs {

+ 2 - 2
leaves/comment_sentiment.go

@@ -309,7 +309,7 @@ func (sent *CommentSentimentAnalysis) mergeComments(nodes []*uast.Node) []string
 		lineNums = append(lineNums, line)
 	}
 	sort.Ints(lineNums)
-	buffer := []string{}
+	var buffer []string
 	for i, line := range lineNums {
 		lineNodes := lines[line]
 		maxEnd := line
@@ -326,7 +326,7 @@ func (sent *CommentSentimentAnalysis) mergeComments(nodes []*uast.Node) []string
 			continue
 		}
 		mergedComments = append(mergedComments, strings.Join(buffer, "\n"))
-		buffer = buffer[:0]
+		buffer = make([]string, 0, len(buffer))
 	}
 	// We remove unneeded chars and filter too short comments
 	filteredComments := make([]string, 0, len(mergedComments))