X-Git-Url: https://git.dlugolecki.net.pl/?a=blobdiff_plain;f=gom%2Faddress.c;h=6c0332a64a89727d4f1fa3ab61a2a9541c3703c3;hb=1568cb8ab16ecc1984d0d00b8ae8189c32508b08;hp=1766d937164677dc659b34dcbddfd9a9b157e896;hpb=f8536669a2c38054a067bfe1596f90744b6c58da;p=gedcom-parse.git diff --git a/gom/address.c b/gom/address.c index 1766d93..6c0332a 100644 --- a/gom/address.c +++ b/gom/address.c @@ -165,3 +165,36 @@ void address_cleanup(struct address *address) } SAFE_FREE(address); } + +int write_address(Gedcom_write_hndl hndl, int parent, struct address *address) +{ + int result = 0; + + if (!address) return 1; + + if (address->full_label) + result |= gedcom_write_element_str(hndl, ELT_SUB_ADDR, 0, parent, + address->full_label); + if (address->line1) + result |= gedcom_write_element_str(hndl, ELT_SUB_ADDR_ADR1, 0, + ELT_SUB_ADDR, address->line1); + if (address->line2) + result |= gedcom_write_element_str(hndl, ELT_SUB_ADDR_ADR2, 0, + ELT_SUB_ADDR, address->line2); + if (address->city) + result |= gedcom_write_element_str(hndl, ELT_SUB_ADDR_CITY, 0, + ELT_SUB_ADDR, address->city); + if (address->state) + result |= gedcom_write_element_str(hndl, ELT_SUB_ADDR_STAE, 0, + ELT_SUB_ADDR, address->state); + if (address->postal) + result |= gedcom_write_element_str(hndl, ELT_SUB_ADDR_POST, 0, + ELT_SUB_ADDR, address->postal); + if (address->country) + result |= gedcom_write_element_str(hndl, ELT_SUB_ADDR_CTRY, 0, + ELT_SUB_ADDR, address->country); + if (address->extra) + result |= write_user_data(hndl, address->extra); + + return result; +}