From a77abe312b4509d135246106e1fcf11cacc39954 Mon Sep 17 00:00:00 2001 From: light7734 Date: Sat, 27 Sep 2025 23:32:21 +0330 Subject: [PATCH] fix(surface): not checking if surface component has initialized x11 native data --- modules/renderer/private/vk/context/surface.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/modules/renderer/private/vk/context/surface.cpp b/modules/renderer/private/vk/context/surface.cpp index b446d4d..27f7e57 100644 --- a/modules/renderer/private/vk/context/surface.cpp +++ b/modules/renderer/private/vk/context/surface.cpp @@ -1,3 +1,4 @@ +#include #include #include @@ -7,6 +8,9 @@ Surface::Surface(const ecs::Entity &surface_entity) { const auto &component = surface_entity.get(); + esnure(component.get_native_data().display, "Failed to initialize usrface: null x-display"); + esnure(component.get_native_data().window, "Failed to initialize usrface: null x-window"); + auto create_info = VkXlibSurfaceCreateInfoKHR { .sType = VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR, .dpy = component.get_native_data().display, @@ -14,7 +18,7 @@ Surface::Surface(const ecs::Entity &surface_entity) }; auto *instance = Instance::get(); - vkc(vk_create_xlib_surface_khr(instance, &create_info, nullptr, &m_surface)); + auto result = vk_create_xlib_surface_khr(instance, &create_info, nullptr, &m_surface); const auto &[width, height] = component.get_resolution(); m_framebuffer_size = {