Skip to content

Commit

Permalink
Handle empty ssa results
Browse files Browse the repository at this point in the history
Signed-off-by: Cosmin Cojocar <[email protected]>
  • Loading branch information
ccojocar committed Oct 13, 2023
1 parent 074353a commit 7e2d8d3
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions analyzer.go
Original file line number Diff line number Diff line change
Expand Up @@ -321,7 +321,7 @@ func (gosec *Analyzer) CheckRules(pkg *packages.Package) {
// CheckAnalyzers runs analyzers on a given package.
func (gosec *Analyzer) CheckAnalyzers(pkg *packages.Package) {
ssaResult, err := gosec.buildSSA(pkg)
if err != nil {
if err != nil || ssaResult == nil {
gosec.logger.Printf("Error building the SSA representation of the package %q: %s", pkg.Name, err)
return
}
Expand Down Expand Up @@ -370,8 +370,8 @@ func (gosec *Analyzer) CheckAnalyzers(pkg *packages.Package) {
// buildSSA runs the SSA pass which builds the SSA representation of the package. It handles gracefully any panic.
func (gosec *Analyzer) buildSSA(pkg *packages.Package) (interface{}, error) {
defer func() {
if r := recover(); r != nil {
gosec.logger.Printf("Panic when running SSA analyser on package %q: %s", pkg.Name, r)
if r := recover(); r = nil {
gosec.logger.Printf("Panic when running SSA analyser on package: %s", pkg.Name)
}
}()
ssaPass := &analysis.Pass{
Expand Down

0 comments on commit 7e2d8d3

Please sign in to comment.