diff --git a/builtin-name-rev.c b/builtin-name-rev.c
index c022224361b62b527aca7822920ac8ea896ae585..ef1638590722017ad2cacca7ce30098fd0392bd5 100644 (file)
--- a/builtin-name-rev.c
+++ b/builtin-name-rev.c
parents = parents->next, parent_number++) {
if (parent_number > 1) {
int len = strlen(tip_name);
- char *new_name = xmalloc(len + 8);
+ char *new_name = xmalloc(len +
+ 1 + decimal_length(generation) + /* ~<n> */
+ 1 + 2 + /* ^NN */
+ 1);
if (len > 2 && !strcmp(tip_name + len - 2, "^0"))
len -= 2;