From 2c8339172878cd935eee0d9eb6db747cebd70a72 Mon Sep 17 00:00:00 2001 From: Russell Belfer Date: Tue, 15 May 2012 16:33:05 -0700 Subject: [PATCH] Document git_buf_common_prefix This function fills in a git_buf with the common prefix of an array of strings, but let's make that a little more clear. --- src/buffer.c | 3 +++ src/buffer.h | 1 + 2 files changed, 4 insertions(+) diff --git a/src/buffer.c b/src/buffer.c index 8687d5537..ef95839f6 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -426,10 +426,13 @@ int git_buf_common_prefix(git_buf *buf, const git_strarray *strings) if (!strings || !strings->count) return 0; + /* initialize common prefix to first string */ if (git_buf_sets(buf, strings->strings[0]) < 0) return -1; + /* go through the rest of the strings, truncating to shared prefix */ for (i = 1; i < strings->count; ++i) { + for (str = strings->strings[i], pfx = buf->ptr; *str && *str == *pfx; str++, pfx++) /* scanning */; diff --git a/src/buffer.h b/src/buffer.h index 5a0e7d7b2..af760f901 100644 --- a/src/buffer.h +++ b/src/buffer.h @@ -122,6 +122,7 @@ void git_buf_rtrim(git_buf *buf); int git_buf_cmp(const git_buf *a, const git_buf *b); +/* Fill buf with the common prefix of a array of strings */ int git_buf_common_prefix(git_buf *buf, const git_strarray *strings); #endif