summaryrefslogtreecommitdiff
path: root/vendor/github.com/go-playground/form/v4/decoder.go
diff options
context:
space:
mode:
authorLibravatar kim <grufwub@gmail.com>2025-10-13 16:49:53 +0200
committerLibravatar tobi <tobi.smethurst@protonmail.com>2025-10-17 15:32:55 +0200
commitea7eeada77a52fd58a9e1a949a39eccc7bce955a (patch)
treeede9f651d0bd7782b565883f9384341530f8320f /vendor/github.com/go-playground/form/v4/decoder.go
parent[bugfix] repeated posts on timeline endpoints (#4494) (diff)
downloadgotosocial-ea7eeada77a52fd58a9e1a949a39eccc7bce955a.tar.xz
[chore] update dependencies (#4495)
- github.com/coreos/go-oidc/v3: v3.15.0 -> v3.16.0 - github.com/go-playground/form/v4: v4.2.1 -> v4.3.0 - github.com/go-swagger/go-swagger: v0.32.3 -> v0.33.1 - golang.org/x/crypto: v0.42.0 -> v0.43.0 - golang.org/x/image: v0.31.0 -> v0.32.0 - golang.org/x/net: v0.45.0 -> v0.46.0 - golang.org/x/oauth2: v0.31.0 -> v0.32.0 - golang.org/x/sys: v0.36.0 -> v0.37.0 - golang.org/x/text: v0.29.0 -> v0.30.0 - modernc.org/sqlite: v1.39.0 -> v1.39.1 (w/ concurrency workaround) Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4495 Co-authored-by: kim <grufwub@gmail.com> Co-committed-by: kim <grufwub@gmail.com>
Diffstat (limited to 'vendor/github.com/go-playground/form/v4/decoder.go')
-rw-r--r--vendor/github.com/go-playground/form/v4/decoder.go14
1 files changed, 10 insertions, 4 deletions
diff --git a/vendor/github.com/go-playground/form/v4/decoder.go b/vendor/github.com/go-playground/form/v4/decoder.go
index e21242279..d746ea02c 100644
--- a/vendor/github.com/go-playground/form/v4/decoder.go
+++ b/vendor/github.com/go-playground/form/v4/decoder.go
@@ -19,6 +19,7 @@ type decoder struct {
d *Decoder
errs DecodeErrors
dm dataMap
+ aliasMap map[string]*recursiveData
values url.Values
maxKeyLen int
namespace []byte
@@ -32,10 +33,8 @@ func (d *decoder) setError(namespace []byte, err error) {
}
func (d *decoder) findAlias(ns string) *recursiveData {
- for i := 0; i < len(d.dm); i++ {
- if d.dm[i].alias == ns {
- return d.dm[i]
- }
+ if d.aliasMap != nil {
+ return d.aliasMap[ns]
}
return nil
}
@@ -49,6 +48,12 @@ func (d *decoder) parseMapData() {
d.maxKeyLen = 0
d.dm = d.dm[0:0]
+ if d.aliasMap == nil {
+ d.aliasMap = make(map[string]*recursiveData)
+ } else {
+ clear(d.aliasMap)
+ }
+
var i int
var idx int
var l int
@@ -94,6 +99,7 @@ func (d *decoder) parseMapData() {
}
rd.alias = k[:idx]
+ d.aliasMap[rd.alias] = rd
}
// is map + key