diff options
author | Campbell Barton <ideasman42@gmail.com> | 2021-03-11 16:34:23 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2021-03-11 16:40:52 +0300 |
commit | 2cc5af9c553cfc00b7d4616445ad954597a92d94 (patch) | |
tree | ccc0fa74bd5df7ed9d20867832997f1b8d6c82f3 /source/blender/blenkernel/BKE_lib_remap.h | |
parent | 2cdebf293d4cf925e1cdaf5c4a247b8886c1026e (diff) |
Fix T86431: Keep memory location of the window manager on file load
Keep the pointer location from the initial window-manager
between file load operations.
This is needed as the Python API may hold references to keymaps for e.g.
which are transferred to the newly loaded window manager,
without their `PointerRNA.owner_id` fields being updated.
Since there is only ever one window manager, keep the memory at the same location so the Python ID pointers stay valid.
Reviewed By: mont29
Ref D10690
Diffstat (limited to 'source/blender/blenkernel/BKE_lib_remap.h')
-rw-r--r-- | source/blender/blenkernel/BKE_lib_remap.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/source/blender/blenkernel/BKE_lib_remap.h b/source/blender/blenkernel/BKE_lib_remap.h index a8d75213d39..6e81273b82b 100644 --- a/source/blender/blenkernel/BKE_lib_remap.h +++ b/source/blender/blenkernel/BKE_lib_remap.h @@ -76,6 +76,8 @@ enum { ID_REMAP_NO_INDIRECT_PROXY_DATA_USAGE = 1 << 4, /** Do not remap library override pointers. */ ID_REMAP_SKIP_OVERRIDE_LIBRARY = 1 << 5, + /** Don't touch the user count (use for low level actions such as swapping pointers). */ + ID_REMAP_SKIP_USER_CLEAR = 1 << 6, }; /* Note: Requiring new_id to be non-null, this *may* not be the case ultimately, |