forked from aniani/vim
patch 8.0.0241: fallback implementation of mch_memmove is unused
Problem: Vim defines a mch_memmove() function but it doesn't work, thus is always unused. Solution: Remove the mch_memmove implementation. (suggested by Dominique Pelle)
This commit is contained in:
28
src/misc2.c
28
src/misc2.c
@@ -1740,34 +1740,6 @@ vim_memset(void *ptr, int c, size_t size)
|
||||
}
|
||||
#endif
|
||||
|
||||
/* skipped when generating prototypes, the prototype is in vim.h */
|
||||
#ifdef VIM_MEMMOVE
|
||||
/*
|
||||
* Version of memmove() that handles overlapping source and destination.
|
||||
* For systems that don't have a function that is guaranteed to do that (SYSV).
|
||||
*/
|
||||
void
|
||||
mch_memmove(void *src_arg, void *dst_arg, size_t len)
|
||||
{
|
||||
/*
|
||||
* A void doesn't have a size, we use char pointers.
|
||||
*/
|
||||
char *dst = dst_arg, *src = src_arg;
|
||||
|
||||
/* overlap, copy backwards */
|
||||
if (dst > src && dst < src + len)
|
||||
{
|
||||
src += len;
|
||||
dst += len;
|
||||
while (len-- > 0)
|
||||
*--dst = *--src;
|
||||
}
|
||||
else /* copy forwards */
|
||||
while (len-- > 0)
|
||||
*dst++ = *src++;
|
||||
}
|
||||
#endif
|
||||
|
||||
#if (!defined(HAVE_STRCASECMP) && !defined(HAVE_STRICMP)) || defined(PROTO)
|
||||
/*
|
||||
* Compare two strings, ignoring case, using current locale.
|
||||
|
Reference in New Issue
Block a user