aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar John Keeping <john@metanate.com>2018-02-21 15:39:02 +0000
committerGravatar Thomas Petazzoni <thomas.petazzoni@bootlin.com>2018-02-25 22:32:16 +0100
commiteb1a45f4c1e01fa1af7ad3dbbd6b2bade7fc958d (patch)
tree0646d9e52a23e2d46e16dee60f2e6288378322c0
parent0b1583972d43fcbd3a9399870e6f98d2ea5569af (diff)
downloadbuildroot-eb1a45f4c1e01fa1af7ad3dbbd6b2bade7fc958d.tar.gz
buildroot-eb1a45f4c1e01fa1af7ad3dbbd6b2bade7fc958d.tar.bz2
libglib2: don't override ac_cv_func_strerror_r_char_p
libglib2 recently changed to use the result of the autoconf macro to decide how to use strerror_r() in g_strerror() instead of embedding the same preprocessor condition as in glibc's strings.h (upstream commit c8e268bb was first included in release 2.53.4). Following this change, if ac_cv_func_strerror_r_char_p is incorrectly set to "no", the error string is an uninitialized buffer which cannot be encoded as UTF-8. The final result of this is that GLib functions that are expected to fill in an error pointer on failure in fact leave this pointing to NULL which is likely to cause a segfault in client applications. In fact the autoconf check compiles a test file but does not need to run it, so the test is safe when cross-compiling and returns the correct answer. So remove this cached value and let the configure script figure it out for itself, fixing g_strerror() on glibc systems. Signed-off-by: John Keeping <john@metanate.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
-rw-r--r--package/libglib2/libglib2.mk2
1 files changed, 0 insertions, 2 deletions
diff --git a/package/libglib2/libglib2.mk b/package/libglib2/libglib2.mk
index b13da333d8..097c980393 100644
--- a/package/libglib2/libglib2.mk
+++ b/package/libglib2/libglib2.mk
@@ -42,8 +42,6 @@ LIBGLIB2_CONF_ENV = \
jm_cv_func_nanosleep_works=yes \
gl_cv_func_working_utimes=yes \
ac_cv_func_utime_null=yes \
- ac_cv_have_decl_strerror_r=yes \
- ac_cv_func_strerror_r_char_p=no \
jm_cv_func_svid_putenv=yes \
ac_cv_func_getcwd_null=yes \
ac_cv_func_getdelim=yes \