diff options
| -rw-r--r-- | lasso/id-wsf/data_service.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lasso/id-wsf/data_service.c b/lasso/id-wsf/data_service.c index 26b8ba20..33a91966 100644 --- a/lasso/id-wsf/data_service.c +++ b/lasso/id-wsf/data_service.c @@ -692,6 +692,13 @@ lasso_data_service_build_modify_response_msg(LassoDataService *service) profile = LASSO_WSF_PROFILE(service); request = LASSO_DST_MODIFY(profile->request); + if (service->private_data->fault != NULL) { + envelope = profile->soap_envelope_response; + envelope->Body->any = g_list_append( + envelope->Body->any, service->private_data->fault); + return lasso_wsf_profile_build_soap_response_msg(profile); + } + if (service->resource_data == NULL) { return LASSO_DST_ERROR_MISSING_SERVICE_DATA; } else { |
