forked from ariadne/pkgconf
dependency: add pkgconf_dependency_free_one
parent
2b390ea9cf
commit
8130dd159e
|
@ -177,6 +177,31 @@ pkgconf_dependency_append(pkgconf_list_t *list, pkgconf_dependency_t *tail)
|
||||||
pkgconf_node_insert_tail(&tail->iter, tail, list);
|
pkgconf_node_insert_tail(&tail->iter, tail, list);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* !doc
|
||||||
|
*
|
||||||
|
* .. c:function:: void pkgconf_dependency_free_one(pkgconf_dependency_t *dep)
|
||||||
|
*
|
||||||
|
* Frees a dependency node.
|
||||||
|
*
|
||||||
|
* :param pkgconf_dependency_t* dep: The dependency node to free.
|
||||||
|
* :return: nothing
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
pkgconf_dependency_free_one(pkgconf_dependency_t *dep)
|
||||||
|
{
|
||||||
|
if (dep->match != NULL)
|
||||||
|
pkgconf_pkg_unref(dep->match->owner, dep->match);
|
||||||
|
|
||||||
|
if (dep->package != NULL)
|
||||||
|
free(dep->package);
|
||||||
|
|
||||||
|
if (dep->version != NULL)
|
||||||
|
free(dep->version);
|
||||||
|
|
||||||
|
free(dep);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* !doc
|
* !doc
|
||||||
*
|
*
|
||||||
|
@ -196,16 +221,8 @@ pkgconf_dependency_free(pkgconf_list_t *list)
|
||||||
{
|
{
|
||||||
pkgconf_dependency_t *dep = node->data;
|
pkgconf_dependency_t *dep = node->data;
|
||||||
|
|
||||||
if (dep->match != NULL)
|
pkgconf_node_delete(&dep->iter, list);
|
||||||
pkgconf_pkg_unref(dep->match->owner, dep->match);
|
pkgconf_dependency_free_one(dep);
|
||||||
|
|
||||||
if (dep->package != NULL)
|
|
||||||
free(dep->package);
|
|
||||||
|
|
||||||
if (dep->version != NULL)
|
|
||||||
free(dep->version);
|
|
||||||
|
|
||||||
free(dep);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -320,6 +320,7 @@ PKGCONF_API void pkgconf_dependency_parse_str(const pkgconf_client_t *client, pk
|
||||||
PKGCONF_API void pkgconf_dependency_parse(const pkgconf_client_t *client, pkgconf_pkg_t *pkg, pkgconf_list_t *deplist_head, const char *depends, unsigned int flags);
|
PKGCONF_API void pkgconf_dependency_parse(const pkgconf_client_t *client, pkgconf_pkg_t *pkg, pkgconf_list_t *deplist_head, const char *depends, unsigned int flags);
|
||||||
PKGCONF_API void pkgconf_dependency_append(pkgconf_list_t *list, pkgconf_dependency_t *tail);
|
PKGCONF_API void pkgconf_dependency_append(pkgconf_list_t *list, pkgconf_dependency_t *tail);
|
||||||
PKGCONF_API void pkgconf_dependency_free(pkgconf_list_t *list);
|
PKGCONF_API void pkgconf_dependency_free(pkgconf_list_t *list);
|
||||||
|
PKGCONF_API void pkgconf_dependency_free_one(pkgconf_dependency_t *dep);
|
||||||
PKGCONF_API pkgconf_dependency_t *pkgconf_dependency_add(const pkgconf_client_t *client, pkgconf_list_t *list, const char *package, const char *version, pkgconf_pkg_comparator_t compare, unsigned int flags);
|
PKGCONF_API pkgconf_dependency_t *pkgconf_dependency_add(const pkgconf_client_t *client, pkgconf_list_t *list, const char *package, const char *version, pkgconf_pkg_comparator_t compare, unsigned int flags);
|
||||||
|
|
||||||
/* argvsplit.c */
|
/* argvsplit.c */
|
||||||
|
|
Loading…
Reference in New Issue