diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-01-09 21:11:50 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-01-13 13:57:50 +0400 |
commit | 405cab9663db702340f9a3870fa2c89fe24f0b50 (patch) | |
tree | 165624587b14644c38c18a0e6b03b1f2f7d7551a /source/blender/editors/object | |
parent | b5592d86d6368b64bf33eed251cb6c389054d1d2 (diff) |
Remove direct displist creation from object conversion
If the object is visible and editable it means there's no
way DAG to fail to create needed display lists.
Diffstat (limited to 'source/blender/editors/object')
-rw-r--r-- | source/blender/editors/object/object_add.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/source/blender/editors/object/object_add.c b/source/blender/editors/object/object_add.c index efeed0f277c..1d72eb59f13 100644 --- a/source/blender/editors/object/object_add.c +++ b/source/blender/editors/object/object_add.c @@ -1415,10 +1415,9 @@ static EnumPropertyItem convert_target_items[] = { {0, NULL, 0, NULL, NULL} }; -static void curvetomesh(Scene *scene, Object *ob) +static void curvetomesh(Object *ob) { - if (ELEM(NULL, ob->curve_cache, ob->curve_cache->disp.first)) - BKE_displist_make_curveTypes(scene, ob, 0); /* force creation */ + BLI_assert(ob->curve_cache != NULL); BKE_mesh_from_nurbs(ob); /* also does users */ @@ -1630,7 +1629,7 @@ static int convert_exec(bContext *C, wmOperator *op) BKE_curve_curve_dimension_update(cu); if (target == OB_MESH) { - curvetomesh(scene, newob); + curvetomesh(newob); /* meshes doesn't use displist */ BKE_object_free_curve_cache(newob); @@ -1652,12 +1651,12 @@ static int convert_exec(bContext *C, wmOperator *op) } else { newob = ob; - - /* meshes doesn't use displist */ - BKE_object_free_curve_cache(newob); } - curvetomesh(scene, newob); + curvetomesh(newob); + + /* meshes doesn't use displist */ + BKE_object_free_curve_cache(newob); } } else if (ob->type == OB_MBALL && target == OB_MESH) { |