+2008-03-03 Andy Wingo <wingo@pobox.com>
+
+ * tests/check/gst/gststructure.c (GST_START_TEST): Add a check for
+ the new warning.
+
+ * gst/gststructure.c (gst_structure_from_string): Warn if
+ structure_from_string didn't consume the whole string, but the
+ caller did not provide an end pointer.
+
2008-03-01 Tim-Philipp Müller <tim at centricular dot net>
Patch by: Fabrizio Gennari <fabrizio.ge at tiscali it>
-Subproject commit 4fa1159996900100f3a1cd3b43d7f0f027310cdb
+Subproject commit 8ede243026af26e496d775b46ded7988ce883080
if (end)
*end = (char *) string + (r - copy);
+ else if (*r)
+ g_warning ("gst_structure_from_string did not consume whole string,"
+ " but caller did not provide end pointer (\"%s\")", string);
g_free (copy);
return structure;
s = "***foo***, abc=(boolean)false";
structure = gst_structure_from_string (s, NULL);
fail_unless (structure == NULL);
+
+ /* assert that we get a warning if the structure wasn't entirely consumed, but
+ * we didn't provide an end pointer */
+ s = "foo/bar; other random data";
+ ASSERT_WARNING (structure = gst_structure_from_string (s, NULL));
+ fail_if (structure == NULL, "Could not get structure from string %s", s);
+ gst_structure_free (structure);
}
GST_END_TEST;