diff --git a/README.md b/README.md index e7ad5a0c..c453739d 100644 --- a/README.md +++ b/README.md @@ -133,6 +133,7 @@ information on what to include when reporting a bug. - [Wayland] Bugfix: A drag entering a non-GLFW surface could cause a segfault - [Wayland] Bugfix: Ignore key repeat events when no window has keyboard focus (#2727) - [Wayland] Bugfix: Reset key repeat timer when window destroyed (#2741,#2727) + - [Wayland] Bugfix: Memory would leak if reading a data offer failed midway - [X11] Bugfix: Running without a WM could trigger an assert (#2593,#2601,#2631) - [Null] Added Vulkan 'window' surface creation via `VK_EXT_headless_surface` - [Null] Added EGL context creation on Mesa via `EGL_MESA_platform_surfaceless` diff --git a/src/wl_window.c b/src/wl_window.c index 01650182..def3b870 100644 --- a/src/wl_window.c +++ b/src/wl_window.c @@ -1333,6 +1333,7 @@ static char* readDataOfferAsString(struct wl_data_offer* offer, const char* mime if (!longer) { _glfwInputError(GLFW_OUT_OF_MEMORY, NULL); + _glfw_free(string); close(fds[0]); return NULL; } @@ -1352,6 +1353,7 @@ static char* readDataOfferAsString(struct wl_data_offer* offer, const char* mime _glfwInputError(GLFW_PLATFORM_ERROR, "Wayland: Failed to read from data offer pipe: %s", strerror(errno)); + _glfw_free(string); close(fds[0]); return NULL; }