diff options
author | Sybren A. Stüvel <sybren> | 2021-07-06 15:36:27 +0300 |
---|---|---|
committer | Alexander Gavrilov <angavrilov@gmail.com> | 2021-07-09 12:21:12 +0300 |
commit | c04cceb40ed5574dcba8a55cfe97a1132c869895 (patch) | |
tree | ec136545e587ee4443fef8d7ea85673b5c37597b /release/scripts/presets/keyconfig/keymap_data | |
parent | b69ab42982a1da921ea9f585fceca1a53589de79 (diff) |
Fix T89435: Reordering FCurves can cause crash or corruption
Correctly reset `prev` and `next` pointers of action group FCurves when
separating them into distinct `ListBase`s per `bActionGroup`.
These `NULL` pointers are necessary to temporarily demarcate the start &
end of the `bActionGroup::channels` list. Having them still point to
other FCurves caused ordering issues when moving curves towards the
start/end of a group.
This commit corrects the above issue and adds versioning code to rectify
any ordering issues that may have been caused. For this purpose the
`BKE_action_groups_reconstruct()` function is rewritten to avoid relying
on the `bAction::curves` list order or `prev` link integrity.
Differential Revision: https://developer.blender.org/D11811
Diffstat (limited to 'release/scripts/presets/keyconfig/keymap_data')
0 files changed, 0 insertions, 0 deletions