diff --git a/ChangeLog b/ChangeLog index 2e01739d0c..a7c94368aa 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2005-09-29 Tim-Philipp Müller + + * gst/gstvalue.c: (gst_value_deserialize_fraction): + More robust fraction string parsing. + + * docs/pwg/appendix-porting.xml: + Mention gst_pad_use_explicit_caps() => gst_pad_use_fixed_caps() + 2005-09-29 Tim-Philipp Müller * gst/gstcaps.c: (gst_caps_do_simplify): diff --git a/docs/pwg/appendix-porting.xml b/docs/pwg/appendix-porting.xml index 80ec4503e4..0de6bcad6a 100644 --- a/docs/pwg/appendix-porting.xml +++ b/docs/pwg/appendix-porting.xml @@ -176,6 +176,13 @@ then override the set_caps (). + + + gst_pad_use_explicit_caps () has been replaced by + gst_pad_use_fixed_caps (). You can then set the + fixed caps to use on a pad with gst_pad_set_caps (). + + diff --git a/gst/gstvalue.c b/gst/gstvalue.c index 84755d7f7e..813eb3b917 100644 --- a/gst/gstvalue.c +++ b/gst/gstvalue.c @@ -2823,20 +2823,13 @@ static gboolean gst_value_deserialize_fraction (GValue * dest, const char *s) { gint num, den; - char *div; - char *tmp; - div = strstr (s, "/"); - if (!div) - return FALSE; - tmp = g_strndup (s, (size_t) (div - s)); - num = atoi (tmp); - g_free (tmp); - den = atoi (div + 1); + if (s && sscanf (s, "%d/%d", &num, &den) == 2) { + gst_value_set_fraction (dest, num, den); + return TRUE; + } - gst_value_set_fraction (dest, num, den); - - return TRUE; + return FALSE; } static void