@@ -162,29 +162,28 @@ static void name_commits(struct commit_list *list,
162162 nth = 0 ;
163163 while (parents ) {
164164 struct commit * p = parents -> item ;
165- char newname [ 1000 ], * en ;
165+ struct strbuf newname = STRBUF_INIT ;
166166 parents = parents -> next ;
167167 nth ++ ;
168168 if (p -> util )
169169 continue ;
170- en = newname ;
171170 switch (n -> generation ) {
172171 case 0 :
173- en += sprintf ( en , "%s" , n -> head_name );
172+ strbuf_addstr ( & newname , n -> head_name );
174173 break ;
175174 case 1 :
176- en += sprintf ( en , "%s^" , n -> head_name );
175+ strbuf_addf ( & newname , "%s^" , n -> head_name );
177176 break ;
178177 default :
179- en += sprintf ( en , "%s~%d" ,
180- n -> head_name , n -> generation );
178+ strbuf_addf ( & newname , "%s~%d" ,
179+ n -> head_name , n -> generation );
181180 break ;
182181 }
183182 if (nth == 1 )
184- en += sprintf ( en , "^" );
183+ strbuf_addch ( & newname , '^' );
185184 else
186- en += sprintf ( en , "^%d" , nth );
187- name_commit (p , xstrdup ( newname ), 0 );
185+ strbuf_addf ( & newname , "^%d" , nth );
186+ name_commit (p , strbuf_detach ( & newname , NULL ), 0 );
188187 i ++ ;
189188 name_first_parent_chain (p );
190189 }
0 commit comments