if (strlen(name) >= STRINGS_STRING_SIZE)
return MR_ARG_TOO_LONG;
id = add_string(name);
- cache_entry(name, STRINGS_TABLE, id);
*(int *)argv[vo->index] = id;
return MR_EXISTS;
}
* that we're trying to resolve, we should get the value of
* numvalues.[idfield] for the id.
*/
- if (vo->idfield && !strcmp(argv[0], argv[vo->index]))
+ if (vo->idfield && (*(int *)argv[0] == *(int *)argv[vo->index]))
{
set_next_object_id(q->validate->object_id, q->rtable, 0);
name = vo->idfield;
if (strlen(name) >= STRINGS_STRING_SIZE)
return MR_ARG_TOO_LONG;
id = add_string(name);
- cache_entry(name, STRINGS_TABLE, id);
}
else if (status)
return status;
}
- else if (!strcmp(data_type, "none"))
+ else if (!strcmp(data_type, "none") || !strcmp(data_type, "all"))
id = 0;
else
return MR_TYPE;
strcpy(p, "-1");
return MR_EXISTS;
}
- if (!*p)
- return MR_INTEGER;
if (*p == '-')
p++;
+ if (!*p)
+ return MR_INTEGER;
+
for (; *p; p++)
{
if (*p < '0' || *p > '9')