poldek: poldek/pm/rpm/rpminstall.c - colors_eq() bugfix

mis mis at pld-linux.org
Sun Jun 17 22:08:03 CEST 2007


Author: mis                          Date: Sun Jun 17 20:08:03 2007 GMT
Module: poldek                        Tag: HEAD
---- Log message:
- colors_eq() bugfix

---- Files affected:
poldek/poldek/pm/rpm:
   rpminstall.c (1.20 -> 1.21) 

---- Diffs:

================================================================
Index: poldek/poldek/pm/rpm/rpminstall.c
diff -u poldek/poldek/pm/rpm/rpminstall.c:1.20 poldek/poldek/pm/rpm/rpminstall.c:1.21
--- poldek/poldek/pm/rpm/rpminstall.c:1.20	Sat Jun 16 17:06:06 2007
+++ poldek/poldek/pm/rpm/rpminstall.c	Sun Jun 17 22:07:58 2007
@@ -275,13 +275,17 @@
     if (color > 0 && (unsigned)color == pkg->color)
         return 1;
 
+    if (color == 0 && pkg->color == 0)
+        return 1;
+    
     if (color == -1 && pkg->color > 0)
         logn(LOGERR, "%s: package has color (%d), "
              "but rpm without multilib support is used", pkg_id(pkg), pkg->color);
     
-    else if (pkg->color != (unsigned)color && color + pkg->color > 0)
+    else if (pkg->color != (unsigned)color)
         logn(LOGERR, "%s package color (%d) is not equal to %s's one (%d)",
              pkg_id(pkg), pkg->color, n_basenam(path), color);
+
     return 0;
 }
 
@@ -431,19 +435,22 @@
     if (!ts->getop(ts, POLDEK_OP_RPMTEST) && (nsignerr || ncolorerr)) {
         int can_ask = (poldek_ts_is_interactive_on(ts) && ts->ask_fn);
 
-        if (nsignerr)
+        if (nsignerr) {
             if (!can_ask || !ts->ask_fn(0,
                                         _("There were signature verification errors. "
                                           "Proceed? [y/N]")))
                 goto l_err_end;
+        }
+        
 
-        if (ncolorerr)
+        if (ncolorerr) {
             if (!can_ask || !ts->ask_fn(0,
                                         _("There were package coloring mismatches. "
                                           "Proceed? [y/N]")))
                 goto l_err_end;
+        }
     }
-        
+    
     n_assert(nargs > nopts); 
     argv[nargs] = NULL;
 
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/poldek/poldek/pm/rpm/rpminstall.c?r1=1.20&r2=1.21&f=u



More information about the pld-cvs-commit mailing list