mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-17 19:55:32 +00:00
value: fix parsing of explicit value casts
Since acdb4ce03d
, parsing of the
value for a property can use the pspec to determine what type
a value should be casted to.
However, this broke the case where the value is explicitly casted
to a type (eg <(float) 0.0>). In that situation, we want to respect
the casting decision, and only use the pspec to perform "implicit"
casts.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/881
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/772>
This commit is contained in:
parent
44bdad58f6
commit
12661d90a3
1 changed files with 3 additions and 3 deletions
|
@ -2754,9 +2754,7 @@ _priv_gst_value_parse_value (gchar * str,
|
|||
/* check if there's a (type_name) 'cast' */
|
||||
type_name = NULL;
|
||||
|
||||
if (pspec) {
|
||||
type = G_PARAM_SPEC_VALUE_TYPE (pspec);
|
||||
} else if (*s == '(') {
|
||||
if (*s == '(') {
|
||||
s++;
|
||||
while (g_ascii_isspace (*s))
|
||||
s++;
|
||||
|
@ -2782,6 +2780,8 @@ _priv_gst_value_parse_value (gchar * str,
|
|||
GST_WARNING ("invalid type");
|
||||
return FALSE;
|
||||
}
|
||||
} else if (pspec) {
|
||||
type = G_PARAM_SPEC_VALUE_TYPE (pspec);
|
||||
}
|
||||
|
||||
while (g_ascii_isspace (*s))
|
||||
|
|
Loading…
Reference in a new issue