Remove deleted repos from searchresult (#21512)

This prevents a 500 response, because null pointer exceptions in
rendering the template.
This happends bc the repoId is not in the repoMap because it is delete

fix #19076

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
This commit is contained in:
Raymond 2022-10-22 11:23:20 +02:00 committed by GitHub
parent 2c77d4b195
commit 69fcca2d45
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -110,6 +110,18 @@ func Code(ctx *context.Context) {
} }
ctx.Data["RepoMaps"] = repoMaps ctx.Data["RepoMaps"] = repoMaps
if len(loadRepoIDs) != len(repoMaps) {
// Remove deleted repos from search results
cleanedSearchResults := make([]*code_indexer.Result, 0, len(repoMaps))
for _, sr := range searchResults {
if _, found := repoMaps[sr.RepoID]; found {
cleanedSearchResults = append(cleanedSearchResults, sr)
}
}
searchResults = cleanedSearchResults
}
} }
ctx.Data["SearchResults"] = searchResults ctx.Data["SearchResults"] = searchResults