aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-07-04surface: fix previous state eating current state resourcesemersion
2018-07-04output: fix cursor attach coords handlingemersion
2018-07-04surface: add wlr_surface.previousemersion
2018-07-04surface: move position and scale out of wlr_surface_stateemersion
2018-07-04surface: do not monkey-patch state damageemersion
2018-07-04surface: better buffer position handlingemersion
2018-07-04surface: fix WLR_SURFACE_STATE_BUFFER_DAMAGE valueemersion
2018-07-04surface: make pending and current embedded structsemersion
2018-07-04surface: remove wlr_surface_state.subsurface_positionemersion
2018-07-04surface: rename invalid stateemersion
2018-07-04Merge pull request #1112 from emersion/fix-debug-damage-trackingDrew DeVault
Fix damage tracking debug mode
2018-07-04Fix damage tracking debug modeemersion
2018-07-04Merge pull request #1111 from martinetd/wlr-seat-destroyDrew DeVault
wlr_seat destroy: fix use-after-free when destroying clients
2018-07-04wlr_seat destroy: fix use-after-free when destroying clientsDominique Martinet
wl_resource_for_each_safe isn't safe to use here because it accesses the list's head memory one last time at the end of the loop. Work around this by breaking out early. ==19880==ERROR: AddressSanitizer: heap-use-after-free on address 0x60d0000e6368 at pc 0x7fab68619de2 bp 0x7ffd5c91cee0 sp 0x7ffd5c91ced0 READ of size 8 at 0x60d0000e6368 thread T0 #0 0x7fab68619de1 in wlr_seat_destroy ../types/seat/wlr_seat.c:179 #1 0x7fab68619fb9 in handle_display_destroy ../types/seat/wlr_seat.c:196 #2 0x7fab688e4f8f in wl_priv_signal_emit src/wayland-server.c:2024 #3 0x7fab688e56ca in wl_display_destroy src/wayland-server.c:1092 #4 0x40c11e in server_fini ../sway/server.c:138 #5 0x40b1a8 in main ../sway/main.c:438 #6 0x7fab67b5e18a in __libc_start_main ../csu/libc-start.c:308 #7 0x409359 in _start (/opt/wayland/bin/sway+0x409359) 0x60d0000e6368 is located 24 bytes inside of 144-byte region [0x60d0000e6350,0x60d0000e63e0) freed by thread T0 here: #0 0x7fab6a7d6880 in __interceptor_free (/lib64/libasan.so.5+0xee880) #1 0x7fab68619805 in seat_client_handle_resource_destroy ../types/seat/wlr_seat.c:97 #2 0x7fab688e5025 in destroy_resource src/wayland-server.c:688 previously allocated by thread T0 here: #0 0x7fab6a7d6e50 in calloc (/lib64/libasan.so.5+0xeee50) #1 0x7fab686198df in seat_handle_bind ../types/seat/wlr_seat.c:127 #2 0x7fab6530503d in ffi_call_unix64 (/lib64/libffi.so.6+0x603d)
2018-07-03Merge pull request #1110 from apreiml/fix-focus-stack-changeDrew DeVault
fix: add stack update on focus change
2018-07-03fix style issueArmin Preiml
2018-07-03fix: add stack update on focus changeArmin Preiml
Enable the stack update again for focus changes on non-focusable views.
2018-07-03Merge pull request #1107 from ammen99/masteremersion
properly check if the point is inside the surface in wlr_surface_pointer_accepts_input
2018-07-03properly check if the point is inside the surface in ↵Ilia Bozhinov
wlr_surface_point_accepts_input
2018-07-01Merge pull request #1105 from RyanDwyer/xdg-surface-for-each-popupDrew DeVault
Introduce wlr_xdg_surface_for_each_popup
2018-07-01Introduce wlr_xdg_surface_for_each_popupRyan Dwyer
It is common to want to iterate an xdg-surface's popups separately from the toplevel and subsurfaces. For example, popups are typically rendered on top of most other surfaces. wlr_xdg_surface_for_each_surface continues to iterate both surfaces and popups to maintain backwards compatibility.
2018-07-01Merge pull request #1106 from martinetd/seat-destroy-uafemersion
wlr_seat destroy: fix use-after-free after primary selection source cancel
2018-07-01wlr_seat destroy: fix use-after-free after primary selection source cancelDominique Martinet
the primary_selection_source_destroy list points to memory freed by that cancel callback, so remove from list before freeing
2018-06-30Merge pull request #1104 from VincentVanlaer/logind-fd-leakDrew DeVault
Close fd's obtained from logind
2018-07-01Close fd's obtained from logindVincent Vanlaer
2018-06-30Merge pull request #1069 from emersion/screencopyDrew DeVault
Add wlr-screencopy-unstable-v1 support
2018-06-30render/gles2: ditch extra parensemersion
2018-06-30examples/screencopy: use libpngemersion
2018-06-30screencopy: listen to buffer destroyemersion
2018-06-30screencopy: make frame resource inert after copyemersion
2018-06-30screncopy: update protocolemersion
2018-06-30screencopy: add capture_output_region supportemersion
2018-06-30screencopy: add support for frame flagsemersion
2018-06-30screencopy: add presentation timestampemersion
2018-06-30screencopy-v1: add basic implementationemersion
2018-06-30Merge pull request #1102 from martinetd/wlr-subsurface-from-wlr-surfaceDrew DeVault
s/wlr_subsurface_from_surface/wlr_subsurface_from_wlr_surface/
2018-06-30s/wlr_subsurface_from_surface/wlr_subsurface_from_wlr_surface/Dominique Martinet
This was the only x_from_wlr_surface function that lacked the wlr_ prefix, let's have an API as uniform as possible.
2018-06-30Merge pull request #1101 from martinetd/static-analysisemersion
Static analysis fixes
2018-06-30headless add_input_device: fix leak on errorDominique Martinet
Found through static analysis
2018-06-30export dmabuf manager_handle_capture_output: fix leak on errorDominique Martinet
Found through static analysis
2018-06-30backend autocreate: fix leak when WLR_BACKENDS is setDominique Martinet
Found through static analysis
2018-06-30wayland backend: fix width/height == 0 checkDominique Martinet
We cannot handle just one of the two being NULL later down the road (e.g. divide by zero in matrix projection code), just ignore any such configure request. Found through static analysis
2018-06-30wlr_renderer_destroy: fix renderer NULL checkDominique Martinet
renderer is checked for NULL, but was dereferenced before that. Found through static analysis
2018-06-30wlr_output: fix scope for 'now'Dominique Martinet
'when' points to now that was defined in the if, so compiler could reuse that memory area by the time 'when' is called Found through static analysis.
2018-06-30util/create_tmpfile: set restrictive umask for these filesDominique Martinet
Even if the file is removed right away, a race with someone using inotify is definitely possible, so play safe and restrict umask for our tmpfiles Found through static analysis.
2018-06-30wlr_keyboard: fix mmap leak + logic on close for keymap_fdDominique Martinet
mmap leak found through static analysis
2018-06-30direct session backend: fix closing -1 on errorDominique Martinet
Found through static analysis
2018-06-30rootston: fix leak in handle_layer_shell_surfaceDominique Martinet
Found through static analysis
2018-06-30x11 backend init: fix leak on failed XOpenDisplayDominique Martinet
Found through static analysis
2018-06-30wayland backend seat: fix NULL output checkDominique Martinet
The test was done after dereferencing output in pointer_handle_enter, just move it up one line. No reason pointer_handle_leave would not need the check if enter needs it, add it there. Found through static analysis.