Index: trunk/src/engine/particle_engine.cc
===================================================================
--- trunk/src/engine/particle_engine.cc	(revision 380)
+++ trunk/src/engine/particle_engine.cc	(revision 382)
@@ -368,5 +368,5 @@
 				{
 					edata.emmiter_func = nv_particle_emmiter_point;
-					NV_LOG_WARNING( "Unknown emmiter type in particle system! (", sub_type, ")" );
+					NV_LOG_WARNING( "Unknown emmiter type in particle system! (", sub_type.c_str(), ")" );
 				}
 
Index: trunk/src/engine/program_manager.cc
===================================================================
--- trunk/src/engine/program_manager.cc	(revision 380)
+++ trunk/src/engine/program_manager.cc	(revision 382)
@@ -37,5 +37,5 @@
 	}
 
-	nv::program program = m_context->get_device()->create_program( vsource, fsource );
+	nv::program program = m_context->get_device()->create_program( string_ref( vsource ), string_ref( fsource ) );
 	return add( program );
 }
Index: trunk/src/engine/resource_system.cc
===================================================================
--- trunk/src/engine/resource_system.cc	(revision 380)
+++ trunk/src/engine/resource_system.cc	(revision 382)
@@ -12,5 +12,5 @@
 {
 	m_lua = a_lua_state;
-	lua::register_storage( m_lua, get_storage_name(), "register_" + get_resource_name().to_string() );
+	lua::register_storage( m_lua, get_storage_name(), string_ref( "register_" + get_resource_name().to_string() ) );
 }
 
Index: trunk/src/formats/assimp_loader.cc
===================================================================
--- trunk/src/formats/assimp_loader.cc	(revision 380)
+++ trunk/src/formats/assimp_loader.cc	(revision 382)
@@ -238,5 +238,5 @@
 			aiMesh* mesh = scene->mMeshes[mc];
 
-			NV_LOG_NOTICE( "Mesh #", mc, "   - ", std::string( mesh->mName.data ) );
+			NV_LOG_NOTICE( "Mesh #", mc, "   - ", string_ref( (char*)mesh->mName.data ) );
 			NV_LOG_NOTICE( "  bones   - ", mesh->mNumBones );
 			NV_LOG_NOTICE( "  uvs     - ", mesh->mNumUVComponents[0] );
Index: trunk/src/formats/obj_loader.cc
===================================================================
--- trunk/src/formats/obj_loader.cc	(revision 380)
+++ trunk/src/formats/obj_loader.cc	(revision 382)
@@ -280,10 +280,10 @@
 		for ( nv::size_t a = 0; a < count; ++a )
 		{
-			const vec3& n = m_data[a].normal;
-			const vec3& t = tan1[a];
-			if ( ! (t.x == 0.0f && t.y == 0.0f && t.z == 0.0f) )
+			const vec3& nv = m_data[a].normal;
+			const vec3& tv = tan1[a];
+			if ( ! (tv.x == 0.0f && tv.y == 0.0f && tv.z == 0.0f) )
 			{
-				m_data[a].tangent    = vec4( glm::normalize(t - n * glm::dot( n, t )), 0.0f ); 
-				m_data[a].tangent[3] = (glm::dot(glm::cross(n, t), tan2[a]) < 0.0f) ? -1.0f : 1.0f;
+				m_data[a].tangent    = vec4( glm::normalize(tv - nv * glm::dot( nv, tv )), 0.0f ); 
+				m_data[a].tangent[3] = (glm::dot(glm::cross(nv, tv), tan2[a]) < 0.0f) ? -1.0f : 1.0f;
 			}
 		}
Index: trunk/src/stl/string.cc
===================================================================
--- trunk/src/stl/string.cc	(revision 380)
+++ trunk/src/stl/string.cc	(revision 382)
@@ -50,5 +50,5 @@
 	*s = '\0';
 	string_reverse( str, s - 1 );
-	return (size_t)( s - str );
+	return (nv::size_t)( s - str );
 }
 
@@ -65,5 +65,5 @@
 	*s = '\0';
 	string_reverse( str, s - 1 );
-	return (size_t)( s - str );
+	return (nv::size_t)( s - str );
 }
 
@@ -78,5 +78,5 @@
 	*s = '\0';
 	string_reverse( str, s - 1 );
-	return (size_t)( s - str );
+	return (nv::size_t)( s - str );
 }
 
