2 * Misc. functions for systems that don't have them
4 * Copyright 1996 Alexandre Julliard
12 unsigned int usleep (unsigned int useconds
)
17 delay
.tv_usec
= useconds
;
19 select( 0, 0, 0, 0, &delay
);
22 #endif /* HAVE_USLEEP */
25 void *memmove( void *dest
, const void *src
, unsigned int len
)
27 register char *dst
= dest
;
29 /* Use memcpy if not overlapping */
30 if ((dst
+ len
<= (char *)src
) || ((char *)src
+ len
<= dst
))
32 memcpy( dst
, src
, len
);
34 /* Otherwise do it the hard way (FIXME: could do better than this) */
37 while (len
--) *dst
++ = *((char *)src
)++;
42 src
= (char *)src
+ len
- 1;
43 while (len
--) *dst
-- = *((char *)src
)--;
47 #endif /* HAVE_MEMMOVE */