[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [37047] branches/cycles/intern/cycles/ blender/blender_mesh.cpp: Cycles: fix crash syncing curve/ text object with no verts/faces.
Brecht Van Lommel
brechtvanlommel at pandora.be
Tue May 31 13:12:42 CEST 2011
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) {
More information about the Bf-blender-cvs
mailing list