diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2016-07-08 14:22:54 +0300 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2016-07-08 19:11:20 +0300 |
commit | 71f5df9f44dd6dfd125d6ea7f7f6542e6f9e7faa (patch) | |
tree | 448e56ec454f01fbde8ef9837fe89e4e8485ec1e /source/blender/blenkernel/BKE_library_remap.h | |
parent | 3b7bce42d7096d840c4cbdb6c4b98310cfe551ef (diff) |
Refactor remapping's pre/post process of special cases.
Main issue was that BKE_libblock_relink_ex was pretty much ignoring all those...
Also, unlinking of objects was not handling correctly indirect-related flags.
Refactored code into helper functions to avoid too much duplicated code.
Diffstat (limited to 'source/blender/blenkernel/BKE_library_remap.h')
-rw-r--r-- | source/blender/blenkernel/BKE_library_remap.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/source/blender/blenkernel/BKE_library_remap.h b/source/blender/blenkernel/BKE_library_remap.h index 754005276f0..e974b79ee66 100644 --- a/source/blender/blenkernel/BKE_library_remap.h +++ b/source/blender/blenkernel/BKE_library_remap.h @@ -60,7 +60,9 @@ void BKE_libblock_unlink( struct Main *bmain, void *idv, const bool do_flag_never_null, const bool do_skip_indirect) ATTR_NONNULL(); -void BKE_libblock_relink_ex(void *idv, void *old_idv, void *new_idv, const bool us_min_never_null) ATTR_NONNULL(1); +void BKE_libblock_relink_ex( + struct Main *bmain, void *idv, void *old_idv, void *new_idv, + const bool us_min_never_null) ATTR_NONNULL(1, 2); typedef void (*BKE_library_free_window_manager_cb)(struct bContext *, struct wmWindowManager *); |