client *cl)
{
char **argv;
- int status;
+ int status, idx;
+
+ if (q->version < 8)
+ idx = 0;
+ else
+ idx = 3;
while (sq_get_data(sq, &argv))
{
mr_trim_args(q->vcnt, argv);
- status = fix_ace(argv[7], &argv[8]);
+ status = fix_ace(argv[7 + idx], &argv[8 + idx]);
if (status && status != MR_NO_MATCH)
return status;
}
if (q->version < 6)
idx = 0;
- else
+ else if (q->version >= 6 && q->version < 8)
idx = 1;
+ else
+ idx = 2;
while (sq_get_data(sq, &argv))
{