make AllLocations accept a context (#2518)

The previous implementation would leak a goroutine if the caller of
AllLocations stopped iterating early. Now, accept a context so that the
caller can cancel the AllLocations iterator rather than leak the
goroutine.

Signed-off-by: Will Murphy <will.murphy@anchore.com>
This commit is contained in:
William Murphy
2024-01-22 11:05:59 -05:00
committed by GitHub
parent 3046d43a8a
commit c6ce1de928
22 changed files with 156 additions and 42 deletions
+2 -1
View File
@@ -1,6 +1,7 @@
package binary
import (
"context"
"errors"
"flag"
"fmt"
@@ -1237,7 +1238,7 @@ func (p *panicyResolver) RelativeFileByPath(_ file.Location, _ string) *file.Loc
return nil
}
func (p *panicyResolver) AllLocations() <-chan file.Location {
func (p *panicyResolver) AllLocations(_ context.Context) <-chan file.Location {
return nil
}