sway

i3-compatible Wayland compositor
git clone https://git.awy.one/sway
Log | Files | Refs | README | LICENSE

commit 49cef51e6e7fe31ba4f820560e0b69ebd2149d37
parent 1c69d0e72fe868d0fa2f6d7d9f9b4b3d7a3f78b4
Author: kraftwerk28 <kefirchik3@gmail.com>
Date:   Wed, 15 Jun 2022 18:50:57 +0300

Allocate enough space for `cmd_results->error`

Diffstat:
Msway/commands.c | 14++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/sway/commands.c b/sway/commands.c @@ -485,13 +485,19 @@ struct cmd_results *cmd_results_new(enum cmd_status status, } results->status = status; if (format) { - char *error = malloc(256); + char *error = NULL; va_list args; va_start(args, format); - if (error) { - vsnprintf(error, 256, format, args); - } + int slen = vsnprintf(NULL, 0, format, args); va_end(args); + if (slen > 0) { + error = malloc(slen + 1); + if (error != NULL) { + va_start(args, format); + vsnprintf(error, slen + 1, format, args); + va_end(args); + } + } results->error = error; } else { results->error = NULL;