Commit d217daf1 authored by Jo-Philipp Wich's avatar Jo-Philipp Wich
Browse files

libopkg: fix replacelist parsing and writing



Signed-off-by: default avatarJo-Philipp Wich <jo@mein.io>
parent 9dd9a076
......@@ -817,11 +817,11 @@ void pkg_formatted_field(FILE * fp, pkg_t * pkg, const char *field)
case 'R':
if (strcasecmp(field, "Replaces") == 0) {
ab_pkg = pkg_get_ptr(pkg, PKG_REPLACES);
if (ab_pkg && *ab_pkg) {
if (ab_pkg && ab_pkg[0]) {
fprintf(fp, "Replaces:");
for (i = 0; *ab_pkg; i++, ab_pkg++) {
for (i = 0; ab_pkg[i]; i++) {
fprintf(fp, "%s %s", i == 0 ? "" : ",",
(*ab_pkg)->name);
ab_pkg[i]->name);
}
fprintf(fp, "\n");
}
......
......@@ -668,9 +668,8 @@ void parse_replacelist(pkg_t *pkg, char *list)
abstract_pkg_vec_insert(ab_pkg->provided_by, ab_pkg);
for (count = 1, item = strtok_r(list, ", ", &tok);
item;
count++, item = strtok_r(NULL, ", ", &tok), count++) {
for (count = 1, item = strtok_r(list, ", ", &tok); item;
count++, item = strtok_r(NULL, ", ", &tok)) {
tmp = realloc(replaces, sizeof(abstract_pkg_t *) * (count + 1));
if (!tmp)
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment