summaryrefslogtreecommitdiffstats
path: root/src/merge.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/merge.c')
-rw-r--r--src/merge.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/merge.c b/src/merge.c
index 206e2d9..01e1981 100644
--- a/src/merge.c
+++ b/src/merge.c
@@ -61,7 +61,7 @@ static int conflict_phase(DB *ddb, struct syrep_name *name, struct diff_entry *d
if ((f1 = get_current_md_by_nrecno(cb_info->c1, &nrecno1, &md1)) < 0)
return -1;
- if ((f2 = get_nrecno_by_name(cb_info->c2, name, &nrecno1, 0)) < 0)
+ if ((f2 = get_nrecno_by_name(cb_info->c2, name, &nrecno2, 0)) < 0)
return -1;
if (f2)
@@ -236,8 +236,12 @@ static int copy_phase(DB *ddb, struct syrep_name *name, struct diff_entry *de, v
} else {
const char* a;
+ int k;
- if ((a = package_get_item(cb_info->c1->package, d, 0))) {
+ if ((k = package_get_item(cb_info->c1->package, d, 0, &a)) < 0)
+ return -1;
+
+ if (k) {
fprintf(stderr, "COPY: Copying file <%s> from patch.\n", name->path);
if (makeprefixpath(path, 0777) < 0)