SPDX-FileCopyrightText: 2021 Paul Dersey SPDX-License-Identifier: LGPL-2.0-or-later Reimplement qswap in a more correct manner that works much more cleanly and with larger string sizes. --- lib/stdlib/qsort.c +++ lib/stdlib/qsort.c @@ -24,10 +25,14 @@ void qswap (void *a, void *b, size_t size) { - char *buf[8]; - memcpy (buf, a, size); - memcpy (a, b, size); - memcpy (b, buf, size); + char *pa = a; + char *pb = b; + do + { + char tmp = *pa; + *pa++ = *pb; + *pb++ = tmp; + } while (--size > 0); } size_t