core: signal parent-active only when the parent AC is activated

The parent-active signal is used by the manager to determine when the
parent active-connection is ready and a connection that depend on it
can proceed.

The AC state could transition from ACTIVATING directly to
DEACTIVATING; in such case we should not emit the signal but instead
just stop watching the parent AC.

Fixes: 6e382ea91d ('active-connection: add parent active connection tracking')
https://bugzilla.redhat.com/show_bug.cgi?id=1778073
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/510
This commit is contained in:
Beniamino Galvani
2020-05-19 09:27:08 +02:00
parent 18deaa39c7
commit 02ea74c920

View File

@@ -996,6 +996,8 @@ parent_state_cb (NMActiveConnection *parent_ac,
return;
unwatch_parent (self, TRUE);
if (parent_state == NM_ACTIVE_CONNECTION_STATE_ACTIVATED)
g_signal_emit (self, signals[PARENT_ACTIVE], 0, parent_ac);
}