From 777a6030a6254d5ced98c6b8fe376f91533a453f Mon Sep 17 00:00:00 2001 From: Philip Withnall Date: Thu, 2 May 2019 13:28:27 +0100 Subject: [PATCH] tests: Add checks for buffer sizing in g_strlcat() tests MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Just to ensure we’re passing a valid value for dest_size. Signed-off-by: Philip Withnall Helps: #1768 --- glib/tests/strfuncs.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/glib/tests/strfuncs.c b/glib/tests/strfuncs.c index 8644617f6..e3d27e244 100644 --- a/glib/tests/strfuncs.c +++ b/glib/tests/strfuncs.c @@ -340,26 +340,31 @@ test_strlcat (void) * Note that the @dest_size argument to g_strlcat() is normally meant to be * set to `sizeof (dest)`. We set it to various values `≤ sizeof (str_cpy)` * for testing purposes. */ + g_assert_cmpuint (strlen (str) + 1, <=, sizeof (str_cpy)); str_cpy_size = g_strlcat (str_cpy, str, strlen (str) + 1); g_assert_nonnull (str_cpy); g_assert_cmpstr (str, ==, str_cpy); g_assert_cmpint (str_cpy_size, ==, strlen (str)); + g_assert_cmpuint (strlen (str), <=, sizeof (str_cpy)); str_cpy_size = g_strlcat (str_cpy, str, strlen (str)); g_assert_nonnull (str_cpy); g_assert_cmpstr (str, ==, str_cpy); g_assert_cmpint (str_cpy_size, ==, 2 * strlen (str)); + g_assert_cmpuint (strlen (str) - 15, <=, sizeof (str_cpy)); str_cpy_size = g_strlcat (str_cpy, str, strlen (str) - 15); g_assert_nonnull (str_cpy); g_assert_cmpstr (str, ==, str_cpy); g_assert_cmpint (str_cpy_size, ==, 2 * strlen (str) - 15); + g_assert_cmpuint (0, <=, sizeof (str_cpy)); str_cpy_size = g_strlcat (str_cpy, str, 0); g_assert_nonnull (str_cpy); g_assert_cmpstr (str, ==, str_cpy); g_assert_cmpint (str_cpy_size, ==, strlen (str)); + g_assert_cmpuint (strlen (str) + 15, <=, sizeof (str_cpy)); str_cpy_size = g_strlcat (str_cpy, str, strlen (str) + 15); g_assert_nonnull (str_cpy); g_assert_cmpstr ("The quick brown fox jumps over the lazy dogThe quick brow",