From 71f5df9f44dd6dfd125d6ea7f7f6542e6f9e7faa Mon Sep 17 00:00:00 2001 From: Bastien Montagne Date: Fri, 8 Jul 2016 13:22:54 +0200 Subject: 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. --- source/blender/blenkernel/BKE_library_remap.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'source/blender/blenkernel/BKE_library_remap.h') 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 *); -- cgit v1.2.3