poldek: poldek/cli/dent.c - fix: do not remove multiple packages f...

mis mis at pld-linux.org
Sun Apr 2 21:01:40 CEST 2006


Author: mis                          Date: Sun Apr  2 19:01:40 2006 GMT
Module: poldek                        Tag: HEAD
---- Log message:
- fix: do not remove multiple packages from dent_resolve()'s result

---- Files affected:
poldek/poldek/cli:
   dent.c (1.29 -> 1.30) 

---- Diffs:

================================================================
Index: poldek/poldek/cli/dent.c
diff -u poldek/poldek/cli/dent.c:1.29 poldek/poldek/cli/dent.c:1.30
--- poldek/poldek/cli/dent.c:1.29	Mon Nov  7 22:30:57 2005
+++ poldek/poldek/cli/dent.c	Sun Apr  2 21:01:35 2006
@@ -140,6 +140,12 @@
     return strcmp(ent->name, name);
 }
 
+static 
+int pkg_dent_cmp_ptr(struct pkg_dent *e1, struct pkg_dent *e2)
+{
+    return e1 != e2;
+}
+
 
 int pkg_dent_cmp_btime(struct pkg_dent *ent1, struct pkg_dent *ent2)
 {
@@ -639,6 +645,7 @@
             } /* else */
             
             if (fnmatch(mask, ent->name, 0) == 0) {
+                DBGF("fnmatch %s %s\n", mask, ent->name);
                 n_array_push(ments, pkg_dent_link(ent));
                 matches[j]++;
             } 
@@ -664,7 +671,7 @@
 
     
     n_array_sort(ments);
-    n_array_uniq(ments);
+    n_array_uniq_ex(ments, (tn_fn_cmp)pkg_dent_cmp_ptr);
     n_array_free(masks);
     
     //if (flags & ARG_PACKAGES_RESOLV_UNAMBIGUOUS)
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/poldek/poldek/cli/dent.c?r1=1.29&r2=1.30&f=u



More information about the pld-cvs-commit mailing list