@@ -190,27 +190,27 @@ void clear_mailmap(struct string_list *map)
190
190
int map_user (struct string_list * map ,
191
191
char * email , int maxlen_email , char * name , int maxlen_name )
192
192
{
193
- char * p ;
193
+ char * end_of_email ;
194
194
struct string_list_item * item ;
195
195
struct mailmap_entry * me ;
196
196
char buf [1024 ], * mailbuf ;
197
197
int i ;
198
198
199
199
/* figure out space requirement for email */
200
- p = strchr (email , '>' );
201
- if (!p ) {
200
+ end_of_email = strchr (email , '>' );
201
+ if (!end_of_email ) {
202
202
/* email passed in might not be wrapped in <>, but end with a \0 */
203
- p = memchr (email , '\0' , maxlen_email );
204
- if (!p )
203
+ end_of_email = memchr (email , '\0' , maxlen_email );
204
+ if (!end_of_email )
205
205
return 0 ;
206
206
}
207
- if (p - email + 1 < sizeof (buf ))
207
+ if (end_of_email - email + 1 < sizeof (buf ))
208
208
mailbuf = buf ;
209
209
else
210
- mailbuf = xmalloc (p - email + 1 );
210
+ mailbuf = xmalloc (end_of_email - email + 1 );
211
211
212
212
/* downcase the email address */
213
- for (i = 0 ; i < p - email ; i ++ )
213
+ for (i = 0 ; i < end_of_email - email ; i ++ )
214
214
mailbuf [i ] = tolower (email [i ]);
215
215
mailbuf [i ] = 0 ;
216
216
@@ -236,6 +236,8 @@ int map_user(struct string_list *map,
236
236
}
237
237
if (maxlen_email && mi -> email )
238
238
strlcpy (email , mi -> email , maxlen_email );
239
+ else
240
+ * end_of_email = '\0' ;
239
241
if (maxlen_name && mi -> name )
240
242
strlcpy (name , mi -> name , maxlen_name );
241
243
debug_mm ("map_user: to '%s' <%s>\n" , name , mi -> email ? mi -> email : "" );
0 commit comments