diff --git a/internal/pipewire/pod.go b/internal/pipewire/pod.go index 9fb9c78..0faada2 100644 --- a/internal/pipewire/pod.go +++ b/internal/pipewire/pod.go @@ -400,6 +400,8 @@ func (d *SPADict) UnmarshalPOD(data []byte) (Word, error) { if err := unmarshalCheckTypeBounds(&data, SPA_TYPE_Struct, &wireSize); err != nil { return wireSize, err } + // bounds check completed in successful call to unmarshalCheckTypeBounds + data = data[:wireSize] if size, err := Unmarshal(data, &d.NItems); err != nil { return wireSize, err