mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-26 12:27:06 +00:00 
			
		
		
		
	probe if sha before exec git (#21467)
This commit is contained in:
		| @@ -154,8 +154,8 @@ func (repo *Repository) searchCommits(id SHA1, opts SearchCommitsOptions) ([]*Co | ||||
| 	// then let's iterate over them | ||||
| 	if len(opts.Keywords) > 0 { | ||||
| 		for _, v := range opts.Keywords { | ||||
| 			// ignore anything below 4 characters as too unspecific | ||||
| 			if len(v) >= 4 { | ||||
| 			// ignore anything not matching a valid sha pattern | ||||
| 			if IsValidSHAPattern(v) { | ||||
| 				// create new git log command with 1 commit limit | ||||
| 				hashCmd := NewCommand(repo.Ctx, "log", "-1", prettyLogFormat) | ||||
| 				// add previous arguments except for --grep and --all | ||||
|   | ||||
							
								
								
									
										21
									
								
								modules/git/sha1_test.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								modules/git/sha1_test.go
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,21 @@ | ||||
| // Copyright 2022 The Gitea Authors. All rights reserved. | ||||
| // Use of this source code is governed by a MIT-style | ||||
| // license that can be found in the LICENSE file. | ||||
|  | ||||
| package git | ||||
|  | ||||
| import ( | ||||
| 	"testing" | ||||
|  | ||||
| 	"github.com/stretchr/testify/assert" | ||||
| ) | ||||
|  | ||||
| func TestIsValidSHAPattern(t *testing.T) { | ||||
| 	assert.True(t, IsValidSHAPattern("fee1")) | ||||
| 	assert.True(t, IsValidSHAPattern("abc000")) | ||||
| 	assert.True(t, IsValidSHAPattern("9023902390239023902390239023902390239023")) | ||||
| 	assert.False(t, IsValidSHAPattern("90239023902390239023902390239023902390239023")) | ||||
| 	assert.False(t, IsValidSHAPattern("abc")) | ||||
| 	assert.False(t, IsValidSHAPattern("123g")) | ||||
| 	assert.False(t, IsValidSHAPattern("some random text")) | ||||
| } | ||||
		Reference in New Issue
	
	Block a user
	 6543
					6543