summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/assimp/code/OptimizeGraph.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/3rdparty/assimp/code/OptimizeGraph.cpp')
-rw-r--r--src/3rdparty/assimp/code/OptimizeGraph.cpp19
1 files changed, 11 insertions, 8 deletions
diff --git a/src/3rdparty/assimp/code/OptimizeGraph.cpp b/src/3rdparty/assimp/code/OptimizeGraph.cpp
index ec37bd447..11a6fcf65 100644
--- a/src/3rdparty/assimp/code/OptimizeGraph.cpp
+++ b/src/3rdparty/assimp/code/OptimizeGraph.cpp
@@ -3,7 +3,8 @@
Open Asset Import Library (assimp)
---------------------------------------------------------------------------
-Copyright (c) 2006-2016, assimp team
+Copyright (c) 2006-2017, assimp team
+
All rights reserved.
@@ -48,7 +49,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include "OptimizeGraph.h"
#include "ProcessHelper.h"
-#include "SceneCombiner.h"
+#include <assimp/SceneCombiner.h>
#include "Exceptional.h"
#include <stdio.h>
@@ -230,15 +231,17 @@ void OptimizeGraphProcess::CollectNewChildren(aiNode* nd, std::list<aiNode*>& no
else nd->mChildren = NULL;
}
- nd->mNumChildren = child_nodes.size();
+ nd->mNumChildren = static_cast<unsigned int>(child_nodes.size());
- aiNode** tmp = nd->mChildren;
- for (std::list<aiNode*>::iterator it = child_nodes.begin(); it != child_nodes.end(); ++it) {
- aiNode* node = *tmp++ = *it;
- node->mParent = nd;
+ if (nd->mChildren) {
+ aiNode** tmp = nd->mChildren;
+ for (std::list<aiNode*>::iterator it = child_nodes.begin(); it != child_nodes.end(); ++it) {
+ aiNode* node = *tmp++ = *it;
+ node->mParent = nd;
+ }
}
- nodes_out += child_nodes.size();
+ nodes_out += static_cast<unsigned int>(child_nodes.size());
}
// ------------------------------------------------------------------------------------------------