[PATCH 12/16] compat: add mempcpy()
- From
Jonathan Nieder <jrnieder@gmail.com>
- Date
- Mar 17, 2010, 12:16 UTC
- Message-ID
- <20100317121623.GL25641@progeny.tock>
- In-Reply-To
- <20100317113655.GA25470@progeny.tock>
The mempcpy() function was added in glibc 2.1. It is quite handy, so add an implementation for cross-platform use.
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> --- git-compat-util.h | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/git-compat-util.h b/git-compat-util.h index a3c4537..9bed5a0 100644 --- a/git-compat-util.h +++ b/git-compat-util.h @@ -331,6 +331,7 @@ extern int git_vsnprintf(char *str, size_t maxsize, #ifdef __GLIBC_PREREQ #if __GLIBC_PREREQ(2, 1) #define HAVE_STRCHRNUL +#define HAVE_MEMPCPY #endif #endif @@ -344,6 +345,14 @@ static inline char *gitstrchrnul(const char *s, int c) } #endif +#ifndef HAVE_MEMPCPY +#define mempcpy gitmempcpy +static inline void *gitmempcpy(void *dest, const void *src, size_t n) +{ + return (char *)memcpy(dest, src, n) + n; +} +#endif + extern void release_pack_memory(size_t, int); extern char *xstrdup(const char *str);
-- 1.7.0