forked from ALHP/ALHP.GO
fixed potential out of bounds
This commit is contained in:
5
main.go
5
main.go
@@ -329,9 +329,10 @@ func (b *BuildManager) refreshSRCINFOs(ctx context.Context, path string) error {
|
|||||||
cur := 0
|
cur := 0
|
||||||
wg := sync.WaitGroup{}
|
wg := sync.WaitGroup{}
|
||||||
for i := 0; i < runtime.NumCPU(); i++ {
|
for i := 0; i < runtime.NumCPU(); i++ {
|
||||||
if cur+step > len(pkgBuilds) {
|
if i == runtime.NumCPU()-1 {
|
||||||
step -= cur + step - len(pkgBuilds)
|
step = len(pkgBuilds) - cur
|
||||||
}
|
}
|
||||||
|
|
||||||
wg.Add(1)
|
wg.Add(1)
|
||||||
go func(pkgBuilds []string) {
|
go func(pkgBuilds []string) {
|
||||||
defer wg.Done()
|
defer wg.Done()
|
||||||
|
68
utils.go
68
utils.go
@@ -568,41 +568,43 @@ func housekeeping(repo string, march string, wg *sync.WaitGroup) error {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// check queued packages for eligibility
|
/*
|
||||||
log.Debugf("[HK/%s] check queued packages", fullRepo)
|
// check queued packages for eligibility
|
||||||
qPackages, err := db.DbPackage.Query().Where(
|
log.Debugf("[HK/%s] check queued packages", fullRepo)
|
||||||
dbpackage.And(
|
qPackages, err := db.DbPackage.Query().Where(
|
||||||
dbpackage.RepositoryEQ(dbpackage.Repository(repo)),
|
dbpackage.And(
|
||||||
dbpackage.March(march),
|
dbpackage.RepositoryEQ(dbpackage.Repository(repo)),
|
||||||
dbpackage.StatusEQ(dbpackage.StatusQueued),
|
dbpackage.March(march),
|
||||||
)).All(context.Background())
|
dbpackage.StatusEQ(dbpackage.StatusQueued),
|
||||||
if err != nil {
|
)).All(context.Background())
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
for _, dbPkg := range qPackages {
|
|
||||||
pkg := &ProtoPackage{
|
|
||||||
Pkgbase: dbPkg.Pkgbase,
|
|
||||||
Repo: dbPkg.Repository,
|
|
||||||
FullRepo: dbPkg.Repository.String() + "-" + dbPkg.March,
|
|
||||||
DbPackage: dbPkg,
|
|
||||||
March: dbPkg.March,
|
|
||||||
}
|
|
||||||
|
|
||||||
var upstream string
|
|
||||||
switch pkg.DbPackage.Repository {
|
|
||||||
case dbpackage.RepositoryCore, dbpackage.RepositoryExtra:
|
|
||||||
upstream = "upstream-core-extra"
|
|
||||||
case dbpackage.RepositoryCommunity:
|
|
||||||
upstream = "upstream-community"
|
|
||||||
}
|
|
||||||
pkg.Pkgbuild = filepath.Join(conf.Basedir.Work, upstreamDir, upstream, dbPkg.Pkgbase, "repos", pkg.DbPackage.Repository.String()+"-"+conf.Arch, "PKGBUILD")
|
|
||||||
|
|
||||||
_, err := pkg.isEligible(context.Background())
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Warningf("[HK/%s] unable to determine status for %s: %v", fullRepo, dbPkg.Pkgbase, err)
|
return err
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
for _, dbPkg := range qPackages {
|
||||||
|
pkg := &ProtoPackage{
|
||||||
|
Pkgbase: dbPkg.Pkgbase,
|
||||||
|
Repo: dbPkg.Repository,
|
||||||
|
FullRepo: dbPkg.Repository.String() + "-" + dbPkg.March,
|
||||||
|
DbPackage: dbPkg,
|
||||||
|
March: dbPkg.March,
|
||||||
|
}
|
||||||
|
|
||||||
|
var upstream string
|
||||||
|
switch pkg.DbPackage.Repository {
|
||||||
|
case dbpackage.RepositoryCore, dbpackage.RepositoryExtra:
|
||||||
|
upstream = "upstream-core-extra"
|
||||||
|
case dbpackage.RepositoryCommunity:
|
||||||
|
upstream = "upstream-community"
|
||||||
|
}
|
||||||
|
pkg.Pkgbuild = filepath.Join(conf.Basedir.Work, upstreamDir, upstream, dbPkg.Pkgbase, "repos", pkg.DbPackage.Repository.String()+"-"+conf.Arch, "PKGBUILD")
|
||||||
|
|
||||||
|
_, err := pkg.isEligible(context.Background())
|
||||||
|
if err != nil {
|
||||||
|
log.Warningf("[HK/%s] unable to determine status for %s: %v", fullRepo, dbPkg.Pkgbase, err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
log.Debugf("[HK/%s] all tasks finished", fullRepo)
|
log.Debugf("[HK/%s] all tasks finished", fullRepo)
|
||||||
return nil
|
return nil
|
||||||
|
Reference in New Issue
Block a user