Browse Source

compat: add mempcpy()

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>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Jonathan Nieder 15 years ago committed by Junio C Hamano
parent
commit
137c6eaa88
  1. 9
      git-compat-util.h

9
git-compat-util.h

@ -331,6 +331,7 @@ extern int git_vsnprintf(char *str, size_t maxsize, @@ -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) @@ -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);

Loading…
Cancel
Save