mirror of
https://github.com/go-gst/go-gst.git
synced 2025-09-26 20:11:18 +08:00
don't dereference glib.Value pointers, to not risk triggering the finalizer
This commit is contained in:
@@ -634,8 +634,7 @@ func ValueList(ss []interface{}) *ValueListValue {
|
||||
(*C.GValue)(unsafe.Pointer(val.GValue)),
|
||||
)
|
||||
}
|
||||
out := ValueListValue(*v)
|
||||
return &out
|
||||
return (*ValueListValue)(v)
|
||||
}
|
||||
|
||||
// Size returns the size of the list.
|
||||
@@ -672,8 +671,8 @@ func (v *ValueListValue) Concat(value *ValueListValue) *ValueListValue {
|
||||
(*C.GValue)(unsafe.Pointer(v.GValue)),
|
||||
(*C.GValue)(unsafe.Pointer(value.GValue)),
|
||||
)
|
||||
o := ValueListValue(*out)
|
||||
return &o
|
||||
|
||||
return (*ValueListValue)(out)
|
||||
}
|
||||
|
||||
// Merge merges copies of value into this list. Values that are not of type TypeValueList are treated as
|
||||
@@ -691,12 +690,12 @@ func (v *ValueListValue) Merge(value *ValueListValue) *ValueListValue {
|
||||
(*C.GValue)(unsafe.Pointer(v.GValue)),
|
||||
(*C.GValue)(unsafe.Pointer(value.GValue)),
|
||||
)
|
||||
o := ValueListValue(*out)
|
||||
return &o
|
||||
|
||||
return (*ValueListValue)(out)
|
||||
}
|
||||
|
||||
// ToGValue implements a glib.ValueTransformer.
|
||||
func (v *ValueListValue) ToGValue() (*glib.Value, error) {
|
||||
out := glib.Value(*v)
|
||||
return &out, nil
|
||||
val := (*glib.Value)(v)
|
||||
return val.Copy()
|
||||
}
|
||||
|
Reference in New Issue
Block a user