Revision: 37047 http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=37047 Author: blendix Date: 2011-05-31 11:12:42 +0000 (Tue, 31 May 2011) Log Message: ----------- Cycles: fix crash syncing curve/text object with no verts/faces.
Modified Paths: -------------- branches/cycles/intern/cycles/blender/blender_mesh.cpp Modified: branches/cycles/intern/cycles/blender/blender_mesh.cpp =================================================================== --- branches/cycles/intern/cycles/blender/blender_mesh.cpp 2011-05-31 11:02:01 UTC (rev 37046) +++ branches/cycles/intern/cycles/blender/blender_mesh.cpp 2011-05-31 11:12:42 UTC (rev 37047) @@ -260,7 +260,6 @@ /* create derived mesh */ BL::Mesh b_mesh = object_to_mesh(b_ob, b_scene, true, !preview); - /* todo: this will crash on non-mesh types! */ PointerRNA cmesh = RNA_pointer_get(&b_ob_data.ptr, "cycles"); vector<Mesh::Triangle> oldtriangle = mesh->triangles; @@ -269,13 +268,15 @@ mesh->used_shaders = used_shaders; mesh->name = ustring(b_ob_data.name()); - if(cmesh.data && RNA_boolean_get(&cmesh, "use_subdivision")) - create_subd_mesh(mesh, b_mesh, &cmesh, used_shaders); - else - create_mesh(scene, mesh, b_mesh, used_shaders); + if(b_mesh) { + if(cmesh.data && RNA_boolean_get(&cmesh, "use_subdivision")) + create_subd_mesh(mesh, b_mesh, &cmesh, used_shaders); + else + create_mesh(scene, mesh, b_mesh, used_shaders); - /* free derived mesh */ - object_remove_mesh(b_data, b_mesh); + /* free derived mesh */ + object_remove_mesh(b_data, b_mesh); + } /* displacement method */ if(cmesh.data) { _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org http://lists.blender.org/mailman/listinfo/bf-blender-cvs