about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorhut <hut@lavabit.com>2010-10-14 23:47:55 +0200
committerhut <hut@lavabit.com>2010-11-22 02:38:06 +0100
commitffa2e9a0a763f8a284925edf52022e966c57fce3 (patch)
tree29b5bdf922a98f14734794521ae755b3c81376ee
parentea1797127be066a38096c8c43a34cba554ff2089 (diff)
downloadranger-ffa2e9a0a763f8a284925edf52022e966c57fce3.tar.gz
ext.signal_dispatcher: optimization of signal_emit
-rw-r--r--ranger/ext/signal_dispatcher.py12
1 files changed, 6 insertions, 6 deletions
diff --git a/ranger/ext/signal_dispatcher.py b/ranger/ext/signal_dispatcher.py
index c1630c0c..3f407bff 100644
--- a/ranger/ext/signal_dispatcher.py
+++ b/ranger/ext/signal_dispatcher.py
@@ -76,12 +76,11 @@ class SignalDispatcher(object):
 
 	def signal_emit(self, signal_name, **kw):
 		assert isinstance(signal_name, str)
-		try:
-			handlers = self._signals[signal_name]
-		except:
-			return
+		if signal_name not in self._signals:
+			return True
+		handlers = self._signals[signal_name]
 		if not handlers:
-			return
+			return True
 
 		signal = Signal(origin=self, name=signal_name, **kw)
 
@@ -98,6 +97,7 @@ class SignalDispatcher(object):
 					else:
 						fnc()
 					if signal.stopped:
-						return
+						return False
 				except ReferenceError:
 					handlers.remove(handler)
+		return True