X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/270869139db617e29a35bb9ded41087bb702f9ac..6f65553ca5d2740738f399d88b3a4eb298255427:/lunaix-os/libs/klibc/string/strcpy.c?ds=sidebyside diff --git a/lunaix-os/libs/klibc/string/strcpy.c b/lunaix-os/libs/klibc/string/strcpy.c index 4002d5b..400aeec 100644 --- a/lunaix-os/libs/klibc/string/strcpy.c +++ b/lunaix-os/libs/klibc/string/strcpy.c @@ -1,7 +1,7 @@ #include #include -char* weak +char* _weak strcpy(char* dest, const char* src) { char c; @@ -24,21 +24,16 @@ strcpy(char* dest, const char* src) * @param n * @return char* */ -char* weak +char* _weak strncpy(char* dest, const char* src, unsigned long n) { - char c; + char c = '\0'; unsigned int i = 0; - while (i <= n && (c = src[i])) + while (i < n && (c = src[i])) dest[i++] = c; - if (!(n < i && src[i - 1])) { - while (i <= n) - dest[i++] = 0; - } - else { - dest[i - 1] = 0; - } + while (i < n) + dest[i++] = 0; return dest; } \ No newline at end of file