Don't assert on backend == settings->priv->backend

They could be different if a notification is queued for delivery and
someone calls g_settings_delay().

Bug #646843.
This commit is contained in:
Ryan Lortie 2011-04-07 21:25:01 -04:00
parent a2e3a4d150
commit 4ece333afe

View File

@ -311,7 +311,17 @@ settings_backend_changed (GObject *target,
gboolean ignore_this; gboolean ignore_this;
gint i; gint i;
g_assert (settings->priv->backend == backend); /* We used to assert here:
*
* settings->priv->backend == backend
*
* but it could be the case that a notification is queued for delivery
* while someone calls g_settings_delay() (which changes the backend).
*
* Since the delay backend would just pass that straight through
* anyway, it doesn't make sense to try to detect this case.
* Therefore, we just accept it.
*/
for (i = 0; key[i] == settings->priv->path[i]; i++); for (i = 0; key[i] == settings->priv->path[i]; i++);