read-cache: add strcmp_offset function

Add strcmp_offset() function to also return the offset of the
first change.

Add unit test and helper to verify.

Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Jeff Hostetler
2017-04-14 19:12:28 +00:00
committed by Junio C Hamano
parent cf11a67975
commit a6db3fbb6e
6 changed files with 66 additions and 0 deletions

View File

@ -0,0 +1,22 @@
#include "cache.h"
int cmd_main(int argc, const char **argv)
{
int result;
size_t offset;
if (!argv[1] || !argv[2])
die("usage: %s <string1> <string2>", argv[0]);
result = strcmp_offset(argv[1], argv[2], &offset);
/*
* Because differnt CRTs behave differently, only rely on signs
* of the result values.
*/
result = (result < 0 ? -1 :
result > 0 ? 1 :
0);
printf("%d %"PRIuMAX"\n", result, (uintmax_t)offset);
return 0;
}