mirror of
https://github.com/tmate-io/tmate.git
synced 2025-01-11 16:38:47 +01:00
Expand formats again inside #(), and free the temporaries.
This commit is contained in:
parent
a55e569af5
commit
74c755f2ab
8
format.c
8
format.c
@ -490,7 +490,7 @@ format_expand_time(struct format_tree *ft, const char *fmt, time_t t)
|
||||
char *
|
||||
format_expand(struct format_tree *ft, const char *fmt)
|
||||
{
|
||||
char *buf, *tmp;
|
||||
char *buf, *tmp, *cmd;
|
||||
const char *ptr, *s;
|
||||
size_t off, len, n, slen;
|
||||
int ch, brackets;
|
||||
@ -530,10 +530,14 @@ format_expand(struct format_tree *ft, const char *fmt)
|
||||
tmp = xmalloc(n + 1);
|
||||
memcpy(tmp, fmt, n);
|
||||
tmp[n] = '\0';
|
||||
cmd = format_expand(ft, tmp);
|
||||
|
||||
s = format_job_get(ft, tmp);
|
||||
s = format_job_get(ft, cmd);
|
||||
slen = strlen(s);
|
||||
|
||||
free(cmd);
|
||||
free(tmp);
|
||||
|
||||
while (len - off < slen + 1) {
|
||||
buf = xreallocarray(buf, 2, len);
|
||||
len *= 2;
|
||||
|
Loading…
Reference in New Issue
Block a user