diff --git a/firestarter b/firestarter
index b611e38..6b9b74d 100755
--- a/firestarter
+++ b/firestarter
@@ -154,8 +154,9 @@ step_preexecute() {
 	[ -n "$_optdryrun" ] && return 0
 	#[ -r "$HOME/.xsessionrc" ] && . "$HOME/.xsessionrc"
 	export XDG_CURRENT_DESKTOP="${XDG_CURRENT_DESKTOP:-firestarter}"
-	[ -n "$FIRESTARTER" ] && error "Firestarter is already running: $FIRESTARTER" 55
+	[ -n "$FIRESTARTER" ] && [ "$FIRESTARTER_DISPLAY" == "$DISPLAY" ] error "Firestarter is already running on $DISPLAY: $FIRESTARTER" 55
 	export FIRESTARTER="$BASHPID"
+	export FIRESTARTER_DISPLAY="$DISPLAY"
 	# dbus
 	if \
 		[ -z "$DBUS_SESSION_BUS_ADDRESS" ] && \