X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fverbose.c;h=d725881cf40acea319dbebc0d1775b0ccb73f738;hb=7553044c59814c33763bb4b1c34664dceed68735;hp=2045bde172bb7cf928c138eb9e14819618e95f75;hpb=3a6e947bef1b2942e24d2fdee1a76dbf3305b508;p=src%2Fapp-framework-main.git diff --git a/src/verbose.c b/src/verbose.c index 2045bde..d725881 100644 --- a/src/verbose.c +++ b/src/verbose.c @@ -1,5 +1,5 @@ /* - Copyright (C) 2016, 2017 "IoT.bzh" + Copyright (C) 2016-2019 "IoT.bzh" author: José Bollo @@ -43,14 +43,18 @@ void vverbose(int level, const char *file, int line, const char *fmt, va_list ar void verbose_set_name(const char *name, int authority) { + closelog(); openlog(name, LOG_PERROR, authority ? LOG_AUTH : LOG_USER); } #else +#include +#include #include +#include -static const char *appname; +static char *appname; static int appauthority; @@ -67,7 +71,9 @@ static const char *prefixes[] = { void vverbose(int level, const char *file, int line, const char *fmt, va_list args) { + int saverr = errno; int tty = isatty(fileno(stderr)); + errno = saverr; fprintf(stderr, "%s: ", prefixes[LEVEL(level)] + (tty ? 4 : 0)); vfprintf(stderr, fmt, args); @@ -79,7 +85,8 @@ void vverbose(int level, const char *file, int line, const char *fmt, va_list ar void verbose_set_name(const char *name, int authority) { - appname = name; + free(appname); + appname = name ? strdup(name) : NULL; appauthority = authority; }