swayfx/sway
Ryan Dwyer 9642b87b9e Fix crash when views rapidly map and unmap
Suppose the following:

* Transactions are already in progress - say transaction A.
* View A maps, which creates transaction B and appends it to the
transaction queue.
* View B maps, which creates transaction C and appends it to the queue.
* View A unmaps, which creates transaction D and appends it to the
queue.
* Transaction A completes, so transaction B attempts to save View A's
buffer, but this doesn't exist so it saves nothing.
* Rendering code attempts to render View A, but there is no saved buffer
nor live buffer that it can use.

Rather than implement an elaborate solution for a rare circumstance,
I've take the safe option of just not rendering anything for that view.
It means that if you reproduce the scenario above, you might get the
title and borders rendered but no surface.
2018-09-06 11:39:52 +10:00
..
commands Allow marked containers to be moved out of the scratchpad via move command 2018-09-05 18:01:43 +10:00
config Call wlr_output_enable on enable/disable if needed 2018-09-05 14:00:00 -04:00
desktop Fix crash when views rapidly map and unmap 2018-09-06 11:39:52 +10:00
input Fix clicking workspace buttons 2018-09-05 18:01:43 +10:00
tree Call wlr_output_enable on enable/disable if needed 2018-09-05 14:00:00 -04:00
base64.c Rework get_clipboard implementation 2017-07-07 21:51:34 +02:00
commands.c Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
config.c Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
criteria.c Fix inversed condition in criteria 2018-09-05 18:01:43 +10:00
debug-tree.c Don't use wlr_output properties 2018-09-05 18:01:43 +10:00
decoration.c Handle views created after decoration mode is sent for xdg-shell 2018-08-06 15:20:30 +01:00
ipc-json.c Fix swaybars with no defined output 2018-09-05 18:01:43 +10:00
ipc-server.c Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
main.c Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
meson.build Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
security.c Add minimal config subsystem 2017-12-05 10:40:55 +01:00
server.c Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
sway-bar.5.scd Add sway-bar(5) 2018-05-11 21:13:43 -04:00
sway-input.5.scd Escaping underscores in tap_button_map 2018-07-29 14:47:53 +02:00
sway.1.scd delete references to swaygrab 2018-07-30 16:24:46 +01:00
sway.5.scd commands: implement move absolute 2018-08-20 10:17:32 +01:00
swaynag.c Fix compiler errors. 2018-08-05 00:24:44 -07:00