> +static void
> +remove_subfolders_except (EStorage *storage, const char *path, const char *except)
> +{
> + EStoragePrivate *priv;
> + GList *subfolders, *f;
> + const char *folder_path;
> +
> + priv = storage->priv;
> +
> + subfolders = e_folder_tree_get_subfolders (priv->folder_tree, path);
> + for (f = subfolders; f; f = f->next) {
> + folder_path = f->data;
> + if (!except || strcmp (folder_path, except) != 0)
> + e_storage_removed_folder (storage, folder_path);
> + }
> + g_list_free (subfolders);
> +}
> +
I think you want a e_free_string_list() here.
The rest looks good.
-- Ettore
Attachment:
signature.asc
Description: This is a digitally signed message part