Просмотр исходного кода

libdpkg: Add new pkgset_link_pkg()

Guillem Jover лет назад: 14
Родитель
Сommit
12c3d6cfc4
2 измененных файлов с 16 добавлено и 0 удалено
  1. 14 0
      lib/dpkg/pkg.c
  2. 2 0
      lib/dpkg/pkg.h

+ 14 - 0
lib/dpkg/pkg.c

@@ -136,6 +136,20 @@ pkgset_blank(struct pkgset *set)
 	set->pkg.arch_next = NULL;
 }
 
+/**
+ * Link a pkginfo instance into a package set.
+ *
+ * @param set The package set to use.
+ * @param pkg The package to link into the set.
+ */
+void
+pkgset_link_pkg(struct pkgset *set, struct pkginfo *pkg)
+{
+	pkg->set = set;
+	pkg->arch_next = set->pkg.arch_next;
+	set->pkg.arch_next = pkg;
+}
+
 static int
 nes(const char *s)
 {

+ 2 - 0
lib/dpkg/pkg.h

@@ -30,6 +30,8 @@ typedef int pkg_sorter_func(const void *a, const void *b);
 
 int pkg_sorter_by_name(const void *a, const void *b);
 
+void pkgset_link_pkg(struct pkgset *set, struct pkginfo *pkg);
+
 void pkg_set_status(struct pkginfo *pkg, enum pkgstatus status);
 void pkg_set_eflags(struct pkginfo *pkg, enum pkgeflag eflag);
 void pkg_clear_eflags(struct pkginfo *pkg, enum pkgeflag eflag);