mirror of
https://github.com/fluencelabs/musl
synced 2025-06-24 20:21:59 +00:00
eliminate dependence of perror on printf
This commit is contained in:
@ -5,23 +5,18 @@
|
|||||||
|
|
||||||
void perror(const char *msg)
|
void perror(const char *msg)
|
||||||
{
|
{
|
||||||
#if 1
|
|
||||||
if (msg) fprintf(stderr, "%s: %m\n", msg, strerror(errno));
|
|
||||||
else fprintf(stderr, "%m\n");
|
|
||||||
#else
|
|
||||||
FILE *f = stderr;
|
FILE *f = stderr;
|
||||||
char *errstr = strerror(errno);
|
char *errstr = strerror(errno);
|
||||||
|
|
||||||
FLOCK(f);
|
FLOCK(f);
|
||||||
|
|
||||||
if (msg) {
|
if (msg) {
|
||||||
__fwritex(msg, strlen(msg), f);
|
fwrite(msg, strlen(msg), 1, f);
|
||||||
__putc_unlocked(':', f);
|
fputc(':', f);
|
||||||
__putc_unlocked(' ', f);
|
fputc(' ', f);
|
||||||
}
|
}
|
||||||
__fwritex(errstr, strlen(errstr), f);
|
fwrite(errstr, strlen(errstr), 1, f);
|
||||||
__putc_unlocked('\n', f);
|
fputc('\n', f);
|
||||||
|
|
||||||
FUNLOCK(f);
|
FUNLOCK(f);
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user