Method
GLibVariantget_normal_form
since: 2.24
Declaration [src]
GVariant*
g_variant_get_normal_form (
GVariant* value
)
Description [src]
Gets a GVariant
instance that has the same value as value
and is
trusted to be in normal form.
If value
is already trusted to be in normal form then a new
reference to value
is returned.
If value
is not already trusted, then it is scanned to check if it
is in normal form. If it is found to be in normal form then it is
marked as trusted and a new reference to it is returned.
If value
is found not to be in normal form then a new trusted
GVariant
is created with the same value as value
. The non-normal parts of
value
will be replaced with default values which are guaranteed to be in
normal form.
It makes sense to call this function if you’ve received GVariant
data from untrusted sources and you want to ensure your serialized
output is definitely in normal form.
If value
is already in normal form, a new reference will be returned
(which will be floating if value
is floating). If it is not in normal form,
the newly created GVariant
will be returned with a single non-floating
reference. Typically, g_variant_take_ref()
should be called on the return
value from this function to guarantee ownership of a single non-floating
reference to it.
Available since: 2.24
Return value
Type: GVariant
A trusted GVariant
.
The caller of the method takes ownership of the returned data, and is responsible for freeing it. |