diff --git a/xzre.h b/xzre.h index 75f9be8..257fce5 100644 --- a/xzre.h +++ b/xzre.h @@ -3935,7 +3935,7 @@ extern ssize_t c_strnlen( * @param src source buffer * @param cnt number of bytes to copy */ -extern void c_memmove( +extern void* c_memmove( char *dest, char *src, size_t cnt diff --git a/xzre_code/c_memmove.c b/xzre_code/c_memmove.c index fc45199..72d0be1 100644 --- a/xzre_code/c_memmove.c +++ b/xzre_code/c_memmove.c @@ -3,7 +3,7 @@ **/ #include "xzre.h" -void c_memmove(char *dest, char *src, size_t cnt) { +void *c_memmove(char *dest, char *src, size_t cnt) { if ((src < dest) && (dest < (src + cnt))) { size_t curr = cnt - 1; if (cnt != 0) { @@ -11,16 +11,16 @@ void c_memmove(char *dest, char *src, size_t cnt) { *(dest + curr) = *(src + curr); --curr; } while (curr != -1); - return; + return dest; } } else { if (cnt == 0) - return; + return dest; size_t curr = 0; do { *(dest + curr) = *(src + curr); ++curr; } while (cnt != curr); } - return; + return dest; }