diff --git a/lib/ui/Modal.js b/lib/ui/Modal.js
index <HASH>..<HASH> 100644
--- a/lib/ui/Modal.js
+++ b/lib/ui/Modal.js
@@ -1,6 +1,7 @@
-var React = require('react/addons'),
-	classnames = require('classnames'),
-	Tappable = require('react-tappable');
+var classnames = require('classnames');
+
+var React = require('react/addons');
+var Tappable = require('react-tappable');
 
 module.exports = React.createClass({
 	displayName: 'Modal',
@@ -24,7 +25,7 @@ module.exports = React.createClass({
 			showModal: false
 		};
 	},
-	
+
 	getInitialState: function() {
 		return {
 			showModal: this.props.showModal
@@ -34,7 +35,10 @@ module.exports = React.createClass({
 	// TODO: use ReactTransitionGroup to handle fade in/out
 	componentDidMount: function() {
 		var self = this;
+
 		setTimeout(function() {
+			if (!self.isMounted()) return
+
 			self.setState({ showModal: true });
 		}, 1);
 	},
Modal: enforce modal is mounted for setState