@@ -422,18 +422,26 @@ int df_name_compare(const char *name1, int len1, int mode1,
422422 return c1 - c2 ;
423423}
424424
425- int cache_name_stage_compare (const char * name1 , int len1 , int stage1 , const char * name2 , int len2 , int stage2 )
425+ int name_compare (const char * name1 , size_t len1 , const char * name2 , size_t len2 )
426426{
427- int len = len1 < len2 ? len1 : len2 ;
428- int cmp ;
429-
430- cmp = memcmp (name1 , name2 , len );
427+ size_t min_len = (len1 < len2 ) ? len1 : len2 ;
428+ int cmp = memcmp (name1 , name2 , min_len );
431429 if (cmp )
432430 return cmp ;
433431 if (len1 < len2 )
434432 return -1 ;
435433 if (len1 > len2 )
436434 return 1 ;
435+ return 0 ;
436+ }
437+
438+ int cache_name_stage_compare (const char * name1 , int len1 , int stage1 , const char * name2 , int len2 , int stage2 )
439+ {
440+ int cmp ;
441+
442+ cmp = name_compare (name1 , len1 , name2 , len2 );
443+ if (cmp )
444+ return cmp ;
437445
438446 if (stage1 < stage2 )
439447 return -1 ;
@@ -442,11 +450,6 @@ int cache_name_stage_compare(const char *name1, int len1, int stage1, const char
442450 return 0 ;
443451}
444452
445- int cache_name_compare (const char * name1 , int len1 , const char * name2 , int len2 )
446- {
447- return cache_name_stage_compare (name1 , len1 , 0 , name2 , len2 , 0 );
448- }
449-
450453static int index_name_stage_pos (const struct index_state * istate , const char * name , int namelen , int stage )
451454{
452455 int first , last ;
0 commit comments