summaryrefslogtreecommitdiff
path: root/vendor/github.com/gin-gonic/gin
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/gin-gonic/gin')
-rw-r--r--vendor/github.com/gin-gonic/gin/CHANGELOG.md11
-rw-r--r--vendor/github.com/gin-gonic/gin/gin.go6
-rw-r--r--vendor/github.com/gin-gonic/gin/test_helpers.go10
-rw-r--r--vendor/github.com/gin-gonic/gin/tree.go9
-rw-r--r--vendor/github.com/gin-gonic/gin/version.go2
5 files changed, 32 insertions, 6 deletions
diff --git a/vendor/github.com/gin-gonic/gin/CHANGELOG.md b/vendor/github.com/gin-gonic/gin/CHANGELOG.md
index 1bc51a8c9..af8bfb1e1 100644
--- a/vendor/github.com/gin-gonic/gin/CHANGELOG.md
+++ b/vendor/github.com/gin-gonic/gin/CHANGELOG.md
@@ -1,5 +1,16 @@
# Gin ChangeLog
+## Gin v1.8.2
+
+### Bugs
+
+* fix(route): redirectSlash bug ([#3227]((https://github.com/gin-gonic/gin/pull/3227)))
+* fix(engine): missing route params for CreateTestContext ([#2778]((https://github.com/gin-gonic/gin/pull/2778))) ([#2803]((https://github.com/gin-gonic/gin/pull/2803)))
+
+### Security
+
+* Fix the GO-2022-1144 vulnerability ([#3432]((https://github.com/gin-gonic/gin/pull/3432)))
+
## Gin v1.8.1
### ENHANCEMENTS
diff --git a/vendor/github.com/gin-gonic/gin/gin.go b/vendor/github.com/gin-gonic/gin/gin.go
index f9324299b..551356974 100644
--- a/vendor/github.com/gin-gonic/gin/gin.go
+++ b/vendor/github.com/gin-gonic/gin/gin.go
@@ -203,7 +203,7 @@ func New() *Engine {
}
engine.RouterGroup.engine = engine
engine.pool.New = func() any {
- return engine.allocateContext()
+ return engine.allocateContext(engine.maxParams)
}
return engine
}
@@ -225,8 +225,8 @@ func (engine *Engine) Handler() http.Handler {
return h2c.NewHandler(engine, h2s)
}
-func (engine *Engine) allocateContext() *Context {
- v := make(Params, 0, engine.maxParams)
+func (engine *Engine) allocateContext(maxParams uint16) *Context {
+ v := make(Params, 0, maxParams)
skippedNodes := make([]skippedNode, 0, engine.maxSections)
return &Context{engine: engine, params: &v, skippedNodes: &skippedNodes}
}
diff --git a/vendor/github.com/gin-gonic/gin/test_helpers.go b/vendor/github.com/gin-gonic/gin/test_helpers.go
index b3be93b4e..7508c5c90 100644
--- a/vendor/github.com/gin-gonic/gin/test_helpers.go
+++ b/vendor/github.com/gin-gonic/gin/test_helpers.go
@@ -9,7 +9,15 @@ import "net/http"
// CreateTestContext returns a fresh engine and context for testing purposes
func CreateTestContext(w http.ResponseWriter) (c *Context, r *Engine) {
r = New()
- c = r.allocateContext()
+ c = r.allocateContext(0)
+ c.reset()
+ c.writermem.reset(w)
+ return
+}
+
+// CreateTestContextOnly returns a fresh context base on the engine for testing purposes
+func CreateTestContextOnly(w http.ResponseWriter, r *Engine) (c *Context) {
+ c = r.allocateContext(r.maxParams)
c.reset()
c.writermem.reset(w)
return
diff --git a/vendor/github.com/gin-gonic/gin/tree.go b/vendor/github.com/gin-gonic/gin/tree.go
index 88100eec8..0179aa085 100644
--- a/vendor/github.com/gin-gonic/gin/tree.go
+++ b/vendor/github.com/gin-gonic/gin/tree.go
@@ -107,7 +107,8 @@ func countSections(path string) uint16 {
type nodeType uint8
const (
- root nodeType = iota + 1
+ static nodeType = iota
+ root
param
catchAll
)
@@ -173,6 +174,7 @@ walk:
child := node{
path: n.path[i:],
wildChild: n.wildChild,
+ nType: static,
indices: n.indices,
children: n.children,
handlers: n.handlers,
@@ -604,6 +606,11 @@ walk: // Outer loop for walking the tree
return
}
+ if path == "/" && n.nType == static {
+ value.tsr = true
+ return
+ }
+
// No handle found. Check if a handle for this path + a
// trailing slash exists for trailing slash recommendation
for i, c := range []byte(n.indices) {
diff --git a/vendor/github.com/gin-gonic/gin/version.go b/vendor/github.com/gin-gonic/gin/version.go
index 632ca7d1d..37e27f27a 100644
--- a/vendor/github.com/gin-gonic/gin/version.go
+++ b/vendor/github.com/gin-gonic/gin/version.go
@@ -5,4 +5,4 @@
package gin
// Version is the current gin framework's version.
-const Version = "v1.8.1"
+const Version = "v1.8.2"