diff options
author | Antonioya <blendergit@gmail.com> | 2019-02-27 10:50:29 +0300 |
---|---|---|
committer | Antonioya <blendergit@gmail.com> | 2019-02-27 10:50:29 +0300 |
commit | 4732f90a4f19954b56f2c2692e8be304359d1ec1 (patch) | |
tree | 16d735e0a90061ca43a516dc8b4e96872c55c44f /source/blender | |
parent | 6155faf5bda861c929dbebaf022199580c64d2fe (diff) |
GP: Use unique names for instance objects
When instance objects linked, the name could not be unique.
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/draw/engines/gpencil/gpencil_cache_utils.c | 3 | ||||
-rw-r--r-- | source/blender/draw/engines/gpencil/gpencil_engine.c | 4 | ||||
-rw-r--r-- | source/blender/draw/engines/gpencil/gpencil_engine.h | 2 |
3 files changed, 6 insertions, 3 deletions
diff --git a/source/blender/draw/engines/gpencil/gpencil_cache_utils.c b/source/blender/draw/engines/gpencil/gpencil_cache_utils.c index ab75299ca1e..f57ec5e974f 100644 --- a/source/blender/draw/engines/gpencil/gpencil_cache_utils.c +++ b/source/blender/draw/engines/gpencil/gpencil_cache_utils.c @@ -29,6 +29,7 @@ #include "DNA_gpencil_types.h" #include "DNA_view3d_types.h" +#include "BKE_library.h" #include "BKE_gpencil.h" #include "gpencil_engine.h" @@ -68,7 +69,7 @@ tGPencilObjectCache *gpencil_object_cache_add( cache_elem->ob = ob; cache_elem->gpd = (bGPdata *)ob->data; - strcpy(cache_elem->name, ob->id.name); + cache_elem->name = BKE_id_to_unique_string_key(&ob->id); copy_v3_v3(cache_elem->loc, ob->obmat[3]); copy_m4_m4(cache_elem->obmat, ob->obmat); diff --git a/source/blender/draw/engines/gpencil/gpencil_engine.c b/source/blender/draw/engines/gpencil/gpencil_engine.c index 49c0d5fe8b4..16d90b261bd 100644 --- a/source/blender/draw/engines/gpencil/gpencil_engine.c +++ b/source/blender/draw/engines/gpencil/gpencil_engine.c @@ -22,6 +22,7 @@ #include "DRW_engine.h" #include "DRW_render.h" +#include "BKE_library.h" #include "BKE_object.h" #include "BKE_shader_fx.h" @@ -656,7 +657,8 @@ void GPENCIL_cache_finish(void *vedata) cache_ob = &stl->g_data->gp_object_cache[i]; if (!cache_ob->is_dup_ob) { ob = cache_ob->ob; - BLI_ghash_insert(gh_objects, ob->id.name, cache_ob->ob); + char *name = BKE_id_to_unique_string_key(&ob->id); + BLI_ghash_insert(gh_objects, name, cache_ob->ob); } } diff --git a/source/blender/draw/engines/gpencil/gpencil_engine.h b/source/blender/draw/engines/gpencil/gpencil_engine.h index 2922f51e8cb..ed4915651f1 100644 --- a/source/blender/draw/engines/gpencil/gpencil_engine.h +++ b/source/blender/draw/engines/gpencil/gpencil_engine.h @@ -69,7 +69,7 @@ typedef struct tGPencilObjectCache { struct Object *ob; struct bGPdata *gpd; int idx; /*original index, can change after sort */ - char name[66]; + char *name; /* effects */ bool has_fx; |