diff --git a/format.c b/format.c index 96b6585b..48629d38 100644 --- a/format.c +++ b/format.c @@ -5221,11 +5221,13 @@ format_replace(struct format_expand_state *es, const char *key, size_t keylen, done: /* Expand again if required. */ if (modifiers & FORMAT_EXPAND) { - new = format_expand1(es, value); + format_copy_state(&next, es, FORMAT_EXPAND_NOJOBS); + new = format_expand1(&next, value); free(value); value = new; } else if (modifiers & FORMAT_EXPANDTIME) { - format_copy_state(&next, es, FORMAT_EXPAND_TIME); + format_copy_state(&next, es, FORMAT_EXPAND_TIME| + FORMAT_EXPAND_NOJOBS); new = format_expand1(&next, value); free(value); value = new;