[PATCH] Further job parsing fixes
diff --git a/fio-ini.c b/fio-ini.c
index eca7e2f..2941a67 100644
--- a/fio-ini.c
+++ b/fio-ini.c
@@ -336,7 +336,7 @@
char *str;
int len;
- str = strstr(p, "=");
+ str = strchr(p, '=');
if (!str)
return 1;
@@ -384,7 +384,7 @@
if (!s)
return 1;
- s = strstr(s, "=");
+ s = strchr(s, '=');
if (!s)
return 1;
@@ -400,7 +400,7 @@
if (!s)
return 1;
- s = strstr(p, "=");
+ s = strchr(p, '=');
if (!s)
return 1;
@@ -470,14 +470,19 @@
static int check_int(char *p, char *name, unsigned int *val)
{
- char str[128];
+ char *str;
- sprintf(str, "%s=%%d", name);
- if (sscanf(p, str, val) == 1)
- return 0;
+ str = strstr(p, name);
+ if (!str)
+ return 1;
- sprintf(str, "%s = %%d", name);
- if (sscanf(p, str, val) == 1)
+ str = strchr(p, '=');
+ if (!str)
+ return 1;
+
+ str++;
+
+ if (sscanf(str, "%u", val) == 1)
return 0;
return 1;