mirror of https://github.com/tmux/tmux.git
Trim can generate strings longer than the original if there are many #s,
so create a bigger buffer. Reported by Robert Morris.pull/3661/head
parent
b13c230749
commit
a5fd80bbc3
|
@ -1083,7 +1083,7 @@ format_trim_left(const char *expanded, u_int limit)
|
||||||
struct utf8_data ud;
|
struct utf8_data ud;
|
||||||
enum utf8_state more;
|
enum utf8_state more;
|
||||||
|
|
||||||
out = copy = xcalloc(1, strlen(expanded) + 1);
|
out = copy = xcalloc(2, strlen(expanded) + 1);
|
||||||
while (*cp != '\0') {
|
while (*cp != '\0') {
|
||||||
if (width >= limit)
|
if (width >= limit)
|
||||||
break;
|
break;
|
||||||
|
@ -1150,7 +1150,7 @@ format_trim_right(const char *expanded, u_int limit)
|
||||||
return (xstrdup(expanded));
|
return (xstrdup(expanded));
|
||||||
skip = total_width - limit;
|
skip = total_width - limit;
|
||||||
|
|
||||||
out = copy = xcalloc(1, strlen(expanded) + 1);
|
out = copy = xcalloc(2, strlen(expanded) + 1);
|
||||||
while (*cp != '\0') {
|
while (*cp != '\0') {
|
||||||
if (*cp == '#') {
|
if (*cp == '#') {
|
||||||
end = format_leading_hashes(cp, &n, &leading_width);
|
end = format_leading_hashes(cp, &n, &leading_width);
|
||||||
|
|
Loading…
Reference in New Issue