repochecker: Fix dependency loop detection
This commit is contained in:
parent
0834bc4d13
commit
85027166d7
1 changed files with 2 additions and 3 deletions
|
|
@ -508,18 +508,17 @@ func CheckExerciceFlags(i Importer, exercice *fic.Exercice, files []string, exce
|
||||||
|
|
||||||
// Check dependency loop
|
// Check dependency loop
|
||||||
deps := flag.FlagsDeps
|
deps := flag.FlagsDeps
|
||||||
deploppcheck:
|
|
||||||
for i := 0; i < len(deps); i++ {
|
for i := 0; i < len(deps); i++ {
|
||||||
if deps[i] == flagid {
|
if deps[i] == flagid {
|
||||||
errs = append(errs, NewFlagError(exercice, nil, flag.Line, fmt.Errorf("flag dependency loop detected: flag id=%d: depends on itself", flagid)))
|
errs = append(errs, NewFlagError(exercice, nil, flag.Line, fmt.Errorf("flag dependency loop detected: flag id=%d: depends on itself", flagid)))
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
|
||||||
|
deploppadd:
|
||||||
for _, d := range flags[deps[i]].FlagsDeps {
|
for _, d := range flags[deps[i]].FlagsDeps {
|
||||||
for _, dd := range deps {
|
for _, dd := range deps {
|
||||||
if dd == d {
|
if dd == d {
|
||||||
errs = append(errs, NewFlagError(exercice, nil, flag.Line, fmt.Errorf("flag dependency loop detected: flag id=%d: depends on itself", d)))
|
continue deploppadd
|
||||||
break deploppcheck
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
deps = append(deps, d)
|
deps = append(deps, d)
|
||||||
|
|
|
||||||
Reference in a new issue