Returns the string value of a #GVariant instance with a string
type. This includes the types %G_VARIANT_TYPE_STRING,
%G_VARIANT_TYPE_OBJECT_PATH and %G_VARIANT_TYPE_SIGNATURE.
The string will always be UTF-8 encoded, will never be %NULL, and will never
contain nul bytes.
If @length is non-%NULL then the length of the string (in bytes) is
returned there. For trusted values, this information is already
known. Untrusted values will be validated and, if valid, a strlen() will be
performed. If invalid, a default value will be returned — for
%G_VARIANT_TYPE_OBJECT_PATH, this is "/", and for other types it is the
empty string.
It is an error to call this function with a @value of any type
other than those three.
The return value remains valid as long as @value exists.
Returns the string value of a #GVariant instance with a string type. This includes the types %G_VARIANT_TYPE_STRING, %G_VARIANT_TYPE_OBJECT_PATH and %G_VARIANT_TYPE_SIGNATURE.
The string will always be UTF-8 encoded, will never be %NULL, and will never contain nul bytes.
If @length is non-%NULL then the length of the string (in bytes) is returned there. For trusted values, this information is already known. Untrusted values will be validated and, if valid, a strlen() will be performed. If invalid, a default value will be returned — for %G_VARIANT_TYPE_OBJECT_PATH, this is "/", and for other types it is the empty string.
It is an error to call this function with a @value of any type other than those three.
The return value remains valid as long as @value exists.