summaryrefslogtreecommitdiff
path: root/vendor/codeberg.org/gruf/go-structr/queue.go
diff options
context:
space:
mode:
authorLibravatar kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com>2024-04-11 10:46:08 +0100
committerLibravatar GitHub <noreply@github.com>2024-04-11 11:46:08 +0200
commitdb2dcc3455e91aa3cc9599358d8eae4f0ef75b91 (patch)
treeb43016efd4f105634bd3ea04fe72417dadaca5e6 /vendor/codeberg.org/gruf/go-structr/queue.go
parent[feature] New user sign-up via web page (#2796) (diff)
downloadgotosocial-db2dcc3455e91aa3cc9599358d8eae4f0ef75b91.tar.xz
[chore] update go-structr => v0.6.2 (fixes nested field ptr following) (#2822)
* update go-structr => v0.6.1 (fixes nested field ptr following) * bump to v0.6.2
Diffstat (limited to 'vendor/codeberg.org/gruf/go-structr/queue.go')
-rw-r--r--vendor/codeberg.org/gruf/go-structr/queue.go8
1 files changed, 7 insertions, 1 deletions
diff --git a/vendor/codeberg.org/gruf/go-structr/queue.go b/vendor/codeberg.org/gruf/go-structr/queue.go
index 1e735762f..70c18c839 100644
--- a/vendor/codeberg.org/gruf/go-structr/queue.go
+++ b/vendor/codeberg.org/gruf/go-structr/queue.go
@@ -262,6 +262,9 @@ func (q *Queue[T]) index(value T) *indexed_item {
// Set item value.
item.data = value
+ // Get ptr to value data.
+ ptr := unsafe.Pointer(&value)
+
// Acquire key buf.
buf := new_buffer()
@@ -270,7 +273,10 @@ func (q *Queue[T]) index(value T) *indexed_item {
idx := &(q.indices[i])
// Extract fields comprising index key.
- parts := extract_fields(value, idx.fields)
+ parts := extract_fields(ptr, idx.fields)
+ if parts == nil {
+ continue
+ }
// Calculate index key.
key := idx.key(buf, parts)