Fix potential log panic (#82)
If a job uses a [reusable workflow](https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#example-of-jobsjob_iduses), the job's steps sequence will be empty. But in log reporter, we don't check the length of `r.state.Steps`, which may cause panic. ``` go if v, ok := entry.Data["stepNumber"]; ok { if v, ok := v.(int); ok { step = r.state.Steps[v] } } ``` Reviewed-on: https://gitea.com/gitea/act_runner/pulls/82 Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com> Co-authored-by: Zettat123 <zettat123@gmail.com> Co-committed-by: Zettat123 <zettat123@gmail.com>
This commit is contained in:
parent
c9e076db68
commit
1596e4b1fd
@ -102,7 +102,7 @@ func (r *Reporter) Fire(entry *log.Entry) error {
|
|||||||
|
|
||||||
var step *runnerv1.StepState
|
var step *runnerv1.StepState
|
||||||
if v, ok := entry.Data["stepNumber"]; ok {
|
if v, ok := entry.Data["stepNumber"]; ok {
|
||||||
if v, ok := v.(int); ok {
|
if v, ok := v.(int); ok && len(r.state.Steps) > v {
|
||||||
step = r.state.Steps[v]
|
step = r.state.Steps[v]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user