diff options
| author | Valery Febvre <vfebvre at easter-eggs.com> | 2004-07-23 13:41:21 +0000 |
|---|---|---|
| committer | Valery Febvre <vfebvre at easter-eggs.com> | 2004-07-23 13:41:21 +0000 |
| commit | f293a3b00a527df5361ded67ef1659af7acc1c69 (patch) | |
| tree | 8237c63c59673677d25e1cadef813322b33fceed | |
| parent | 5da1b0185ae35cdeb24efd4fc8c642ee3d1f6bd0 (diff) | |
| download | lasso-f293a3b00a527df5361ded67ef1659af7acc1c69.tar.gz lasso-f293a3b00a527df5361ded67ef1659af7acc1c69.tar.xz lasso-f293a3b00a527df5361ded67ef1659af7acc1c69.zip | |
Added a third arg (GError **err) in lasso_node_get_attr_value() method to report errors
| -rw-r--r-- | lasso/id-ff/user.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/lasso/id-ff/user.c b/lasso/id-ff/user.c index 77162210..6b8a0c0a 100644 --- a/lasso/id-ff/user.c +++ b/lasso/id-ff/user.c @@ -43,7 +43,6 @@ lasso_user_add_assertion(LassoUser *user, gchar *remote_providerID, LassoNode *assertion) { - gchar *providerId; int i; gboolean found; @@ -388,6 +387,8 @@ lasso_user_new_from_dump(gchar *dump) xmlChar *remote_providerID; + GError *err = NULL; + g_return_val_if_fail(dump != NULL, NULL); /* new object */ @@ -412,9 +413,10 @@ lasso_user_new_from_dump(gchar *dump) if (assertion_xmlNode->type==XML_ELEMENT_NODE && xmlStrEqual(assertion_xmlNode->name, LASSO_USER_ASSERTION_NODE)) { /* assertion node */ assertion_node = lasso_node_new_from_xmlNode(assertion_xmlNode); - remote_providerID = lasso_node_get_attr_value(assertion_node, LASSO_USER_REMOTE_PROVIDERID_NODE); - if(remote_providerID==NULL){ - debug(ERROR, "No remote provider id for assertion\n"); + remote_providerID = lasso_node_get_attr_value(assertion_node, LASSO_USER_REMOTE_PROVIDERID_NODE, &err); + if (remote_providerID == NULL) { + debug(ERROR, err->message); + g_error_free(err); continue; } lasso_user_add_assertion(user, remote_providerID, lasso_node_copy(assertion_node)); @@ -437,8 +439,7 @@ lasso_user_new_from_dump(gchar *dump) while (identity_xmlNode != NULL) { if (identity_xmlNode->type==XML_ELEMENT_NODE && xmlStrEqual(identity_xmlNode->name, LASSO_USER_IDENTITY_NODE)) { identity_node = lasso_node_new_from_xmlNode(identity_xmlNode); - remote_providerID = lasso_node_get_attr_value(identity_node, LASSO_IDENTITY_REMOTE_PROVIDERID_NODE); - + remote_providerID = lasso_node_get_attr_value(identity_node, LASSO_IDENTITY_REMOTE_PROVIDERID_NODE, NULL); /* new identity */ identity = lasso_identity_new(remote_providerID); |
