[glib: 2/4] tests: Add checks for buffer sizing in g_strlcat() tests



commit 777a6030a6254d5ced98c6b8fe376f91533a453f
Author: Philip Withnall <withnall endlessm com>
Date:   Thu May 2 13:28:27 2019 +0100

    tests: Add checks for buffer sizing in g_strlcat() tests
    
    Just to ensure we’re passing a valid value for dest_size.
    
    Signed-off-by: Philip Withnall <withnall endlessm com>
    
    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",


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