Forráskód Böngészése

libdpkg: Add new pkg_copy_eflags()

Guillem Jover 14 éve
szülő
commit
06844da069
3 módosított fájl, 11 hozzáadás és 0 törlés
  1. 1 0
      lib/dpkg/libdpkg.map
  2. 9 0
      lib/dpkg/pkg.c
  3. 1 0
      lib/dpkg/pkg.h

+ 1 - 0
lib/dpkg/libdpkg.map

@@ -204,6 +204,7 @@ LIBDPKG_PRIVATE {
 	pkg_set_eflags;
 	pkg_set_eflags;
 	pkg_clear_eflags;
 	pkg_clear_eflags;
 	pkg_reset_eflags;
 	pkg_reset_eflags;
+	pkg_copy_eflags;
 	pkg_set_want;
 	pkg_set_want;
 	pkg_is_informative;
 	pkg_is_informative;
 	copy_dependency_links;
 	copy_dependency_links;

+ 9 - 0
lib/dpkg/pkg.c

@@ -63,6 +63,15 @@ pkg_reset_eflags(struct pkginfo *pkg)
 	pkg->eflag = eflag_ok;
 	pkg->eflag = eflag_ok;
 }
 }
 
 
+/**
+ * Copy the package error flags to another package.
+ */
+void
+pkg_copy_eflags(struct pkginfo *pkg_dst, struct pkginfo *pkg_src)
+{
+	pkg_dst->eflag = pkg_src->eflag;
+}
+
 /**
 /**
  * Set the package selection status.
  * Set the package selection status.
  */
  */

+ 1 - 0
lib/dpkg/pkg.h

@@ -34,6 +34,7 @@ void pkg_set_status(struct pkginfo *pkg, enum pkgstatus status);
 void pkg_set_eflags(struct pkginfo *pkg, enum pkgeflag eflag);
 void pkg_set_eflags(struct pkginfo *pkg, enum pkgeflag eflag);
 void pkg_clear_eflags(struct pkginfo *pkg, enum pkgeflag eflag);
 void pkg_clear_eflags(struct pkginfo *pkg, enum pkgeflag eflag);
 void pkg_reset_eflags(struct pkginfo *pkg);
 void pkg_reset_eflags(struct pkginfo *pkg);
+void pkg_copy_eflags(struct pkginfo *pkg_dst, struct pkginfo *pkg_src);
 void pkg_set_want(struct pkginfo *pkg, enum pkgwant want);
 void pkg_set_want(struct pkginfo *pkg, enum pkgwant want);
 
 
 DPKG_END_DECLS
 DPKG_END_DECLS