Port: replace strerror_r() with glib g_strerror()
authorMichael Jeanson <mjeanson@efficios.com>
Fri, 9 Sep 2016 21:08:13 +0000 (21:08 +0000)
committerJérémie Galarneau <jeremie.galarneau@efficios.com>
Fri, 9 Jun 2017 20:58:16 +0000 (16:58 -0400)
Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
include/babeltrace/babeltrace-internal.h
include/babeltrace/compat/string-internal.h
lib/ctf-ir/attributes.c
lib/ctf-ir/clock-class.c

index 1a438ded8abf616b627ebb3792e6135cafd3bfd0..006bf8f3c7954618eb10fc9772ed6ce4822a6775 100644 (file)
@@ -86,16 +86,16 @@ extern bt_bool babeltrace_verbose, babeltrace_debug;
 
 #define _bt_printf_perror(fp, fmt, args...)                            \
        ({                                                              \
-               char buf[PERROR_BUFLEN] = "Error in strerror_r()";      \
-               bt_strerror_r(errno, buf, sizeof(buf));         \
-               _bt_printfe(fp, "error", buf, fmt, ## args);            \
+               const char *errstr;                                     \
+               errstr = g_strerror(errno);                             \
+               _bt_printfe(fp, "error", errstr, fmt, ## args);         \
        })
 
 #define _bt_printfl_perror(fp, lineno, fmt, args...)                   \
        ({                                                              \
-               char buf[PERROR_BUFLEN] = "Error in strerror_r()";      \
-               bt_strerror_r(errno, buf, sizeof(buf));         \
-               _bt_printfle(fp, "error", lineno, buf, fmt, ## args);   \
+               const char *errstr;                                     \
+               errstr = g_strerror(errno);                             \
+               _bt_printfle(fp, "error", lineno, errstr, fmt, ## args);\
        })
 
 /* printf without lineno information */
index 2aa7bc3ca9328b85262cbed714f587c8e9eca76b..c3325a3b11a6c654f56af4badeb0c1ef3dab23cf 100644 (file)
 #include <string.h>
 #include <stdlib.h>
 
-#if !defined(__GLIBC__) || ((_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) && !defined(_GNU_SOURCE))
-
-/* XSI-compliant strerror_r */
-static inline
-int bt_strerror_r(int errnum, char *buf, size_t buflen)
-{
-       return strerror_r(errnum, buf, buflen);
-}
-
-#else
-
-/* GNU-compliant strerror_r */
-static inline
-int bt_strerror_r(int errnum, char *buf, size_t buflen)
-{
-       char *retbuf;
-
-       retbuf = strerror_r(errnum, buf, buflen);
-       if (retbuf != buf)
-               strncpy(buf, retbuf, buflen);
-       buf[buflen - 1] = '\0';
-       return 0;
-}
-
-#endif
-
 #ifdef HAVE_STRNLEN
 static inline
 size_t bt_strnlen(const char *str, size_t max)
index f7e03a86cf9e89dd54bebb8fc9b258ebb2126f82..ac97972429e40323cd2361d4c61ac93fb73bf64c 100644 (file)
@@ -32,6 +32,7 @@
 #include <babeltrace/values.h>
 #include <inttypes.h>
 #include <assert.h>
+#include <babeltrace/compat/string-internal.h>
 
 #define BT_CTF_ATTR_NAME_INDEX         0
 #define BT_CTF_ATTR_VALUE_INDEX                1
index d98807165c889cc4cb1b8627dff207f875686918..7390c66395e46297218b9c5099d55a3c72adfead 100644 (file)
@@ -34,6 +34,7 @@
 #include <babeltrace/ref.h>
 #include <babeltrace/compiler-internal.h>
 #include <babeltrace/types.h>
+#include <babeltrace/compat/string-internal.h>
 #include <inttypes.h>
 #include <babeltrace/object-internal.h>
 
This page took 0.026447 seconds and 4 git commands to generate.