X-Git-Url: https://git.dlugolecki.net.pl/?a=blobdiff_plain;f=gom%2Fuser_ref.c;h=27f32bb88818c105892842ccdb06e7e7f3412adc;hb=1568cb8ab16ecc1984d0d00b8ae8189c32508b08;hp=e83c82db68e8f4df02d6936af38f82815b36457c;hpb=bdf47fdee469d5a1d7ddfd06a0e4b26f3b40b0f4;p=gedcom-parse.git diff --git a/gom/user_ref.c b/gom/user_ref.c index e83c82d..27f32bb 100644 --- a/gom/user_ref.c +++ b/gom/user_ref.c @@ -139,3 +139,24 @@ void user_ref_cleanup(struct user_ref_number* refn) DESTROY_CHAIN_ELTS(user_data, refn->extra, user_data_cleanup); } } + +int write_user_refs(Gedcom_write_hndl hndl, int parent, + struct user_ref_number *refn) +{ + int result = 0; + struct user_ref_number* obj; + + if (!refn) return 1; + + for (obj = refn; obj; obj = obj->next) { + result |= gedcom_write_element_str(hndl, ELT_SUB_IDENT_REFN, 0, + parent, obj->value); + if (obj->type) + result |= gedcom_write_element_str(hndl, ELT_SUB_IDENT_REFN_TYPE, 0, + ELT_SUB_IDENT_REFN, obj->type); + if (obj->extra) + result |= write_user_data(hndl, obj->extra); + } + + return result; +}