Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.kernel.org/pub/scm/git/git.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2013-09-10 01:33:16 +0400
committerJunio C Hamano <gitster@pobox.com>2013-09-10 01:33:16 +0400
commit4ab4a6dfb414230bb3e13ba65a1aa2606c6102f3 (patch)
treeb82e5312a7b54dcd85139b243ff688b7da737ab4 /combine-diff.c
parent24703ead4b9391cbe71ce9978cbffdd6c3ecbaec (diff)
parent838f9a15667cfefa9e645c26627ce81ce7599915 (diff)
Merge branch 'tr/log-full-diff-keep-true-parents'
Output from "git log --full-diff -- <pathspec>" looked strange, because comparison was done with the previous ancestor that touched the specified <pathspec>, causing the patches for paths outside the pathspec to show more than the single commit has changed. Tweak "git reflog -p" for the same reason using the same mechanism. * tr/log-full-diff-keep-true-parents: log: use true parents for diff when walking reflogs log: use true parents for diff even when rewriting
Diffstat (limited to 'combine-diff.c')
-rw-r--r--combine-diff.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/combine-diff.c b/combine-diff.c
index 88525b37cf..4fc16ad4f3 100644
--- a/combine-diff.c
+++ b/combine-diff.c
@@ -10,6 +10,7 @@
#include "refs.h"
#include "userdiff.h"
#include "sha1-array.h"
+#include "revision.h"
static struct combine_diff_path *intersect_paths(struct combine_diff_path *curr, int n, int num_parent)
{
@@ -1383,7 +1384,7 @@ void diff_tree_combined(const unsigned char *sha1,
void diff_tree_combined_merge(const struct commit *commit, int dense,
struct rev_info *rev)
{
- struct commit_list *parent = commit->parents;
+ struct commit_list *parent = get_saved_parents(rev, commit);
struct sha1_array parents = SHA1_ARRAY_INIT;
while (parent) {