diff options
author | Jeff Hostetler <jeffhost@microsoft.com> | 2017-04-14 21:12:28 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-04-15 11:21:12 +0200 |
commit | a6db3fbb6e4ec11695e2a3af8bc2cb9119cb1941 (patch) | |
tree | 6eeb1de45587403bee39e7579585c57409d1346c /t/helper | |
parent | Eleventh batch for 2.13 (diff) | |
download | git-a6db3fbb6e4ec11695e2a3af8bc2cb9119cb1941.tar.xz git-a6db3fbb6e4ec11695e2a3af8bc2cb9119cb1941.zip |
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>
Diffstat (limited to 't/helper')
-rw-r--r-- | t/helper/.gitignore | 1 | ||||
-rw-r--r-- | t/helper/test-strcmp-offset.c | 22 |
2 files changed, 23 insertions, 0 deletions
diff --git a/t/helper/.gitignore b/t/helper/.gitignore index 758ed2e8fa..e7fe7ff598 100644 --- a/t/helper/.gitignore +++ b/t/helper/.gitignore @@ -26,6 +26,7 @@ /test-sha1 /test-sha1-array /test-sigchain +/test-strcmp-offset /test-string-list /test-submodule-config /test-subprocess diff --git a/t/helper/test-strcmp-offset.c b/t/helper/test-strcmp-offset.c new file mode 100644 index 0000000000..4a45a54e92 --- /dev/null +++ b/t/helper/test-strcmp-offset.c @@ -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; +} |