diff options
author | Petr Baudis <pasky@suse.cz> | 2006-11-18 03:56:52 +0100 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2006-11-18 11:09:46 -0800 |
commit | f8290630cb900fc5581e91a4cc055d2fba121db0 (patch) | |
tree | 111aaaf90925655bbf2ea181d24fdf7359820eef | |
parent | 6b1f8c32b1a602734f14b9cf8a9f59a767752677 (diff) | |
download | git-f8290630cb900fc5581e91a4cc055d2fba121db0.tar.gz git-f8290630cb900fc5581e91a4cc055d2fba121db0.tar.xz |
Fix git-for-each-refs broken for tags
Unfortunately, git-for-each-refs is currently unusable for peeking into tag
comments, since it uses freed pointers, so it just prints out all sort of
garbage.
This makes it strdup() contents and body values.
Signed-off-by: Petr Baudis <pasky@suse.cz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
-rw-r--r-- | builtin-for-each-ref.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/builtin-for-each-ref.c b/builtin-for-each-ref.c index 173bf3873..227aa3cd7 100644 --- a/builtin-for-each-ref.c +++ b/builtin-for-each-ref.c @@ -478,9 +478,9 @@ static void grab_sub_body_contents(struct atom_value *val, int deref, struct obj if (!strcmp(name, "subject")) v->s = copy_line(subpos); else if (!strcmp(name, "body")) - v->s = bodypos; + v->s = xstrdup(bodypos); else if (!strcmp(name, "contents")) - v->s = subpos; + v->s = xstrdup(subpos); } } |