]> git.pld-linux.org Git - packages/poldek.git/commitdiff
- new from mis
authorArkadiusz Miśkiewicz <arekm@maven.pl>
Fri, 27 Aug 2004 19:58:19 +0000 (19:58 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    poldek-sigsegv2.patch -> 1.1

poldek-sigsegv2.patch [new file with mode: 0644]

diff --git a/poldek-sigsegv2.patch b/poldek-sigsegv2.patch
new file mode 100644 (file)
index 0000000..5960a3a
--- /dev/null
@@ -0,0 +1,57 @@
+diff -urN poldek-0.18.6.org/pkgset-install.c poldek-0.18.6/pkgset-install.c
+--- poldek-0.18.6.org/pkgset-install.c 2004-08-27 23:45:01.761428320 +0200
++++ poldek-0.18.6/pkgset-install.c     2004-08-27 23:47:40.965225664 +0200
+@@ -319,7 +319,7 @@
+     int *ncnfls, i, j, i_best, cnfl_min;
+     int i_ver_eq = -1, i_evr_eq = -1;
+-    DBGF("%s (%d)\n", pkg_snprintf_s(marker), npkgs);
++    DBGF("marker=%s (%d)\n", marker ? pkg_snprintf_s(marker) : "nil", npkgs);
+     n_assert(npkgs > 0);
+     if (npkgs == 1)
+         return 0;
+@@ -332,10 +332,10 @@
+         struct pkg *pkg = candidates[i];
+         DBGF("%d. %s %s (color white %d, marked %d, %p)\n", i, 
+-             pkg_snprintf_s(marker), pkg_snprintf_s0(pkg),
++             marker ? pkg_snprintf_s(marker) : "nil", pkg_snprintf_s0(pkg),
+              pkg_is_color(pkg, PKG_COLOR_WHITE), pkg_is_marked(pkg), pkg);
+-        if (pkg_eq_name_prefix(marker, pkg)) {
++        if (marker && pkg_eq_name_prefix(marker, pkg)) {
+             if (i_evr_eq == -1 && pkg_cmp_evr(marker, pkg) == 0)
+                 i_evr_eq = i;
+             
+@@ -758,8 +758,8 @@
+         for (i=0; i < n_array_size(db_dep->pkgs); i++) {
+             struct pkg *p = n_array_nth(db_dep->pkgs, i);
+         
+-            snprintf(&errmsg[n], sizeof(errmsg) - n, "%s %s",
+-                     pkg_is_installed(p) ? "" : " already marked", 
++            snprintf(&errmsg[n], sizeof(errmsg) - n, "%s%s",
++                     pkg_is_installed(p) ? "" : " already marked ", 
+                      pkg_snprintf_s(p));
+             
+             logn(LOGERR, "%s", errmsg);
+@@ -1137,10 +1137,9 @@
+                 n = upg->inst->askpkg_fn(capreq_snprintf_s(req),
+                                          tomark_candidates, tomark);
+                 real_tomark = tomark_candidates[n];
+-            }
+-            
+             free(tomark_candidates);
+             tomark_candidates = NULL;
++            }
+             
+             if (marked_for_removal_by_req(real_tomark, req, upg)) {
+                 logn(LOGERR, _("%s (cap %s) is required by %s%s"),
+@@ -1177,6 +1176,7 @@
+                 } else {
+                     p = select_successor(pkg, ps, upg, &by_obsoletes);
+                 }
++                
+ #if 0           /* code "moved" above cause to aggresive_greedy */
+                 p = select_pkg(pkg->name, ps->pkgs, upg);
+                 if (p == NULL && (upg->inst->flags & INSTS_OBSOLETES)) {
+
This page took 0.510944 seconds and 4 git commands to generate.