diff --git a/indra/llrender/llrendernavprim.cpp b/indra/llrender/llrendernavprim.cpp
index 71e808d04eeca649a536539658fb51e182571e86..b99a8cdc86f6aab6b7cc0e6ef7b671e53a00e7d0 100644
--- a/indra/llrender/llrendernavprim.cpp
+++ b/indra/llrender/llrendernavprim.cpp
@@ -38,6 +38,7 @@ LLRenderNavPrim gRenderNav;
 void LLRenderNavPrim::renderSegment( const LLVector3& start, const LLVector3& end, int color, bool overlayMode  ) const
 {	
 	LLGLSLShader::sNoFixedFunction = false;
+	LLGLEnable smooth(GL_LINE_SMOOTH);
 	LLColor4 colorA( color );	
 	glLineWidth(1.5f);	
 	gGL.color3fv( colorA.mV );
@@ -51,6 +52,7 @@ void LLRenderNavPrim::renderSegment( const LLVector3& start, const LLVector3& en
 
 	gGL.flush();
 	LLGLSLShader::sNoFixedFunction = true;
+	LLGLDisable smoothout(GL_LINE_SMOOTH);
 	glLineWidth(1.0f);	
 }
 //=============================================================================
@@ -86,7 +88,7 @@ void LLRenderNavPrim::renderTri( const LLVector3& a, const LLVector3& b, const L
 void LLRenderNavPrim::renderNavMeshVB( LLVertexBuffer* pVBO, int vertCnt )
 {
 	LLGLSUIDefault gls_ui;
-	glEnable( GL_DEPTH_TEST );                        
+	LLGLEnable depth( GL_DEPTH_TEST );                        
 	LLGLEnable cull( GL_CULL_FACE );		
 	glLineWidth(1.5f);		
 	LLGLSLShader::sNoFixedFunction = false;
@@ -94,11 +96,13 @@ void LLRenderNavPrim::renderNavMeshVB( LLVertexBuffer* pVBO, int vertCnt )
 	pVBO->setBuffer( LLVertexBuffer::MAP_VERTEX | LLVertexBuffer::MAP_COLOR | LLVertexBuffer::MAP_NORMAL );
 	pVBO->drawArrays( LLRender::TRIANGLES, 0, vertCnt );	
 	glPolygonMode( GL_FRONT_AND_BACK, GL_LINE );		
+	LLGLEnable smooth(GL_LINE_SMOOTH);
 	//pass 2 outlined
 	pVBO->drawArrays( LLRender::TRIANGLES, 0, vertCnt );	
 	LLGLSLShader::sNoFixedFunction = true;
 	glLineWidth(1.0f);		
 	glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );	
+	LLGLDisable smoothout(GL_LINE_SMOOTH);
 }
 //=============================================================================
 void LLRenderNavPrim::renderStar( const LLVector3& center, const float scale, int color ) const
diff --git a/indra/newview/llviewerdisplay.cpp b/indra/newview/llviewerdisplay.cpp
index 719f560101ec69d0973afbc8e7c5ec36b20a85f4..0579273d259bc8de21ab561596022c91bb4ba545 100644
--- a/indra/newview/llviewerdisplay.cpp
+++ b/indra/newview/llviewerdisplay.cpp
@@ -907,9 +907,6 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot)
 					//NavMesh
 					if ( llPathingLibInstance->getRenderNavMeshState() )
 					{
-						glClearColor(0.0f, 0.0f, 0.0f, 0.5f);          												
-						glEnable(GL_DEPTH_TEST);                        
-						gGL.setAmbientLightColor( LLColor4::white );
 						llPathingLibInstance->renderNavMesh();
 						exclusiveDraw = true;
 					}