diff --git a/modules/graceful/server.go b/modules/graceful/server.go index 09be9339997..4d0d8677f0e 100644 --- a/modules/graceful/server.go +++ b/modules/graceful/server.go @@ -250,6 +250,17 @@ type wrappedConn struct { func (w wrappedConn) Close() error { if atomic.CompareAndSwapInt32(w.closed, 0, 1) { + defer func() { + if err := recover(); err != nil { + select { + case <-GetManager().IsHammer(): + // Likely deadlocked request released at hammertime + log.Warn("Panic during connection close! %v. Likely there has been a deadlocked request which has been released by forced shutdown.", err) + default: + log.Error("Panic during connection close! %v", err) + } + } + }() w.server.wg.Done() } return w.Conn.Close() diff --git a/modules/markup/markdown/goldmark.go b/modules/markup/markdown/goldmark.go index 8974504a790..6a40a868363 100644 --- a/modules/markup/markdown/goldmark.go +++ b/modules/markup/markdown/goldmark.go @@ -328,7 +328,6 @@ func (r *HTMLRenderer) renderIcon(w util.BufWriter, source []byte, node ast.Node func (r *HTMLRenderer) renderTaskCheckBoxListItem(w util.BufWriter, source []byte, node ast.Node, entering bool) (ast.WalkStatus, error) { n := node.(*TaskCheckBoxListItem) if entering { - n.Dump(source, 0) if n.Attributes() != nil { _, _ = w.WriteString("