Skip to content

Commit 6a39250

Browse files
typelessappleboy
authored andcommitted
Add length check for the return string (#1420)
* Add length check for the return string * Differentiate error paths and logging messages * Rectify error message
1 parent fac7a6f commit 6a39250

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

models/pull.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -507,7 +507,9 @@ func (pr *PullRequest) getMergeCommit() (*git.Commit, error) {
507507
mergeCommit, stderr, err := process.GetManager().ExecDirEnv(-1, "", fmt.Sprintf("isMerged (git rev-list --ancestry-path --merges --reverse): %d", pr.BaseRepo.ID),
508508
[]string{"GIT_INDEX_FILE=" + indexTmpPath, "GIT_DIR=" + pr.BaseRepo.RepoPath()},
509509
"git", "rev-list", "--ancestry-path", "--merges", "--reverse", cmd)
510-
510+
if err == nil && len(mergeCommit) != 40 {
511+
err = fmt.Errorf("unexpected length of output (got:%d bytes) '%s'", len(mergeCommit), mergeCommit)
512+
}
511513
if err != nil {
512514
return nil, fmt.Errorf("git rev-list --ancestry-path --merges --reverse: %v %v", stderr, err)
513515
}

0 commit comments

Comments
 (0)