diff --git a/src/backend/wayland.c b/src/backend/wayland.c index 4d5a82a..31d83e4 100644 --- a/src/backend/wayland.c +++ b/src/backend/wayland.c @@ -2385,8 +2385,11 @@ static void MwLLSetClipboardImpl(MwLL handle, const char* text) { } static void MwLLGetClipboardImpl(MwLL handle) { - (void)handle; - /* no-op */ + int i; + for(i = 0; i < arrlen(handle->wayland.clipboard_devices); i++) { + wl_clipboard_read( + handle->wayland.clipboard_devices[i]); + } return; } diff --git a/src/widget/entry.c b/src/widget/entry.c index 998935b..9c6ed12 100644 --- a/src/widget/entry.c +++ b/src/widget/entry.c @@ -148,7 +148,11 @@ static void prop_change(MwWidget handle, const char* prop) { static void clipboard(MwWidget handle, const char* data) { MwEntry t = handle->internal; const char* str = MwGetText(handle, MwNtext); - char* out = malloc(strlen(str) + strlen(data) + 1); + char* out; + if(!str) { + str = ""; + } + out = malloc(strlen(str) + strlen(data) + 1); if(str == NULL) str = "";