diff --git a/src/obj/NiSkinPartition.cpp b/src/obj/NiSkinPartition.cpp
index d68fdf31c4bed85fdfca8850e945f0d0dc25c669..b303faf28cac200f9b3ec7d5257a9412647da653 100644
--- a/src/obj/NiSkinPartition.cpp
+++ b/src/obj/NiSkinPartition.cpp
@@ -422,9 +422,8 @@ NiSkinPartition::NiSkinPartition(Ref<NiTriBasedGeom> shape, int maxBonesPerParti
    // reduce vertex influences if necessary
    if ( maxBones > maxBonesPerVertex )
    {
-      vector< BoneWeightList >::iterator it = weights.begin();
       int c = 0;
-      while ( it != weights.end() )
+      for ( vector< BoneWeightList >::iterator it = weights.begin(); it != weights.end(); ++it )
       {
          BoneWeightList & lst = *it;
          if ( int(lst.size()) > maxBonesPerVertex )