Compare commits

...

4 Commits

Author SHA1 Message Date
Ivan
8d05f49e4c
Merge dfb325bba9 into 936307558e 2025-11-08 12:44:33 +01:00
Doug Binks
936307558e X11: Clamp w,h in glfwSetWindowSize to >= 1
-  prevents BadValue error and program exit
2025-11-08 10:37:52 +00:00
Payn
dfb325bba9 Update README.md and CONTRIBUTORS.md 2025-10-10 21:30:35 -03:00
Payn
d9add3eb3d Wayland: Use more accurate monitor names 2025-10-10 20:54:03 -03:00
4 changed files with 14 additions and 6 deletions

View File

@ -301,6 +301,7 @@ video tutorials.
- Jonas Ådahl
- Lasse Öörni
- Leonard König
- Ivan Souza
- All the unmentioned and anonymous contributors in the GLFW community, for bug
reports, patches, feedback, testing and encouragement

View File

@ -144,14 +144,16 @@ information on what to include when reporting a bug.
a modal to a fallback decoration
- [Wayland] Bugfix: The cursor position was not updated when clicking through
from a modal to the content area
- [Wayland] Bugfix: Use more accurate monitor names
- [X11] Bugfix: Running without a WM could trigger an assert (#2593,#2601,#2631)
- [X11] Bugfix: Occasional crash when an idle display awakes (#2766)
- [X11] Bugfix: Prevent BadWindow when creating small windows with a content scale
less than 1 (#2754)
- [X11] Bugfix: Clamp width and height to >= 1 to prevent BadValue error and app exit
- [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
`GLFW_NATIVE_CONTEXT_API` (#2518)
- [X11] Bugfix: Prevent BadWindow when creating small windows with a content scale
less than 1 (#2754)
## Contact

View File

@ -55,9 +55,6 @@ static void outputHandleGeometry(void* userData,
monitor->wl.y = y;
monitor->widthMM = physicalWidth;
monitor->heightMM = physicalHeight;
if (strlen(monitor->name) == 0)
snprintf(monitor->name, sizeof(monitor->name), "%s %s", make, model);
}
static void outputHandleMode(void* userData,
@ -133,13 +130,17 @@ void outputHandleName(void* userData, struct wl_output* wl_output, const char* n
{
struct _GLFWmonitor* monitor = userData;
strncpy(monitor->name, name, sizeof(monitor->name) - 1);
if (strlen(monitor->name) == 0)
strncpy(monitor->name, name, sizeof(monitor->name) - 1);
}
void outputHandleDescription(void* userData,
struct wl_output* wl_output,
const char* description)
{
struct _GLFWmonitor* monitor = userData;
strncpy(monitor->name, description, sizeof(monitor->name) - 1);
}
static const struct wl_output_listener outputListener =

View File

@ -2207,6 +2207,10 @@ void _glfwGetWindowSizeX11(_GLFWwindow* window, int* width, int* height)
void _glfwSetWindowSizeX11(_GLFWwindow* window, int width, int height)
{
// The dimensions must be nonzero, or a BadValue error results.
width = _glfw_max(1, width);
height = _glfw_max(1, height);
if (window->monitor)
{
if (window->monitor->window == window)