diff --git a/lib/update-props.js b/lib/update-props.js
index <HASH>..<HASH> 100644
--- a/lib/update-props.js
+++ b/lib/update-props.js
@@ -153,15 +153,17 @@ function updateEventListeners (domNode, oldVirtualNode, newVirtualNode, listener
         }
         domNode.removeEventListener(eventName, listenerToRemove)
       }
-      let listenerToAdd
-      if (listenerContext) {
-        listenerToAdd = newListener.bind(listenerContext)
-        if (!newVirtualNode.boundListeners) newVirtualNode.boundListeners = {}
-        newVirtualNode.boundListeners[eventName] = listenerToAdd
-      } else {
-        listenerToAdd = newListener
+      if (newListener) {
+        let listenerToAdd
+        if (listenerContext) {
+          listenerToAdd = newListener.bind(listenerContext)
+          if (!newVirtualNode.boundListeners) newVirtualNode.boundListeners = {}
+          newVirtualNode.boundListeners[eventName] = listenerToAdd
+        } else {
+          listenerToAdd = newListener
+        }
+        domNode.addEventListener(eventName, listenerToAdd)
       }
-      domNode.addEventListener(eventName, listenerToAdd)
     }
   }
 }
Fix nulling of event handlers