From f210e7b1b5f0dceb610cf0355b689ed6a16624e1 Mon Sep 17 00:00:00 2001
From: Hakim El Hattab <hakim.elhattab@gmail.com>
Date: Sun, 28 Apr 2013 14:12:31 -0400
Subject: [PATCH] avoid errors in old ie from code highlighting

---
 plugin/highlight/highlight.js | 26 ++++++++++++++++----------
 1 file changed, 16 insertions(+), 10 deletions(-)

diff --git a/plugin/highlight/highlight.js b/plugin/highlight/highlight.js
index af769db..6756359 100644
--- a/plugin/highlight/highlight.js
+++ b/plugin/highlight/highlight.js
@@ -1,16 +1,22 @@
 // START CUSTOM REVEAL.JS INTEGRATION
 (function() {
-	[].slice.call( document.querySelectorAll( 'pre code' ) ).forEach( function( element ) {
-		// trim whitespace if data-trim attribute is present
-		if( element.hasAttribute( 'data-trim' ) && typeof element.innerHTML.trim === 'function' ) {
-			element.innerHTML = element.innerHTML.trim();
-		}
+	if( typeof window.addEventListener === 'function' ) {
+		var hljs_nodes = document.querySelectorAll( 'pre code' );
+
+		for( var i = 0, len = hljs_nodes.length; i < len; i++ ) {
+			var element = hljs_nodes[i];
 
-		// re-highlight when focus is lost (for edited code)
-		element.addEventListener( 'focusout', function( event ) {
-			hljs.highlightBlock( event.currentTarget );
-		}, false );
-	} );
+			// trim whitespace if data-trim attribute is present
+			if( element.hasAttribute( 'data-trim' ) && typeof element.innerHTML.trim === 'function' ) {
+				element.innerHTML = element.innerHTML.trim();
+			}
+
+			// re-highlight when focus is lost (for edited code)
+			element.addEventListener( 'focusout', function( event ) {
+				hljs.highlightBlock( event.currentTarget );
+			}, false );
+		}
+	}
 })();
 // END CUSTOM REVEAL.JS INTEGRATION
 
-- 
GitLab