diff --git a/libnm-glib/nm-secret-agent.c b/libnm-glib/nm-secret-agent.c index ea6197743c..9627d7311d 100644 --- a/libnm-glib/nm-secret-agent.c +++ b/libnm-glib/nm-secret-agent.c @@ -702,7 +702,8 @@ auto_register_cb (gpointer user_data) NMSecretAgentPrivate *priv = NM_SECRET_AGENT_GET_PRIVATE (self); priv->auto_register_id = 0; - if (priv->auto_register && !priv->suppress_auto && (priv->reg_call == NULL)) + if (priv->auto_register && !priv->suppress_auto && + (priv->reg_call == NULL && !priv->registered)) nm_secret_agent_register (self); return FALSE; } diff --git a/libnm/nm-secret-agent.c b/libnm/nm-secret-agent.c index 384c5e69e6..ee8b25bef1 100644 --- a/libnm/nm-secret-agent.c +++ b/libnm/nm-secret-agent.c @@ -703,7 +703,8 @@ auto_register_cb (gpointer user_data) NMSecretAgentPrivate *priv = NM_SECRET_AGENT_GET_PRIVATE (self); priv->auto_register_id = 0; - if (priv->auto_register && !priv->suppress_auto && (priv->reg_call == NULL)) + if (priv->auto_register && !priv->suppress_auto && + (priv->reg_call == NULL && !priv->registered)) nm_secret_agent_register (self); return FALSE; }