Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2013-05-06 15:12:00 +0400
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2013-05-06 15:12:00 +0400
commitc36365935c5146b56753bd997f0a873fc2589b15 (patch)
tree927751dff14d2b11e94d32fcc2e7c476cbb52423 /source/blender/collada/SceneExporter.cpp
parentf39464870ccbf59702e644bcec58369770276826 (diff)
Fix #35229: collada crash exporting constraints with no target set.
Diffstat (limited to 'source/blender/collada/SceneExporter.cpp')
-rw-r--r--source/blender/collada/SceneExporter.cpp15
1 files changed, 9 insertions, 6 deletions
diff --git a/source/blender/collada/SceneExporter.cpp b/source/blender/collada/SceneExporter.cpp
index 604e131b44b..aaf9588f918 100644
--- a/source/blender/collada/SceneExporter.cpp
+++ b/source/blender/collada/SceneExporter.cpp
@@ -215,13 +215,16 @@ void SceneExporter::writeNodes(Object *ob, Scene *sce)
Object *obtar;
cti->get_constraint_targets(con, &targets);
- if (cti) {
- for (ct = (bConstraintTarget *)targets.first; ct; ct = ct->next) {
- obtar = ct->tar;
- std::string tar_id(id_name(obtar));
- colladaNode.addExtraTechniqueChildParameter("blender",con_tag,"target_id",tar_id);
- }
+
+ for (ct = (bConstraintTarget *)targets.first; ct; ct = ct->next) {
+ obtar = ct->tar;
+ std::string tar_id((obtar) ? id_name(obtar) : "");
+ colladaNode.addExtraTechniqueChildParameter("blender",con_tag,"target_id",tar_id);
}
+
+ if (cti->flush_constraint_targets)
+ cti->flush_constraint_targets(con, &targets, 1);
+
}
con = con->next;