mirror of
https://github.com/swaywm/sway.git
synced 2024-11-26 01:41:30 +00:00
Merge pull request #2370 from RyanDwyer/transactions-use-after-free
Fix use after free in transactions
This commit is contained in:
commit
92a4bc646a
|
@ -364,7 +364,13 @@ static void set_instructions_ready(struct sway_view *view, int index) {
|
|||
struct sway_transaction_instruction *instruction =
|
||||
view->swayc->instructions->items[i];
|
||||
if (!instruction->ready) {
|
||||
// set_instruction_ready can remove instructions from the list we're
|
||||
// iterating
|
||||
size_t length = view->swayc->instructions->length;
|
||||
set_instruction_ready(instruction);
|
||||
size_t num_removed = length - view->swayc->instructions->length;
|
||||
i -= num_removed;
|
||||
index -= num_removed;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue