diff --git a/obexd/client/session.c b/obexd/client/session.c
index 632e114..331d23d 100644
--- a/obexd/client/session.c
+++ b/obexd/client/session.c
if (refs > 0)
return;
+ /* Disconnect transport */
+ if (session->id > 0 && session->transport != NULL) {
+ session->transport->disconnect(session->id);
+ session->id = 0;
+ }
+
session_free(session);
}
if (session->path)
session_unregistered(session);
- /* Disconnect transport */
- if (session->id > 0 && session->transport != NULL) {
- session->transport->disconnect(session->id);
- session->id = 0;
- }
-
obc_session_unref(session);
}