[hydrixOS] : memcpyF

  • From: Stefan Kempf <kempf_stefan@xxxxxxxx>
  • To: HydrixOS Mailingliste <hydrixos@xxxxxxxxxxxxx>
  • Date: Sat, 31 Aug 2002 11:17:48 +0200 (CEST)

Hallo,

Sieht deine memcpyF Funktion in i386/string.c noch genauso aus wie in
der Version 0.2.3? Wenn ja, dann wird deine Funktion undefiniertes
Verhalten hervorrufen, wenn man Speicherbereiche kopiert, die sich
ueberlappen. Ich haette eine Version von memcpyF, die wie bcopy
funktioniert. bcopy verhaelt sich bei ueberlappenden Speicherbereichen
korrekt. Ansonsten waere memcpy mit Vorsicht oder lieber gar nicht zu
geniessen.

inline void *memcpyF(void *dest, const void *src, size_t n)
{
        const char *s = src;
        char       *d = dest;

        if (src < dest) {
                s += n;
                d += n;
                while (n--)
                        *--d = *--s;
        } else {
                while (n--)
                        *d++ = *s++;
        }

        return dest;
}


-- 
HydrixOS Developers Mailing List

Administration: webmaster@xxxxxxxxxxx 
Archive: //www.freelists.org/archives/hydrixos

Other related posts:

  • » [hydrixOS] : memcpyF