simplify code with ptrOf (#5179)

This commit is contained in:
Alessandro Ros 2025-11-11 12:01:03 +01:00 committed by GitHub
parent 569d457132
commit 8858bf1db9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 14 additions and 12 deletions

View file

@ -8,6 +8,10 @@ import (
"github.com/bluenviron/mediamtx/internal/conf/jsonwrapper"
)
func ptrOf[T any](v T) *T {
return &v
}
// RTSPTransport is the rtspTransport parameter.
type RTSPTransport struct {
*gortsplib.Protocol
@ -44,16 +48,13 @@ func (d *RTSPTransport) UnmarshalJSON(b []byte) error {
switch in {
case "udp":
v := gortsplib.ProtocolUDP
d.Protocol = &v
d.Protocol = ptrOf(gortsplib.ProtocolUDP)
case "multicast":
v := gortsplib.ProtocolUDPMulticast
d.Protocol = &v
d.Protocol = ptrOf(gortsplib.ProtocolUDPMulticast)
case "tcp":
v := gortsplib.ProtocolTCP
d.Protocol = &v
d.Protocol = ptrOf(gortsplib.ProtocolTCP)
case "automatic":
d.Protocol = nil

View file

@ -11,6 +11,10 @@ import (
"github.com/stretchr/testify/require"
)
func ptrOf[T any](v T) *T {
return &v
}
func TestFindAllPathsWithSegments(t *testing.T) {
dir, err := os.MkdirTemp("", "mediamtx-recordstore")
require.NoError(t, err)
@ -93,14 +97,11 @@ func TestFindSegments(t *testing.T) {
case "no filtering":
case "filtering":
tmp1 := time.Date(2015, 5, 19, 22, 18, 25, 427000, time.Local)
start = &tmp1
tmp2 := start.Add(60 * time.Minute)
end = &tmp2
start = ptrOf(time.Date(2015, 5, 19, 22, 18, 25, 427000, time.Local))
end = ptrOf(start.Add(60 * time.Minute))
case "start before first":
tmp1 := time.Date(2014, 5, 19, 22, 18, 25, 427000, time.Local)
start = &tmp1
start = ptrOf(time.Date(2014, 5, 19, 22, 18, 25, 427000, time.Local))
}
segments, err := FindSegments(