diff --git a/src/wsc.c b/src/wsc.c index 9db4b031..3e0bf79d 100644 --- a/src/wsc.c +++ b/src/wsc.c @@ -283,6 +283,14 @@ static void wsc_free(void *userdata) { struct wsc *wsc = userdata; + if (wsc->pending) { + dbus_pending_reply(&wsc->pending, + dbus_error_not_available(wsc->pending)); + + wsc_sm_free(wsc->sm); + wsc->sm = NULL; + } + l_free(wsc); }