aboutsummaryrefslogtreecommitdiffstats
path: root/routers/web/admin/hooks.go
diff options
context:
space:
mode:
authorzeripath <art27@cantab.net>2022-03-28 04:17:21 +0100
committerGitHub <noreply@github.com>2022-03-28 11:17:21 +0800
commitd6fa138e7ce7c36ce253a3c847e3218fd31452c4 (patch)
treef5a5fcd1d15e52369b745c75c41713ef12352d49 /routers/web/admin/hooks.go
parent04601d22f557bbaea2abc53aa9750478c9dbc14f (diff)
downloadgitea-d6fa138e7ce7c36ce253a3c847e3218fd31452c4.tar.gz
gitea-d6fa138e7ce7c36ce253a3c847e3218fd31452c4.zip
Only send webhook events to active system webhooks and only deliver to active hooks (#19234)
There is a bug in the system webhooks whereby the active state is not checked when webhooks are prepared and there is a bug that deactivating webhooks do not prevent queued deliveries. * Only add SystemWebhooks to the prepareWebhooks list if they are active * At the time of delivery if the underlying webhook is not active mark it as "delivered" but with a failed delivery so it does not get delivered. Fix #19220 Signed-off-by: Andrew Thornton <art27@cantab.net> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Diffstat (limited to 'routers/web/admin/hooks.go')
-rw-r--r--routers/web/admin/hooks.go3
1 files changed, 2 insertions, 1 deletions
diff --git a/routers/web/admin/hooks.go b/routers/web/admin/hooks.go
index 8cb99e1d1e..1483d0959d 100644
--- a/routers/web/admin/hooks.go
+++ b/routers/web/admin/hooks.go
@@ -11,6 +11,7 @@ import (
"code.gitea.io/gitea/modules/base"
"code.gitea.io/gitea/modules/context"
"code.gitea.io/gitea/modules/setting"
+ "code.gitea.io/gitea/modules/util"
)
const (
@@ -34,7 +35,7 @@ func DefaultOrSystemWebhooks(ctx *context.Context) {
sys["Title"] = ctx.Tr("admin.systemhooks")
sys["Description"] = ctx.Tr("admin.systemhooks.desc")
- sys["Webhooks"], err = webhook.GetSystemWebhooks()
+ sys["Webhooks"], err = webhook.GetSystemWebhooks(util.OptionalBoolNone)
sys["BaseLink"] = setting.AppSubURL + "/admin/hooks"
sys["BaseLinkNew"] = setting.AppSubURL + "/admin/system-hooks"
if err != nil {