Od jakiegoś czasu mam problem z poldkiem. Sypie się przy komendzie `freshen'
bez parametru --greedy:
poldek:/all-avail> freshen -t b*
Processing dependencies...
boost-program_options-1.42.0-2.x86_64 obsoleted by
boost-program_options-1.44.0-1.x86_64
Something wrong, something not quite right with 0.30 (beta)
Assertion 'message' failed, requirements.c:349
Please report this bug to <[email protected]>.
Aborted
Obejrzałem źródła w okolicy problematycznego miejsca i wygląda na to, że
istnieją przypadki, że w funkcji try_to_upgrade_orphan() zmienna lokalna
message jest równa NULL, a asercja wymaga, żeby coś zawierała.
Założyłem, że w przypadku braku wartości zmiennej message, po prostu nie
trzeba jej wypisywać (podobnie jak kilka linii wyżej). Patch w załączniku.
--- poldek-0.30/install3/requirements.c.orig 2010-12-05 04:49:09.955189580
+0100
+++ poldek-0.30/install3/requirements.c 2010-12-05 04:50:43.357199418 +0100
@@ -346,8 +346,8 @@
} else {
struct i3pkg *i3tomark = i3pkg_new(sucpkg, 0, pkg, req,
I3PKGBY_GREEDY);
- n_assert(message);
- tracef(indent, "- %s: upgrading orphan (%s)", pkg_id(sucpkg), message);
+ tracef(indent, "- %s: upgrading orphan%s%s%s", pkg_id(sucpkg),
+ message ? " (":"", message ? message:"", message ? ")":"");
i3_process_package(indent, ictx, i3tomark);
}
_______________________________________________
pld-devel-pl mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-devel-pl