Age | Commit message (Collapse) | Author |
|
|
|
The posix_fallocate function should only be used with regular files.
|
|
FreeBSD does not allow to use posix_fallocate on shared memory objects.
|
|
xcursor: Fix heap overflows when parsing malicious files
|
|
It is possible to trigger heap overflows due to an integer overflow
while parsing images.
The integer overflow occurs because the chosen limit 0x10000 for
dimensions is too large for 32 bit systems, because each pixel takes
4 bytes. Properly chosen values allow an overflow which in turn will
lead to less allocated memory than needed for subsequent reads.
See also:
https://cgit.freedesktop.org/xorg/lib/libXcursor/commit/?id=4794b5dd34688158fb51a2943032569d3780c4b8
https://gitlab.freedesktop.org/wayland/wayland/commit/5d201df72f3d4f4cb8b8f75f980169b03507da38
|
|
Use _POSIX_C_SOURCE, use shm_open
|
|
|
|
|
|
Fix damage tracking for surfaces with transforms
|
|
render/gles2: remove assumptions about supported formats
|
|
Transforms were applied, but scale wasn't.
|
|
|
|
Since the format used by DRM is GBM_FORMAT_ARGB8888, we need at least a R, G, B
and A channel.
|
|
We were assuming GL_BGRA_EXT was always supported.
We now check that it's supported for rendering. We fail if it isn't because
this format is specified as "always supported" by the Wayland protocol.
We also check if it's supported for reading pixels. A new preferred_read_format
function returns the preferred format that can be used to read pixels. This is
used by the screencopy protocol.
|
|
rootston: fix segfault in view_at
|
|
backend/drm: fix frame scheduling on secondary GPUs
|
|
backend/drm: add WLR_DRM_NO_ATOMIC_GAMMA env variable
|
|
There was a missing copy_drm_surface_mgpu call in drm_connector_schedule_frame
so we asked for a pageflip with an unknown BO, resulting in ENOENT.
Additionally, this commit makes schedule_frame return a bool indicating
failures. This allows schedule_frame_handle_idle_timer to only set
frame_pending to true if a frame has been successfully scheduled. Thus, if a
pageflip fails, rendering won't be blocked forever anymore.
In case a pageflip is already pending, true is returned because a frame has
already been scheduled and will be sent sometime soon.
|
|
This allows the legacy interface to be used instead of atomic if needed. This
is a workaround to make some Intel GPUs work (if this variable is unset) as
well as to make some AMD GPUs work (if this variable is set).
|
|
|
|
Make sure the view is mapped.
|
|
util: use shm_open for in-memory files
|
|
We don't require it, Xwayland doesn't require it, and all X11 apps I tried
don't need it.
|
|
shm_open is a POSIX function creating an in-memory file. Using it simplifies
the code and removes the dependency on XDG_RUNTIME_DIR. The only downside is
that we need to generate a random name for the shm file.
|
|
input-method-v2: initialize destroy signal
|
|
render: on Wayland, make eglSwapBuffers non-blocking
|
|
|
|
Fix "variable ‘cursor_default’ set but not used"
|
|
|
|
idle: allow zero timeout
|
|
|
|
Prior to this commit, setting up a zero timeout resulted in a timer that never
expires, which isn't particularly useful.
This commit allows setting up timers that expire immediately, which is useful
to immediately enter idle state.
|
|
Add FreeBSD build
|
|
|
|
xwayland: fix typo to enable transparency
|
|
We spent literally hours trying to debug this. Turns out it's a typo.
Kill me.
|
|
xwm: Unset min/max size hints if they're not used
|
|
|
|
Fix cursor visibility on surface commit
|
|
Fix a few bugs found by the static analyzer
|
|
|
|
output-layout, cursor: fix duplicate cursors
|
|
xwm: Remove child->parent pointer when parent destroys
|
|
|
|
wlr_cursor: make sure the output doesn't have a cursor before
creating a new one
wlr_output_layout: don't emit the "add" event when the output is
already in the layout
|
|
data-device: remove wlr_data_source.seat_client
|
|
Remove fmt parameter from wlr_texture_write_pixels
|
|
xwayland: handle configure event mask
|
|
|
|
text-input: Don't reject enable requests when unfocused
|