@@ -858,7 +858,7 @@ static size_t find_end_of_log_message(const char *input, int no_divider)
858
858
* Return the position of the first trailer line or len if there are no
859
859
* trailers.
860
860
*/
861
- static size_t find_trailer_start (const char * buf , size_t len )
861
+ static size_t find_trailer_block_start (const char * buf , size_t len )
862
862
{
863
863
const char * s ;
864
864
ssize_t end_of_title , l ;
@@ -1074,7 +1074,6 @@ void process_trailers(const char *file,
1074
1074
LIST_HEAD (head );
1075
1075
struct strbuf sb = STRBUF_INIT ;
1076
1076
struct trailer_info info ;
1077
- size_t trailer_end ;
1078
1077
FILE * outfile = stdout ;
1079
1078
1080
1079
ensure_configured ();
@@ -1085,11 +1084,10 @@ void process_trailers(const char *file,
1085
1084
outfile = create_in_place_tempfile (file );
1086
1085
1087
1086
parse_trailers (& info , sb .buf , & head , opts );
1088
- trailer_end = info .trailer_end - sb .buf ;
1089
1087
1090
1088
/* Print the lines before the trailers */
1091
1089
if (!opts -> only_trailers )
1092
- fwrite (sb .buf , 1 , info .trailer_start - sb . buf , outfile );
1090
+ fwrite (sb .buf , 1 , info .trailer_block_start , outfile );
1093
1091
1094
1092
if (!opts -> only_trailers && !info .blank_line_before_trailer )
1095
1093
fprintf (outfile , "\n" );
@@ -1111,7 +1109,7 @@ void process_trailers(const char *file,
1111
1109
1112
1110
/* Print the lines after the trailers as is */
1113
1111
if (!opts -> only_trailers )
1114
- fwrite (sb .buf + trailer_end , 1 , sb .len - trailer_end , outfile );
1112
+ fwrite (sb .buf + info . trailer_block_end , 1 , sb .len - info . trailer_block_end , outfile );
1115
1113
1116
1114
if (opts -> in_place )
1117
1115
if (rename_tempfile (& trailers_tempfile , file ))
@@ -1123,7 +1121,7 @@ void process_trailers(const char *file,
1123
1121
void trailer_info_get (struct trailer_info * info , const char * str ,
1124
1122
const struct process_trailer_options * opts )
1125
1123
{
1126
- int end_of_log_message , trailer_start ;
1124
+ size_t end_of_log_message = 0 , trailer_block_start = 0 ;
1127
1125
struct strbuf * * trailer_lines , * * ptr ;
1128
1126
char * * trailer_strings = NULL ;
1129
1127
size_t nr = 0 , alloc = 0 ;
@@ -1132,10 +1130,10 @@ void trailer_info_get(struct trailer_info *info, const char *str,
1132
1130
ensure_configured ();
1133
1131
1134
1132
end_of_log_message = find_end_of_log_message (str , opts -> no_divider );
1135
- trailer_start = find_trailer_start (str , end_of_log_message );
1133
+ trailer_block_start = find_trailer_block_start (str , end_of_log_message );
1136
1134
1137
- trailer_lines = strbuf_split_buf (str + trailer_start ,
1138
- end_of_log_message - trailer_start ,
1135
+ trailer_lines = strbuf_split_buf (str + trailer_block_start ,
1136
+ end_of_log_message - trailer_block_start ,
1139
1137
'\n' ,
1140
1138
0 );
1141
1139
for (ptr = trailer_lines ; * ptr ; ptr ++ ) {
@@ -1156,9 +1154,9 @@ void trailer_info_get(struct trailer_info *info, const char *str,
1156
1154
strbuf_list_free (trailer_lines );
1157
1155
1158
1156
info -> blank_line_before_trailer = ends_with_blank_line (str ,
1159
- trailer_start );
1160
- info -> trailer_start = str + trailer_start ;
1161
- info -> trailer_end = str + end_of_log_message ;
1157
+ trailer_block_start );
1158
+ info -> trailer_block_start = trailer_block_start ;
1159
+ info -> trailer_block_end = end_of_log_message ;
1162
1160
info -> trailers = trailer_strings ;
1163
1161
info -> trailer_nr = nr ;
1164
1162
}
@@ -1173,6 +1171,7 @@ void trailer_info_release(struct trailer_info *info)
1173
1171
1174
1172
static void format_trailer_info (struct strbuf * out ,
1175
1173
const struct trailer_info * info ,
1174
+ const char * msg ,
1176
1175
const struct process_trailer_options * opts )
1177
1176
{
1178
1177
size_t origlen = out -> len ;
@@ -1182,8 +1181,8 @@ static void format_trailer_info(struct strbuf *out,
1182
1181
if (!opts -> only_trailers && !opts -> unfold && !opts -> filter &&
1183
1182
!opts -> separator && !opts -> key_only && !opts -> value_only &&
1184
1183
!opts -> key_value_separator ) {
1185
- strbuf_add (out , info -> trailer_start ,
1186
- info -> trailer_end - info -> trailer_start );
1184
+ strbuf_add (out , msg + info -> trailer_block_start ,
1185
+ info -> trailer_block_end - info -> trailer_block_start );
1187
1186
return ;
1188
1187
}
1189
1188
@@ -1237,7 +1236,7 @@ void format_trailers_from_commit(struct strbuf *out, const char *msg,
1237
1236
struct trailer_info info ;
1238
1237
1239
1238
trailer_info_get (& info , msg , opts );
1240
- format_trailer_info (out , & info , opts );
1239
+ format_trailer_info (out , & info , msg , opts );
1241
1240
trailer_info_release (& info );
1242
1241
}
1243
1242
0 commit comments