Browse Source

Set size parameter in SDL_GetClipboardData()

Update size value in case where platform uses GetClipboardText().
This should fix clipboard_testClipboardDataFunctions on those platforms.
capehill 6 months ago
parent
commit
1a1e2e9892
1 changed files with 7 additions and 3 deletions
  1. 7 3
      src/video/SDL_clipboard.c

+ 7 - 3
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 {