From f599019a990725349c9e3cbeb99b69c00a9d0c42 Mon Sep 17 00:00:00 2001 From: David Schleef Date: Wed, 24 Jul 2013 10:29:30 -0700 Subject: [PATCH] info: parse debug levels > 9 --- gst/gstinfo.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/gst/gstinfo.c b/gst/gstinfo.c index 0660ed7..4419817 100644 --- a/gst/gstinfo.c +++ b/gst/gstinfo.c @@ -1717,9 +1717,15 @@ parse_debug_level (gchar * str, GstDebugLevel * level) /* works in place */ g_strstrip (str); - if (str[0] != '\0' && str[1] == '\0' - && str[0] >= '0' && str[0] < '0' + GST_LEVEL_COUNT) { - *level = (GstDebugLevel) (str[0] - '0'); + if (g_ascii_isdigit (str[0])) { + unsigned long l; + char *endptr; + l = strtoul (str, &endptr, 10); + if (endptr > str && endptr[0] == 0) { + *level = (GstDebugLevel) l; + } else { + return FALSE; + } } else if (strcmp (str, "ERROR") == 0) { *level = GST_LEVEL_ERROR; } else if (strncmp (str, "WARN", 4) == 0) { -- 2.7.4