From fbf999ec8125980f5dde6c20c056c6ad9cf245a7 Mon Sep 17 00:00:00 2001
From: Hakim El Hattab <hakim.elhattab@gmail.com>
Date: Mon, 28 Apr 2014 12:31:34 +0200
Subject: [PATCH] null check background

---
 js/reveal.js | 42 +++++++++++++++++++++++-------------------
 1 file changed, 23 insertions(+), 19 deletions(-)

diff --git a/js/reveal.js b/js/reveal.js
index df1b1f5..aefb514 100644
--- a/js/reveal.js
+++ b/js/reveal.js
@@ -2326,29 +2326,31 @@
 		// Show the corresponding background element
 		var indices = getIndices( slide );
 		var background = getSlideBackground( indices.h, indices.v );
-		background.style.display = 'block';
+		if( background ) {
+			background.style.display = 'block';
 
-		// If the background contains media, load it
-		if( background.hasAttribute( 'data-loaded' ) === false ) {
-			background.setAttribute( 'data-loaded', 'true' );
+			// If the background contains media, load it
+			if( background.hasAttribute( 'data-loaded' ) === false ) {
+				background.setAttribute( 'data-loaded', 'true' );
 
-			var backgroundImage = slide.getAttribute( 'data-background-image' ),
-				backgroundVideo = slide.getAttribute( 'data-background-video' );
+				var backgroundImage = slide.getAttribute( 'data-background-image' ),
+					backgroundVideo = slide.getAttribute( 'data-background-video' );
 
-			// Images
-			if( backgroundImage ) {
-				background.style.backgroundImage = 'url('+ backgroundImage +')';
-			}
-			// Videos
-			else if ( backgroundVideo ) {
-				var video = document.createElement( 'video' );
+				// Images
+				if( backgroundImage ) {
+					background.style.backgroundImage = 'url('+ backgroundImage +')';
+				}
+				// Videos
+				else if ( backgroundVideo ) {
+					var video = document.createElement( 'video' );
 
-				// Support comma separated lists of video sources
-				backgroundVideo.split( ',' ).forEach( function( source ) {
-					video.innerHTML += '<source src="'+ source +'">';
-				} );
+					// Support comma separated lists of video sources
+					backgroundVideo.split( ',' ).forEach( function( source ) {
+						video.innerHTML += '<source src="'+ source +'">';
+					} );
 
-				background.appendChild( video );
+					background.appendChild( video );
+				}
 			}
 		}
 
@@ -2366,7 +2368,9 @@
 		// Hide the corresponding background element
 		var indices = getIndices( slide );
 		var background = getSlideBackground( indices.h, indices.v );
-		background.style.display = 'none';
+		if( background ) {
+			background.style.display = 'none';
+		}
 
 	}
 
-- 
GitLab