X-Git-Url: https://git.dlugolecki.net.pl/?a=blobdiff_plain;f=gom%2Fevent.c;fp=gom%2Fevent.c;h=af6e9129c11ea417c23de76f6e744946db4dec2e;hb=763e8737b5118c5f23dca84a3290c2d805bbefe6;hp=2d05ee9f28f3ce96b9dbcae6d4a4a733e79ee32f;hpb=7ae7ece158a1d930a77806f591b1d16b2cde581f;p=gedcom-parse.git diff --git a/gom/event.c b/gom/event.c index 2d05ee9..af6e912 100644 --- a/gom/event.c +++ b/gom/event.c @@ -44,11 +44,8 @@ Gedcom_ctxt sub_evt_start(_ELT_PARAMS_) if (! ctxt) NO_CONTEXT; else { - struct event *evt = (struct event *)malloc(sizeof(struct event)); - if (! evt) - MEMORY_ERROR; - else { - memset (evt, 0, sizeof(struct event)); + struct event *evt = SUB_MAKEFUNC(event)(); + if (evt) { evt->event = parsed_tag; evt->event_name = strdup(tag); if (! evt->event_name) { @@ -93,11 +90,8 @@ Gedcom_ctxt sub_attr_start(_ELT_PARAMS_) if (! ctxt) NO_CONTEXT; else { - struct event *evt = (struct event *)malloc(sizeof(struct event)); - if (! evt) - MEMORY_ERROR; - else { - memset (evt, 0, sizeof(struct event)); + struct event *evt = SUB_MAKEFUNC(event)(); + if (evt) { evt->event = parsed_tag; evt->event_name = strdup(tag); if (! evt->event_name) { @@ -131,6 +125,8 @@ Gedcom_ctxt sub_attr_start(_ELT_PARAMS_) return (Gedcom_ctxt)result; } +DEFINE_SUB_MAKEFUNC(event) + DEFINE_STRING_CB(event, sub_evt_type_start, type) DEFINE_DATE_CB(event, sub_evt_date_start, date) DEFINE_AGE_CB(event, sub_evt_age_start, age)