summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicolas Clapies <nclapies@entrouvert.com>2004-07-19 13:19:36 +0000
committerNicolas Clapies <nclapies@entrouvert.com>2004-07-19 13:19:36 +0000
commited75cd8f7f58a20d09f2e6b2c0f05f2f2f3abd93 (patch)
treec37e58b2976e1c99254122ab17043df0139ebce2
parentd5e12b8a76480201ab33390546df2c52d19d0b77 (diff)
downloadlasso-ed75cd8f7f58a20d09f2e6b2c0f05f2f2f3abd93.tar.gz
lasso-ed75cd8f7f58a20d09f2e6b2c0f05f2f2f3abd93.tar.xz
lasso-ed75cd8f7f58a20d09f2e6b2c0f05f2f2f3abd93.zip
*** empty log message ***
-rw-r--r--lasso/id-ff/user.c27
1 files changed, 17 insertions, 10 deletions
diff --git a/lasso/id-ff/user.c b/lasso/id-ff/user.c
index b9566715..a530a532 100644
--- a/lasso/id-ff/user.c
+++ b/lasso/id-ff/user.c
@@ -136,6 +136,7 @@ lasso_user_dump(LassoUser *user)
{
LassoNode *user_node, *assertions_node, *identities_node;
LassoNodeClass *user_class, *assertions_class, *identities_class;
+ int table_size;
g_return_val_if_fail(user!=NULL, NULL);
@@ -144,18 +145,24 @@ lasso_user_dump(LassoUser *user)
user_class->set_name(user_node, LASSO_USER_NODE);
/* dump the assertions */
- assertions_node = lasso_node_new();
- assertions_class = LASSO_NODE_GET_CLASS(assertions_node);
- assertions_class->set_name(assertions_node, LASSO_USER_ASSERTIONS_NODE);
- g_hash_table_foreach(user->assertions, lasso_user_dump_assertion, assertions_node);
- user_class->add_child(user_node, assertions_node, FALSE);
+ table_size = g_hash_table_size(user->assertions);
+ if(table_size>0){
+ assertions_node = lasso_node_new();
+ assertions_class = LASSO_NODE_GET_CLASS(assertions_node);
+ assertions_class->set_name(assertions_node, LASSO_USER_ASSERTIONS_NODE);
+ g_hash_table_foreach(user->assertions, lasso_user_dump_assertion, assertions_node);
+ user_class->add_child(user_node, assertions_node, FALSE);
+ }
/* dump the identities */
- identities_node = lasso_node_new();
- identities_class = LASSO_NODE_GET_CLASS(identities_node);
- identities_class->set_name(identities_node, LASSO_USER_IDENTITIES_NODE);
- g_hash_table_foreach(user->identities, lasso_user_dump_identity, identities_node);
- user_class->add_child(user_node, identities_node, FALSE);
+ table_size = g_hash_table_size(user->identities);
+ if(table_size>0){
+ identities_node = lasso_node_new();
+ identities_class = LASSO_NODE_GET_CLASS(identities_node);
+ identities_class->set_name(identities_node, LASSO_USER_IDENTITIES_NODE);
+ g_hash_table_foreach(user->identities, lasso_user_dump_identity, identities_node);
+ user_class->add_child(user_node, identities_node, FALSE);
+ }
return(lasso_node_export(user_node));
}