- if (priv->sig1)
- g_signal_handler_disconnect (priv->account_mgr, priv->sig1);
-
- if (priv->sig2)
- g_signal_handler_disconnect (priv->account_mgr, priv->sig2);
-
- if (priv->sig3)
- g_signal_handler_disconnect (priv->account_mgr, priv->sig3);
+ if (g_signal_handler_is_connected (modest_runtime_get_account_store (),
+ priv->acc_inserted_handler))
+ g_signal_handler_disconnect (modest_runtime_get_account_store (),
+ priv->acc_inserted_handler);
+
+ if (g_signal_handler_is_connected (modest_runtime_get_account_store (),
+ priv->acc_removed_handler))
+ g_signal_handler_disconnect (modest_runtime_get_account_store (),
+ priv->acc_removed_handler);
+
+ if (priv->acc_busy_changed_handler)
+ g_signal_handler_disconnect (priv->account_mgr, priv->acc_busy_changed_handler);
+ if (priv->acc_changed_handler)
+ g_signal_handler_disconnect (priv->account_mgr, priv->acc_changed_handler);