Merge pull request #12081 from heww/fix-issue-11951-in-1.10.x

[Cherry pick]fix(cve-whitelist): fix panic in `Get` method of whitelist manager
This commit is contained in:
He Weiwei 2020-05-27 19:15:43 +08:00 committed by GitHub
commit 15bd5acc7e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -63,14 +63,17 @@ func (d *defaultManager) Set(projectID int64, list models.CVEWhitelist) error {
// Get gets the whitelist for given project
func (d *defaultManager) Get(projectID int64) (*models.CVEWhitelist, error) {
wl, err := dao.GetCVEWhitelist(projectID)
if wl == nil && err == nil {
log.Debugf("No CVE whitelist found for project %d, returning empty list.", projectID)
return &models.CVEWhitelist{ProjectID: projectID, Items: []models.CVEWhitelistItem{}}, nil
if err != nil {
return nil, err
}
if wl.Items == nil {
if wl == nil {
log.Debugf("No CVE whitelist found for project %d, returning empty list.", projectID)
wl = &models.CVEWhitelist{ProjectID: projectID, Items: []models.CVEWhitelistItem{}}
} else if wl.Items == nil {
wl.Items = []models.CVEWhitelistItem{}
}
return wl, err
return wl, nil
}
// SetSys sets the system level whitelist