[glib/gio-thumbnail-sizes: 2/14] tests: Only run g_error_new_valist() programmer error test on glibc




commit 3414d5adc3d38283f66ac24c28ca886fc6c531d9
Author: Michal Vasilek <michal vasilek cz>
Date:   Sun Sep 18 17:30:41 2022 +0200

    tests: Only run g_error_new_valist() programmer error test on glibc
    
    The musl implementation of vasprintf segfaults with NULL

 glib/tests/error.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)
---
diff --git a/glib/tests/error.c b/glib/tests/error.c
index 7ea04ea3ce..fa3a25969d 100644
--- a/glib/tests/error.c
+++ b/glib/tests/error.c
@@ -123,12 +123,12 @@ static void
 test_new_valist_invalid_va (gpointer dummy,
                          ...)
 {
-#ifdef __linux__
-  /* Only worth testing this on Linux; if other platforms regress on this legacy
-   * behaviour, we don’t care. In particular, calling g_error_new_valist() with
-   * a %NULL format will crash on FreeBSD as its implementation of vasprintf()
-   * is less forgiving than Linux’s. That’s fine: it’s a programmer error in
-   * either case. */
+#if defined(__linux__) && defined(__GLIBC__)
+  /* Only worth testing this on Linux with glibc; if other platforms regress on
+   * this legacy behaviour, we don’t care. In particular, calling
+   * g_error_new_valist() with a %NULL format will crash on FreeBSD as its
+   * implementation of vasprintf() is less forgiving than Linux’s. That’s
+   * fine: it’s a programmer error in either case. */
   const struct
     {
       GQuark domain;
@@ -182,9 +182,9 @@ test_new_valist_invalid_va (gpointer dummy,
 
       va_end (ap);
     }
-#else  /* if !__linux__ */
-  g_test_skip ("g_error_new_valist() programmer error handling is only relevant on Linux");
-#endif  /* !__linux__ */
+#else  /* if !__linux__ || !__GLIBC__ */
+  g_test_skip ("g_error_new_valist() programmer error handling is only relevant on Linux with glibc");
+#endif /* !__linux__ || ! __GLIBC__ */
 }
 
 static void


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]