diff --git a/routers/web/repo/actions/actions.go b/routers/web/repo/actions/actions.go index fc7ac2d714ec8..8a44e836c5045 100644 --- a/routers/web/repo/actions/actions.go +++ b/routers/web/repo/actions/actions.go @@ -162,12 +162,18 @@ func List(ctx *context.Context) { ctx.Data["NumClosedActionRuns"] = numClosedRuns opts.IsClosed = util.OptionalBoolNone - if ctx.FormString("state") == "closed" { + isShowClosed := ctx.FormString("state") == "closed" + if len(ctx.FormString("state")) == 0 && numOpenRuns == 0 && numClosedRuns != 0 { + isShowClosed = true + } + + if isShowClosed { opts.IsClosed = util.OptionalBoolTrue ctx.Data["IsShowClosed"] = true } else { opts.IsClosed = util.OptionalBoolFalse } + runs, total, err := actions_model.FindRuns(ctx, opts) if err != nil { ctx.Error(http.StatusInternalServerError, err.Error())