From f035b68b5ac576bc2b76f61e50014bc264d39d44 Mon Sep 17 00:00:00 2001
From: Tazpn <tazpn@users.sourceforge.net>
Date: Sun, 11 Jan 2009 08:52:12 +0000
Subject: [PATCH] niflib: Force all uvsets sizes to num verts when explicitly
 sized.

---
 src/obj/NiGeometryData.cpp  | 3 +++
 src/obj/NiSkinPartition.cpp | 1 -
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/obj/NiGeometryData.cpp b/src/obj/NiGeometryData.cpp
index 695773c8..f9cddd32 100644
--- a/src/obj/NiGeometryData.cpp
+++ b/src/obj/NiGeometryData.cpp
@@ -443,6 +443,9 @@ vector<int> NiGeometryData::GetVertexIndices() const {
 void NiGeometryData::SetUVSetCount(int n) {
 	uvSets.resize(n);
 	hasUv = ( uvSets.size() != 0 );
+   for (unsigned int i = 0; i < uvSets.size(); ++i ) {
+      uvSets[i].resize( vertices.size() );
+   }
 }
 
 //--Setters--//
diff --git a/src/obj/NiSkinPartition.cpp b/src/obj/NiSkinPartition.cpp
index 11926e0d..a103e545 100644
--- a/src/obj/NiSkinPartition.cpp
+++ b/src/obj/NiSkinPartition.cpp
@@ -900,7 +900,6 @@ NiSkinPartition::NiSkinPartition(Ref<NiTriBasedGeom> shape, int maxBonesPerParti
       for ( vector< BoneWeightList >::iterator it = weights.begin(); it != weights.end(); ++it )
       {
          BoneWeightList & lst = *it;
-         sort(lst.begin(), lst.end(), std::less<BoneWeight>());
          int n = int(lst.size());
          if ( n > maxBonesPerVertex )
          {
-- 
GitLab