summaryrefslogtreecommitdiff
path: root/internal/util/ptr.go
diff options
context:
space:
mode:
authorLibravatar kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com>2024-07-17 15:26:33 +0000
committerLibravatar GitHub <noreply@github.com>2024-07-17 15:26:33 +0000
commit72ba5666a6ffd06ccdfd2db8dacc47de7f777a4c (patch)
treeac8c71af4f9a57c0233ffd30f8867d02616c46cc /internal/util/ptr.go
parent[feature] Allow users to set default interaction policies per status visibili... (diff)
downloadgotosocial-72ba5666a6ffd06ccdfd2db8dacc47de7f777a4c.tar.xz
[chore] media pipeline improvements (#3110)
* don't set emoji / media image paths on failed download, migrate FileType from string to integer * fix incorrect uses of util.PtrOr, fix returned frontend media * fix migration not setting arguments correctly in where clause * fix not providing default with not null column * whoops * ensure a default gets set for media attachment file type * remove the exclusive flag from writing files in disk storage * rename PtrOr -> PtrOrZero, and rename PtrValueOr -> PtrOrValue to match * slight wording changes * use singular / plural word forms (no parentheses), is better for screen readers * update testmodels with unknown media type to have unset file details, update attachment focus handling converting to frontend, update tests * store first instance in ffmpeg wasm pool, fill remaining with closed instances
Diffstat (limited to 'internal/util/ptr.go')
-rw-r--r--internal/util/ptr.go15
1 files changed, 12 insertions, 3 deletions
diff --git a/internal/util/ptr.go b/internal/util/ptr.go
index d7c30da85..8a89666c4 100644
--- a/internal/util/ptr.go
+++ b/internal/util/ptr.go
@@ -43,10 +43,19 @@ func PtrIf[T comparable](t T) *T {
return &t
}
-// PtrValueOr returns either value of ptr, or default.
-func PtrValueOr[T any](t *T, _default T) T {
+// PtrOrZero returns either value of ptr, or zero.
+func PtrOrZero[T any](t *T) T {
+ if t == nil {
+ var z T
+ return z
+ }
+ return *t
+}
+
+// PtrOrValue returns either contained value of ptr, or 'value'.
+func PtrOrValue[T any](t *T, value T) T {
if t != nil {
return *t
}
- return _default
+ return value
}