Quellcode durchsuchen

libdpkg: Handle and ignore arch_empty in varbuf_add_archqual()

Guillem Jover vor 14 Jahren
Ursprung
Commit
f98c0a68a9
2 geänderte Dateien mit 7 neuen und 0 gelöschten Zeilen
  1. 2 0
      lib/dpkg/arch.c
  2. 5 0
      lib/dpkg/test/t-arch.c

+ 2 - 0
lib/dpkg/arch.c

@@ -219,6 +219,8 @@ varbuf_add_archqual(struct varbuf *vb, const struct dpkg_arch *arch)
 {
 	if (arch->type == arch_none)
 		return;
+	if (arch->type == arch_empty)
+		return;
 
 	varbuf_add_char(vb, ':');
 	varbuf_add_str(vb, arch->name);

+ 5 - 0
lib/dpkg/test/t-arch.c

@@ -172,6 +172,11 @@ test_dpkg_arch_varbuf_archqual(void)
 	test_str(vb.buf, ==, "");
 	varbuf_reset(&vb);
 
+	varbuf_add_archqual(&vb, dpkg_arch_get(arch_empty));
+	varbuf_end_str(&vb);
+	test_str(vb.buf, ==, "");
+	varbuf_reset(&vb);
+
 	varbuf_add_archqual(&vb, dpkg_arch_get(arch_all));
 	varbuf_end_str(&vb);
 	test_str(vb.buf, ==, ":all");