Index: trunk/src/gl/gl_device.cc
===================================================================
--- trunk/src/gl/gl_device.cc	(revision 410)
+++ trunk/src/gl/gl_device.cc	(revision 433)
@@ -19,7 +19,7 @@
 	m_shader_header  = "#version 120\n";
 	for ( auto& i : get_uniform_factory() ) 
-		m_shader_header += "uniform "+datatype_to_glsl_type( i.second->get_datatype() )+" "+ i.first.to_string() +";\n";
+		m_shader_header += "uniform "+datatype_to_glsl_type( i.second->get_datatype() )+" "+ std::string( i.first.data(), i.first.size() ) +";\n";
 	for ( auto& i : get_link_uniform_factory() ) 
-		m_shader_header += "uniform sampler2D "+i.first.to_string() +";\n";
+		m_shader_header += "uniform sampler2D "+std::string( i.first.data(), i.first.size() ) +";\n";
 }
 
@@ -212,5 +212,5 @@
 		for ( auto& i : *info->m_uniform_map )
 		{
-			auto j = lmap.find( i.first );
+			auto j = lmap.find( i.first.c_str() );
 			if ( j != lmap.end() )
 			{
@@ -218,5 +218,5 @@
 			}			
 
-			auto k = map.find( i.first );
+			auto k = map.find( i.first.c_str() );
 			if ( k != map.end() )
 			{
@@ -238,5 +238,5 @@
 		if ( fatal )
 		{
-			NV_LOG_CRITICAL( "gl_device : uniform '", string_view( name ), "' not found in program!" );
+			NV_LOG_CRITICAL( "gl_device : uniform '", string_view( name.c_str(), name.size() ), "' not found in program!" );
 			NV_ABORT( "gl_device : uniform not found!" );
 		}
@@ -257,5 +257,5 @@
 		if ( fatal )
 		{
-			NV_LOG_CRITICAL( "gl_device : attribute '", string_view( name ), "' not found in program!" );
+			NV_LOG_CRITICAL( "gl_device : attribute '", string_view( name.c_str(), name.size() ), "' not found in program!" );
 			NV_ABORT( "gl_device : attribute not found!" );
 		}
