gallium: Implement debug_get_num_option.

For numeric options.
This commit is contained in:
José Fonseca
2008-06-10 23:22:12 +09:00
parent f61923441f
commit 23422d603a
2 changed files with 29 additions and 3 deletions

View File

@@ -230,8 +230,34 @@ debug_get_bool_option(const char *name, boolean dfault)
long
debug_get_num_option(const char *name, long dfault)
{
/* FIXME */
return dfault;
long result;
const char *str;
str = debug_get_option(name, NULL);
if(!str)
result = dfault;
else {
long sign;
char c;
c = *str++;
if(c == '-') {
sign = -1;
c = *str++;
}
else {
sign = 1;
}
result = 0;
while('0' <= c && c <= '9') {
result = result*10 + (c - '0');
c = *str++;
}
result *= sign;
}
debug_printf("%s: %s = %li\n", __FUNCTION__, name, result);
return result;
}