update chassis control
diff --git a/bin/chassis_control.py b/bin/chassis_control.py
index 6c01c39..2c49b60 100644
--- a/bin/chassis_control.py
+++ b/bin/chassis_control.py
@@ -21,6 +21,9 @@
 			host_control_service = bus.get_object('org.openbmc.HostControl','/org/openbmc/HostControl/0')
 			self.host_control_iface = dbus.Interface(host_control_service, 'org.openbmc.HostControl');
 
+			bus.add_signal_receiver(self.power_button_signal_handler, dbus_interface = "org.openbmc.Button", signal_name = "ButtonPressed")
+    			bus.add_signal_receiver(self.power_good_signal_handler, dbus_interface = "org.openbmc.PowerControl", signal_name = "PowerGood")
+
 
 		except dbus.exceptions.DBusException, e:
 			# TODO: not sure what to do if can't find other services
@@ -107,9 +110,7 @@
     name = dbus.service.BusName("org.openbmc.ChassisControl", bus)
     object = ChassisControlObject(bus, '/org/openbmc/ChassisControl')
     mainloop = gobject.MainLoop()
-    bus.add_signal_receiver(object.power_button_signal_handler, dbus_interface = "org.openbmc.Button", signal_name = "ButtonPressed")
-    bus.add_signal_receiver(object.power_good_signal_handler, dbus_interface = "org.openbmc.PowerControl", signal_name = "PowerGood")
-
+    
     print "Running ChassisControlService"
     mainloop.run()