Quellcode durchsuchen

Wayland: Fix possible segfault on drag enter

Found with Clang static analysis.
Camilla Löwy vor 1 Jahr
Ursprung
Commit
51b6434ac4
2 geänderte Dateien mit 2 neuen und 1 gelöschten Zeilen
  1. 1 0
      README.md
  2. 1 1
      src/wl_window.c

+ 1 - 0
README.md

@@ -127,6 +127,7 @@ information on what to include when reporting a bug.
  - [Cocoa] Removed support for OS X 10.10 Yosemite and earlier (#2506)
  - [Wayland] Bugfix: The fractional scaling related objects were not destroyed
  - [Wayland] Bugfix: `glfwInit` would segfault on compositor with no seat (#2517)
+ - [Wayland] Bugfix: A drag entering a non-GLFW surface could cause a segfault
  - [Null] Added Vulkan 'window' surface creation via `VK_EXT_headless_surface`
  - [Null] Added EGL context creation on Mesa via `EGL_MESA_platform_surfaceless`
  - [EGL] Allowed native access on Wayland with `GLFW_CONTEXT_CREATION_API` set to

+ 1 - 1
src/wl_window.c

@@ -1986,7 +1986,7 @@ static void dataDeviceHandleEnter(void* userData,
                     window = wl_surface_get_user_data(surface);
             }
 
-            if (surface == window->wl.surface && _glfw.wl.offers[i].text_uri_list)
+            if (window && surface == window->wl.surface && _glfw.wl.offers[i].text_uri_list)
             {
                 _glfw.wl.dragOffer = offer;
                 _glfw.wl.dragFocus = window;