Edit

thodg/libiconv/srclib/memmove.c

Branch :

  • Show log

    Commit

  • Author : Bruno Haible
    Date : 2003-04-14 14:08:07
    Hash : 24b960a3
    Message : Support for relocatable installation.

  • srclib/memmove.c
  • /* memmove.c -- copy memory.
       Copy LENGTH bytes from SOURCE to DEST.  Does not null-terminate.
       In the public domain.
       By David MacKenzie <djm@gnu.ai.mit.edu>.  */
    
    #if HAVE_CONFIG_H
    # include <config.h>
    #endif
    
    void *
    memmove (char *dest, const char *source, unsigned length)
    {
      char *d0 = dest;
      if (source < dest)
        /* Moving from low mem to hi mem; start at end.  */
        for (source += length, dest += length; length; --length)
          *--dest = *--source;
      else if (source != dest)
        {
          /* Moving from hi mem to low mem; start at beginning.  */
          for (; length; --length)
    	*dest++ = *source++;
        }
      return (void *) d0;
    }