diff --git a/code/XFileImporter.cpp b/code/XFileImporter.cpp
index 09a546b81..0eac7e53f 100644
--- a/code/XFileImporter.cpp
+++ b/code/XFileImporter.cpp
@@ -410,6 +410,10 @@ void XFileImporter::CreateAnimations( aiScene* pScene, const XFile::Scene* pData
for( unsigned int a = 0; a < pData->mAnims.size(); a++)
{
const XFile::Animation* anim = pData->mAnims[a];
+ // some exporters mock me with empty animation tags.
+ if( anim->mAnims.size() == 0)
+ continue;
+
// create a new animation to hold the data
aiAnimation* nanim = new aiAnimation;
newAnims.push_back( nanim);
diff --git a/code/XFileParser.cpp b/code/XFileParser.cpp
index aa3d404d1..25a1b3b01 100644
--- a/code/XFileParser.cpp
+++ b/code/XFileParser.cpp
@@ -466,7 +466,13 @@ void XFileParser::ParseDataObjectMeshVertexColors( Mesh* pMesh)
ThrowException( "Vertex color index out of bounds");
colors[index] = ReadRGBA();
- CheckForSeparator();
+ // HACK: (thom) Maxon Cinema XPort plugin puts a third separator here. Ignore gracefully
+ if( !mIsBinaryFormat)
+ {
+ FindNextNoneWhiteSpace();
+ if( *P == ';')
+ P++;
+ }
}
CheckForClosingBrace();
diff --git a/workspaces/vc9_ATMNotUpToDate/assimp.vcproj b/workspaces/vc9_ATMNotUpToDate/assimp.vcproj
index 99e3a6f7f..153fa0555 100644
--- a/workspaces/vc9_ATMNotUpToDate/assimp.vcproj
+++ b/workspaces/vc9_ATMNotUpToDate/assimp.vcproj
@@ -82,68 +82,6 @@
Name="VCPostBuildEventTool"
/>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -958,6 +950,14 @@
UsePrecompiledHeader="0"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
@@ -1614,6 +1638,14 @@
PrecompiledHeaderThrough="AssimpPCH.h"
/>
+
+
+
-
-
-
@@ -1674,14 +1698,6 @@
UsePrecompiledHeader="0"
/>
-
-
-
@@ -1693,7 +1709,17 @@
/>
+
+
+
+
+
+