internal/pipewire: do not emit None for spa_dict
All checks were successful
Test / Create distribution (push) Successful in 35s
Test / Sandbox (push) Successful in 2m23s
Test / Hakurei (push) Successful in 3m26s
Test / Hpkg (push) Successful in 4m9s
Test / Sandbox (race detector) (push) Successful in 4m30s
Test / Hakurei (race detector) (push) Successful in 3m18s
Test / Flake checks (push) Successful in 1m41s
All checks were successful
Test / Create distribution (push) Successful in 35s
Test / Sandbox (push) Successful in 2m23s
Test / Hakurei (push) Successful in 3m26s
Test / Hpkg (push) Successful in 4m9s
Test / Sandbox (race detector) (push) Successful in 4m30s
Test / Hakurei (race detector) (push) Successful in 3m18s
Test / Flake checks (push) Successful in 1m41s
Turns out the PipeWire server does not expect a value of type None here at all. Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
@@ -524,9 +524,8 @@ type SPADict []SPADictItem
|
||||
|
||||
// Size satisfies [KnownSize] with a value computed at runtime.
|
||||
func (d *SPADict) Size() Word {
|
||||
if *d == nil {
|
||||
// None type prefix with zero-length body
|
||||
return SizePrefix
|
||||
if d == nil {
|
||||
return 0
|
||||
}
|
||||
|
||||
// struct prefix, NItems value
|
||||
@@ -541,11 +540,6 @@ func (d *SPADict) Size() Word {
|
||||
// MarshalPOD satisfies [PODMarshaler] as [SPADict] violates the POD type system.
|
||||
func (d *SPADict) MarshalPOD(data []byte) ([]byte, error) {
|
||||
return appendInner(data, func(dataPrefix []byte) (data []byte, err error) {
|
||||
if *d == nil {
|
||||
data = SPA_TYPE_None.append(dataPrefix)
|
||||
return
|
||||
}
|
||||
|
||||
data = SPA_TYPE_Struct.append(dataPrefix)
|
||||
if data, err = MarshalAppend(data, Int(len(*d))); err != nil {
|
||||
return
|
||||
@@ -565,14 +559,6 @@ func (d *SPADict) MarshalPOD(data []byte) ([]byte, error) {
|
||||
// UnmarshalPOD satisfies [PODUnmarshaler] as [SPADict] violates the POD type system.
|
||||
func (d *SPADict) UnmarshalPOD(data []byte) (Word, error) {
|
||||
var wireSize Word
|
||||
|
||||
if ok, err := unmarshalHandleNone(&data, &wireSize); err != nil {
|
||||
return wireSize, err
|
||||
} else if ok {
|
||||
*d = nil
|
||||
return wireSize, nil
|
||||
}
|
||||
|
||||
if err := unmarshalCheckTypeBounds(&data, SPA_TYPE_Struct, &wireSize); err != nil {
|
||||
return wireSize, err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user