From: Linus Torvalds Date: Tue, 7 Jun 2005 22:17:33 +0000 (-0700) Subject: git-read-tree: make one-way merge also honor the "update" flag X-Git-Tag: v0.99~322 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=b5b425074e5f84f261b1290b1a83eca635c49147;p=git.git git-read-tree: make one-way merge also honor the "update" flag It didn't set CE_UPDATE before, so "-u" was a no-op. --- diff --git a/read-tree.c b/read-tree.c index 8eb243212..cf6d28e2c 100644 --- a/read-tree.c +++ b/read-tree.c @@ -218,11 +218,11 @@ static int oneway_merge(struct cache_entry **src, struct cache_entry **dst) if (!a) return 0; - if (old && same(old, a)) - *a = *old; - a->ce_flags &= ~htons(CE_STAGEMASK); - *dst++ = a; - return 1; + if (old && same(old, a)) { + *dst++ = old; + return 1; + } + return merged_entry(a, NULL, dst); } static void check_updates(struct cache_entry **src, int nr)