From e231c7dae90002f4aa9a6e8bdb445a0bd6c392ae Mon Sep 17 00:00:00 2001 From: Jeff Johnston Date: Wed, 19 Nov 2008 20:04:09 +0000 Subject: 2008-11-19 Craig Howland * libc/unix/collate.c (__collate_err): simplify to remove unnecessary strdup() and strlen() calls, also getting rid of a compiler warning. --- newlib/libc/posix/collate.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'newlib/libc/posix/collate.c') diff --git a/newlib/libc/posix/collate.c b/newlib/libc/posix/collate.c index 4e717bc39..8af8970c9 100644 --- a/newlib/libc/posix/collate.c +++ b/newlib/libc/posix/collate.c @@ -175,14 +175,12 @@ __collate_strdup(s) void __collate_err(int ex, const char *f) { - const char *s = strdup("collate_error"); + const char *s; int serrno = errno; - write(STDERR_FILENO, s, strlen(s)); - write(STDERR_FILENO, ": ", 2); - free(s); - s = f; - write(STDERR_FILENO, s, strlen(s)); + /* Be careful to change write counts if you change the strings */ + write(STDERR_FILENO, "collate_error: ", 15); + write(STDERR_FILENO, f, strlen(f)); write(STDERR_FILENO, ": ", 2); s = strerror(serrno); write(STDERR_FILENO, s, strlen(s)); -- cgit v1.2.3