diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2016-07-20 20:49:45 +0300 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2016-07-21 17:54:36 +0300 |
commit | d8d4bef6ccc3556a5691e5b633ebad895a795872 (patch) | |
tree | 2faf0473d311809060e6d2e7cfa9c813d1880100 /source/blender/blenkernel/BKE_brush.h | |
parent | 2977dcf2f7471e00079100803fd4203fcf97f20a (diff) |
Refactor/deduplicate even more make_local code (and fix part of T48907).
Turns out most BKE_foo_make_local datablock-specific functions are actually doing
exactly the same thing, only two currently need special additional operations
(object and brush ones). So added a BKE_id_make_local_generic instead
of copying same code over and over.
Also, changed a bit how make_local works in case we are localizing a whole library.
We need to do the 'remap' step (from old linked ID to new local one) in the second loop,
otherwise we miss some dependencies. This fixes main part of T48907.
Diffstat (limited to 'source/blender/blenkernel/BKE_brush.h')
-rw-r--r-- | source/blender/blenkernel/BKE_brush.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/source/blender/blenkernel/BKE_brush.h b/source/blender/blenkernel/BKE_brush.h index 4be4d95490b..8bd4bdf89e1 100644 --- a/source/blender/blenkernel/BKE_brush.h +++ b/source/blender/blenkernel/BKE_brush.h @@ -45,7 +45,7 @@ void BKE_brush_init(struct Brush *brush); struct Brush *BKE_brush_add(struct Main *bmain, const char *name, short ob_mode); struct Brush *BKE_brush_first_search(struct Main *bmain, short ob_mode); struct Brush *BKE_brush_copy(struct Main *bmain, struct Brush *brush); -void BKE_brush_make_local(struct Main *bmain, struct Brush *brush, const bool force_local); +void BKE_brush_make_local(struct Main *bmain, struct Brush *brush, const bool lib_local); void BKE_brush_unlink(struct Main *bmain, struct Brush *brush); void BKE_brush_free(struct Brush *brush); |