From 54719a9d3da602644b92cb5ee3333979d5f3b2c2 Mon Sep 17 00:00:00 2001
From: Ethan Lee <[EMAIL REDACTED]>
Date: Thu, 25 Mar 2021 23:58:12 -0400
Subject: [PATCH] wayland: Assign output_len in ShowMessageBox
---
src/video/wayland/SDL_waylandmessagebox.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/src/video/wayland/SDL_waylandmessagebox.c b/src/video/wayland/SDL_waylandmessagebox.c
index 0d9945770..e1a71c65e 100644
--- a/src/video/wayland/SDL_waylandmessagebox.c
+++ b/src/video/wayland/SDL_waylandmessagebox.c
@@ -76,10 +76,17 @@ Wayland_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *buttonid)
}
ADD_ARGUMENT(title_len, title)
ADD_ARGUMENT(message_len, message)
+ #undef ADD_ARGUMENT
for (i = 0; i < messageboxdata->numbuttons; i += 1) {
- ADD_ARGUMENT(extrabutton_len, buttons[i].text)
+ command_len += extrabutton_len + 3; /* Two " and a space */
+ if (messageboxdata->buttons[i].text != NULL) {
+ const size_t button_len = SDL_strlen(messageboxdata->buttons[i].text);
+ command_len += button_len;
+ if (button_len > output_len) {
+ output_len = button_len;
+ }
+ }
}
- #undef ADD_ARGUMENT
/* Don't forget null terminators! */
command_len += 1;