1 2 3 4 5 6 7 8 9 10 11 12 13
#include <string.h> size_t gitstrlcpy(char *dest, const char *src, size_t size) { size_t ret = strlen(src); if (size) { size_t len = (ret >= size) ? size - 1 : ret; memcpy(dest, src, len); dest[len] = '\0'; } return ret; }