diff options
Diffstat (limited to 'gmon/gmon.c')
-rw-r--r-- | gmon/gmon.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/gmon/gmon.c b/gmon/gmon.c index 1e94aaba5f..575adbcd8b 100644 --- a/gmon/gmon.c +++ b/gmon/gmon.c @@ -171,7 +171,7 @@ __monstartup (lowpc, highpc) __moncontrol(1); } -weak_alias (__monstartup, monstartup) +weak_alias(__monstartup, monstartup) static void @@ -331,7 +331,7 @@ write_gmon (void) { size_t len = strlen (env); char buf[len + 20]; - __snprintf (buf, sizeof (buf), "%s.%u", env, __getpid ()); + sprintf (buf, "%s.%u", env, __getpid ()); fd = open_not_cancel (buf, O_CREAT|O_TRUNC|O_WRONLY|O_NOFOLLOW, 0666); } @@ -343,8 +343,14 @@ write_gmon (void) { char buf[300]; int errnum = errno; - __fxprintf (NULL, "_mcleanup: gmon.out: %s\n", - __strerror_r (errnum, buf, sizeof buf)); +#ifdef USE_IN_LIBIO + if (_IO_fwide (stderr, 0) > 0) + __fwprintf (stderr, L"_mcleanup: gmon.out: %s\n", + __strerror_r (errnum, buf, sizeof buf)); + else +#endif + fprintf (stderr, "_mcleanup: gmon.out: %s\n", + __strerror_r (errnum, buf, sizeof buf)); return; } } |