From 1a1e2e9892af6eb0be79eaff60e774dd29951fb8 Mon Sep 17 00:00:00 2001
From: capehill <[EMAIL REDACTED]>
Date: Sun, 13 Oct 2024 13:17:33 +0300
Subject: [PATCH] Set size parameter in SDL_GetClipboardData()
Update size value in case where platform uses GetClipboardText().
This should fix clipboard_testClipboardDataFunctions on those platforms.
---
src/video/SDL_clipboard.c | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/src/video/SDL_clipboard.c b/src/video/SDL_clipboard.c
index 9d663980bf49d..93493673585ab 100644
--- a/src/video/SDL_clipboard.c
+++ b/src/video/SDL_clipboard.c
@@ -196,9 +196,13 @@ void *SDL_GetClipboardData(const char *mime_type, size_t *size)
return _this->GetClipboardData(_this, mime_type, size);
} else if (_this->GetClipboardText && SDL_IsTextMimeType(mime_type)) {
char *text = _this->GetClipboardText(_this);
- if (text && *text == '\0') {
- SDL_free(text);
- text = NULL;
+ if (text) {
+ if (*text == '\0') {
+ SDL_free(text);
+ text = NULL;
+ } else {
+ *size = SDL_strlen(text);
+ }
}
return text;
} else {