Index: trunk/src/core/library.cc
===================================================================
--- trunk/src/core/library.cc	(revision 437)
+++ trunk/src/core/library.cc	(revision 438)
@@ -6,5 +6,4 @@
 
 #include "nv/core/library.hh"
-#include <string>
 
 #if NV_PLATFORM == NV_WINDOWS
@@ -74,17 +73,17 @@
     NV_LOG_NOTICE( "library \"", m_name, "\" : loading..." );
 
-	std::string name( m_name.data(), m_name.length() );
-	std::string ext( NV_LIB_EXT );
+	string128 name( m_name );
+	string_view ext( NV_LIB_EXT );
 
-	if ( name.length() < ext.length() || name.substr( name.length() - ext.length(), ext.length() ) != ext )
+	if ( name.length() < ext.length() || !name.ends_with( ext ) )
     {
-        name.append( ext.data(), ext.length() );
+        name.append( ext );
     }
 
-    m_handle = NV_LIB_OPEN( name.c_str() );
+    m_handle = NV_LIB_OPEN( name.data() );
 
     if ( m_handle == NULL )
     {
-		NV_LOG_NOTICE( "library \"", m_name, "\" : failed to open!" );
+		NV_LOG_NOTICE( "library \"", name, "\" : failed to open!" );
 		return false;
     }
