Browse Source

nupa_substitute(), break sooner

pre-master-46
rlar 10 years ago
parent
commit
c06dddc4db
  1. 24
      src/frontend/numparam/xpressn.c

24
src/frontend/numparam/xpressn.c

@ -1202,6 +1202,8 @@ nupa_substitute(dico_t *dico, const char *s, char *r)
for (;; kptr++) { for (;; kptr++) {
char d = *kptr; char d = *kptr;
if (d == '\0')
break;
if (d == '{') if (d == '{')
nnest++; nnest++;
@ -1211,9 +1213,6 @@ nupa_substitute(dico_t *dico, const char *s, char *r)
if (nnest == 0) { if (nnest == 0) {
break; break;
} }
if (d == '\0') {
break;
}
} }
if (*kptr == '\0') { if (*kptr == '\0') {
@ -1255,19 +1254,16 @@ nupa_substitute(dico_t *dico, const char *s, char *r)
for (;; kptr++) { for (;; kptr++) {
char d; char d;
if (kptr >= s_end)
d = '\0';
else
d = *kptr;
if (kptr >= s_end) {
break;
}
d = *kptr;
if (d == '(') if (d == '(')
level++; level++;
else if (d == ')') else if (d == ')')
level--; level--;
if (kptr >= s_end) {
break;
}
if ((d == ')') && (level <= 0)) { if ((d == ')') && (level <= 0)) {
break; break;
} }
@ -1289,13 +1285,9 @@ nupa_substitute(dico_t *dico, const char *s, char *r)
char d; char d;
if (kptr >= s_end) if (kptr >= s_end)
d = '\0';
else
d = *kptr;
if (kptr >= s_end) {
break; break;
}
d = *kptr;
if (d <= ' ') { if (d <= ' ') {
break; break;
} }

Loading…
Cancel
Save