X-Git-Url: https://git.dlugolecki.net.pl/?a=blobdiff_plain;f=gom%2Fmultimedia.c;h=b7514e48d8f6022b7a88fdecf545163cd126ea92;hb=HEAD;hp=1b1f923ff4833213637efb1423ebfb728179c088;hpb=d2d823fd4fe80162765029e5bc29f9b4f6f968f5;p=gedcom-parse.git diff --git a/gom/multimedia.c b/gom/multimedia.c index 1b1f923..b7514e4 100644 --- a/gom/multimedia.c +++ b/gom/multimedia.c @@ -39,7 +39,6 @@ DEFINE_DESTROYFUNC(multimedia, gom_first_multimedia) DEFINE_ADDFUNC(multimedia, XREF_OBJE) DEFINE_DELETEFUNC(multimedia) DEFINE_GETXREFFUNC(multimedia, XREF_OBJE) -DEFINE_MAKELINKFUNC(multimedia, XREF_OBJE) DEFINE_REC_CB(multimedia, obje_start) DEFINE_STRING_CB(multimedia, obje_form_start, form) @@ -62,7 +61,7 @@ Gedcom_ctxt obje_blob_cont_start(_ELT_PARAMS_) if (! ctxt) NO_CONTEXT; else - result = make_gom_ctxt(elt, ctxt->obj_type, ctxt->ctxt_ptr); + result = dup_gom_ctxt(ctxt, elt); return (Gedcom_ctxt)result; } @@ -78,6 +77,17 @@ void multimedia_subscribe() gedcom_subscribe_to_element(ELT_OBJE_OBJE, obje_obje_start, def_elt_end); } +void UNREFALLFUNC(multimedia)(struct multimedia *obj) +{ + if (obj) { + UNREFALLFUNC(note_sub)(obj->note); + unref_xref_value(obj->continued); + UNREFALLFUNC(user_ref_number)(obj->ref); + UNREFALLFUNC(change_date)(obj->change_date); + UNREFALLFUNC(user_data)(obj->extra); + } +} + void CLEANFUNC(multimedia)(struct multimedia* obj) { if (obj) {