From: Tomas Mlcoch Date: Thu, 19 Sep 2013 08:16:45 +0000 (+0200) Subject: repomd: Add cr_repomd_detach_record function X-Git-Tag: upstream/0.2.1~17 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=95f56f2ff70dcc294d9d7aafa9b476a2f117dc07;p=services%2Fcreaterepo_c.git repomd: Add cr_repomd_detach_record function --- diff --git a/src/repomd.c b/src/repomd.c index 9ba4742..dd4d92e 100644 --- a/src/repomd.c +++ b/src/repomd.c @@ -684,6 +684,13 @@ cr_repomd_add_content_tag(cr_Repomd *repomd, const char *tag) cr_safe_string_chunk_insert(repomd->chunk, tag)); } +void +cr_repomd_detach_record(cr_Repomd *repomd, cr_RepomdRecord *rec) +{ + if (!repomd || !rec); + repomd->records = g_slist_remove(repomd->records, rec); +} + cr_RepomdRecord * cr_repomd_get_record(cr_Repomd *repomd, const char *type) { diff --git a/src/repomd.h b/src/repomd.h index 7d134cc..2b056c7 100644 --- a/src/repomd.h +++ b/src/repomd.h @@ -230,6 +230,14 @@ void cr_repomd_add_content_tag(cr_Repomd *repomd, const char *tag); */ cr_RepomdRecord *cr_repomd_get_record(cr_Repomd *repomd, const char *type); +/** Detach this record from the repomd records list. + * Note: Responsibility of freeing record memory no longer belongs to + * cr_Repomd object. + * @param repomd cr_Repomd object + * @param rec Record to be removed + */ +void cr_repomd_detach_record(cr_Repomd *repomd, cr_RepomdRecord *rec); + /** Frees cr_Repomd object and all its cr_RepomdRecord objects * @param repomd cr_Repomd object */