355 |
if (!parse_mixed_vars (&names, &nnames, PV_NONE)) |
if (!parse_mixed_vars (&names, &nnames, PV_NONE)) |
356 |
return 0; |
return 0; |
357 |
|
|
358 |
e->replacement = xrealloc (e->replacement, |
e->replacement = xnrealloc (e->replacement, |
359 |
(nnames + n) * sizeof *e->replacement); |
nnames + n, sizeof *e->replacement); |
360 |
for (i = 0; i < nnames; i++) |
for (i = 0; i < nnames; i++) |
361 |
{ |
{ |
362 |
e->replacement[n + i] = xstrdup (names[i]); |
e->replacement[n + i] = xstrdup (names[i]); |
418 |
if (n + (abs (b - a) + 1) > m) |
if (n + (abs (b - a) + 1) > m) |
419 |
{ |
{ |
420 |
m = n + (abs (b - a) + 1) + 16; |
m = n + (abs (b - a) + 1) + 16; |
421 |
e->replacement = array = xrealloc (array, |
e->replacement = array = xnrealloc (array, |
422 |
m * sizeof *e->replacement); |
m, sizeof *e->replacement); |
423 |
} |
} |
424 |
|
|
425 |
if (a == b) |
if (a == b) |
470 |
if (n + 1 > m) |
if (n + 1 > m) |
471 |
{ |
{ |
472 |
m += 16; |
m += 16; |
473 |
e->replacement = string = xrealloc (string, |
e->replacement = string = xnrealloc (string, |
474 |
m * sizeof *e->replacement); |
m, sizeof *e->replacement); |
475 |
} |
} |
476 |
string[n++] = lex_token_representation (); |
string[n++] = lex_token_representation (); |
477 |
lex_get (); |
lex_get (); |
479 |
lex_match (','); |
lex_match (','); |
480 |
} |
} |
481 |
while (token != '/' && token != '.'); |
while (token != '/' && token != '.'); |
482 |
e->replacement = xrealloc (string, n * sizeof *e->replacement); |
e->replacement = xnrealloc (string, n, sizeof *e->replacement); |
483 |
|
|
484 |
return n; |
return n; |
485 |
} |
} |