diff --git a/src/xboxdrv_daemon.cpp b/src/xboxdrv_daemon.cpp
index b7334ec..560771f 100644
--- a/src/xboxdrv_daemon.cpp
+++ b/src/xboxdrv_daemon.cpp
@@ -712,9 +712,8 @@ XboxdrvDaemon::connect(ControllerSlotPtr slot, ControllerThreadPtr thread)
 ControllerThreadPtr
 XboxdrvDaemon::disconnect(ControllerSlotPtr slot)
 {
-  ControllerThreadPtr thread = slot->disconnect();
   on_disconnect(slot);
-  return thread;
+  return slot->disconnect();
 }
 
 void