nupa_substitute(), cleanup

This commit is contained in:
rlar 2016-05-14 15:48:18 +02:00
parent 6a003e52d1
commit 39b544aba1
1 changed files with 7 additions and 9 deletions

View File

@ -1208,21 +1208,20 @@ nupa_substitute(dico_t *dico, const char *s, char *r)
else if (d == '}') else if (d == '}')
nnest--; nnest--;
if (nnest == 0) { if (nnest == 0)
break; break;
}
} }
if (*kptr == '\0') { if (*kptr == '\0') {
err = message(dico, "Closing \"}\" not found.\n"); err = message(dico, "Closing \"}\" not found.\n");
} else { } else {
/* exeption made for .meas */ /* exeption made for .meas */
if (s + 4 == kptr + 1 - 1 && strncasecmp(s, "LAST", 4) == 0) { if (s + 4 == kptr && strncasecmp(s, "LAST", 4) == 0) {
spice_dstring_reinit(&qstr); spice_dstring_reinit(&qstr);
sadd(&qstr, "last"); sadd(&qstr, "last");
err = 0; err = 0;
} else { } else {
err = evaluate_expr(dico, &qstr, s, kptr + 1 - 1); err = evaluate_expr(dico, &qstr, s, kptr);
} }
} }
@ -1258,15 +1257,14 @@ nupa_substitute(dico_t *dico, const char *s, char *r)
else if (d == ')') else if (d == ')')
level--; level--;
if ((d == ')') && (level <= 0)) { if ((d == ')') && (level <= 0))
break; break;
}
} }
if (kptr >= s_end) { if (kptr >= s_end) {
err = message(dico, "Closing \")\" not found.\n"); err = message(dico, "Closing \")\" not found.\n");
} else { } else {
err = evaluate_expr(dico, &qstr, s, kptr + 1 - 1); err = evaluate_expr(dico, &qstr, s, kptr);
} }
s = kptr + 1; s = kptr + 1;
@ -1279,8 +1277,8 @@ nupa_substitute(dico_t *dico, const char *s, char *r)
if (*kptr <= ' ') if (*kptr <= ' ')
break; break;
err = evaluate_variable(dico, &qstr, s - 1, kptr + 1 - 1); err = evaluate_variable(dico, &qstr, s - 1, kptr);
s = kptr + 1 - 1; s = kptr;
} }
if (!err) if (!err)