tools lib traceevent: Use str_error_r()
To make it portable to non-glibc systems, that follow the XSI variant instead of the GNU specific one that gets in place when _GNU_SOURCE is defined. Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: David Ahern <dsahern@gmail.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Wang Nan <wangnan0@huawei.com> Link: http://lkml.kernel.org/n/tip-c1gn8x978qfop65m510wy43o@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Родитель
d0761e37fe
Коммит
c3cec9e68f
|
@ -31,6 +31,7 @@
|
|||
#include <errno.h>
|
||||
#include <stdint.h>
|
||||
#include <limits.h>
|
||||
#include <linux/string.h>
|
||||
|
||||
#include <netinet/ip6.h>
|
||||
#include "event-parse.h"
|
||||
|
@ -6131,12 +6132,7 @@ int pevent_strerror(struct pevent *pevent __maybe_unused,
|
|||
const char *msg;
|
||||
|
||||
if (errnum >= 0) {
|
||||
msg = strerror_r(errnum, buf, buflen);
|
||||
if (msg != buf) {
|
||||
size_t len = strlen(msg);
|
||||
memcpy(buf, msg, min(buflen - 1, len));
|
||||
*(buf + min(buflen - 1, len)) = '\0';
|
||||
}
|
||||
str_error_r(errnum, buf, buflen);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче