diff --git a/glib/gbase64.c b/glib/gbase64.c index 043593b05..2ea4a4ef4 100644 --- a/glib/gbase64.c +++ b/glib/gbase64.c @@ -424,7 +424,8 @@ guchar * g_base64_decode_inplace (gchar *text, gsize *out_len) { - gint input_length, state = 0; + gint state = 0; + size_t input_length; guint save = 0; g_return_val_if_fail (text != NULL, NULL); diff --git a/glib/gdate.c b/glib/gdate.c index c509bd303..c0d486c9d 100644 --- a/glib/gdate.c +++ b/glib/gdate.c @@ -2258,6 +2258,7 @@ win32_strftime_helper (const GDate *d, gchar *convbuf; glong convlen = 0; gsize retval; + size_t format_len = strlen (format); systemtime.wYear = tm->tm_year + 1900; systemtime.wMonth = tm->tm_mon + 1; @@ -2269,7 +2270,8 @@ win32_strftime_helper (const GDate *d, systemtime.wMilliseconds = 0; lcid = GetThreadLocale (); - result = g_array_sized_new (FALSE, FALSE, sizeof (wchar_t), MAX (128, strlen (format) * 2)); + result = g_array_sized_new (FALSE, FALSE, sizeof (wchar_t), + (format_len <= 64) ? (guint) format_len * 2 : 128); p = format; while (*p) diff --git a/glib/gdatetime.c b/glib/gdatetime.c index b5372d834..702a77c51 100644 --- a/glib/gdatetime.c +++ b/glib/gdatetime.c @@ -3268,7 +3268,7 @@ g_date_time_format_utf8 (GDateTime *datetime, GString *outstr, gboolean locale_is_utf8) { - guint len; + size_t len; guint colons; gunichar c; gboolean alt_digits = FALSE; diff --git a/glib/genviron.c b/glib/genviron.c index b72871b95..2b0136006 100644 --- a/glib/genviron.c +++ b/glib/genviron.c @@ -647,7 +647,7 @@ g_get_environ (void) { gunichar2 *strings; gchar **result; - gint i, n; + size_t i, n; strings = GetEnvironmentStringsW (); for (n = 0, i = 0; strings[n]; i++) diff --git a/glib/gfileutils.c b/glib/gfileutils.c index 2801777e4..f40400ca5 100644 --- a/glib/gfileutils.c +++ b/glib/gfileutils.c @@ -373,7 +373,7 @@ g_file_test (const gchar *filename, { const gchar *lastdot = strrchr (filename, '.'); const gchar *pathext = NULL, *p; - int extlen; + size_t extlen; if (lastdot == NULL) break; @@ -401,7 +401,7 @@ g_file_test (const gchar *filename, const gchar *q = strchr (p, ';'); if (q == NULL) q = p + strlen (p); - if (extlen == q - p && + if (extlen == (size_t) (q - p) && memcmp (lastdot, p, extlen) == 0) { g_free ((gchar *) pathext); diff --git a/glib/gmessages.c b/glib/gmessages.c index f325a9196..2ce651a71 100644 --- a/glib/gmessages.c +++ b/glib/gmessages.c @@ -1420,9 +1420,9 @@ win32_is_pipe_tty (int fd) gboolean result = FALSE; HANDLE h_fd; FILE_NAME_INFO *info = NULL; - gint info_size = sizeof (FILE_NAME_INFO) + sizeof (WCHAR) * MAX_PATH; + size_t info_size = sizeof (FILE_NAME_INFO) + sizeof (WCHAR) * MAX_PATH; wchar_t *name = NULL; - gint length; + size_t length; h_fd = (HANDLE) _get_osfhandle (fd); diff --git a/glib/goption.c b/glib/goption.c index 530e0cdba..785b151f0 100644 --- a/glib/goption.c +++ b/glib/goption.c @@ -1461,7 +1461,7 @@ parse_long_option (GOptionContext *context, } else { - gint len = strlen (group->entries[j].long_name); + size_t len = strlen (group->entries[j].long_name); if (strncmp (arg, group->entries[j].long_name, len) == 0 && (arg[len] == '=' || arg[len] == 0)) diff --git a/glib/gpattern.c b/glib/gpattern.c index bf61da36f..f77e69b6b 100644 --- a/glib/gpattern.c +++ b/glib/gpattern.c @@ -65,9 +65,9 @@ typedef enum struct _GPatternSpec { GMatchType match_type; - guint pattern_length; - guint min_length; - guint max_length; + size_t pattern_length; + size_t min_length; + size_t max_length; gchar *pattern; }; diff --git a/glib/gstrfuncs.c b/glib/gstrfuncs.c index 9af21a953..3688bea49 100644 --- a/glib/gstrfuncs.c +++ b/glib/gstrfuncs.c @@ -930,7 +930,7 @@ g_ascii_formatd (gchar *buffer, const char *decimal_point; gsize decimal_point_len; gchar *p; - int rest_len; + size_t rest_len; gchar format_char; g_return_val_if_fail (buffer != NULL, NULL); diff --git a/glib/gstring.c b/glib/gstring.c index 463bfeccc..bdd068344 100644 --- a/glib/gstring.c +++ b/glib/gstring.c @@ -134,7 +134,7 @@ g_string_new (const gchar *init) string = g_string_sized_new (2); else { - gint len; + size_t len; len = strlen (init); string = g_string_sized_new (len + 2); diff --git a/glib/gtestutils.c b/glib/gtestutils.c index 5c5f9051f..253cfa7b3 100644 --- a/glib/gtestutils.c +++ b/glib/gtestutils.c @@ -3035,7 +3035,7 @@ static gboolean path_has_prefix (const char *path, const char *prefix) { - int prefix_len = strlen (prefix); + size_t prefix_len = strlen (prefix); return (strncmp (path, prefix, prefix_len) == 0 && (path[prefix_len] == '\0' || diff --git a/glib/gtranslit.c b/glib/gtranslit.c index c264241cc..85ffb1326 100644 --- a/glib/gtranslit.c +++ b/glib/gtranslit.c @@ -187,11 +187,11 @@ lookup_item_id_for_locale (const gchar *locale) { gchar key[MAX_LOCALE_NAME + 1]; const gchar *language; - guint language_len; + size_t language_len; const gchar *territory = NULL; - guint territory_len = 0; + size_t territory_len = 0; const gchar *modifier = NULL; - guint modifier_len = 0; + size_t modifier_len = 0; const gchar *next_char; guint id; diff --git a/glib/guniprop.c b/glib/guniprop.c index 61acad6e6..e147829e2 100644 --- a/glib/guniprop.c +++ b/glib/guniprop.c @@ -805,7 +805,7 @@ output_special_case (gchar *out_buffer, int which) { const gchar *p = special_case_table + offset; - gint len; + size_t len; if (type != G_UNICODE_TITLECASE_LETTER) p = g_utf8_next_char (p); diff --git a/glib/gutf8.c b/glib/gutf8.c index 5a875ce26..dd9966df5 100644 --- a/glib/gutf8.c +++ b/glib/gutf8.c @@ -1250,7 +1250,7 @@ g_utf16_to_ucs4 (const gunichar2 *str, const gunichar2 *in; gchar *out; gchar *result = NULL; - gint n_bytes; + size_t n_bytes; gunichar high_surrogate; g_return_val_if_fail (str != NULL, NULL); diff --git a/glib/gutils.c b/glib/gutils.c index 5eaa63845..057e2bcd7 100644 --- a/glib/gutils.c +++ b/glib/gutils.c @@ -196,7 +196,7 @@ g_find_program_in_path (const gchar *program) strchr (last_dot, '\\') != NULL || strchr (last_dot, '/') != NULL) { - const gint program_length = strlen (program); + const size_t program_length = strlen (program); gchar *pathext = g_build_path (";", ".exe;.cmd;.bat;.com", g_getenv ("PATHEXT"), diff --git a/glib/gvariant-parser.c b/glib/gvariant-parser.c index 243a34f57..8bd16766c 100644 --- a/glib/gvariant-parser.c +++ b/glib/gvariant-parser.c @@ -327,10 +327,10 @@ static gboolean token_stream_peek_string (TokenStream *stream, const gchar *token) { - gint length = strlen (token); + size_t length = strlen (token); return token_stream_prepare (stream) && - stream->stream - stream->this == length && + (size_t) (stream->stream - stream->this) == length && memcmp (stream->this, token, length) == 0; } diff --git a/glib/tests/array-test.c b/glib/tests/array-test.c index 70f56e8a1..df9d15bdc 100644 --- a/glib/tests/array-test.c +++ b/glib/tests/array-test.c @@ -133,7 +133,7 @@ array_new_zero_terminated (void) garray = g_array_new (TRUE, FALSE, sizeof (gchar)); g_assert_cmpuint (garray->len, ==, 0); - g_array_append_vals (garray, "hello", strlen ("hello")); + g_array_append_vals (garray, "hello", (guint) strlen ("hello")); g_assert_cmpuint (garray->len, ==, 5); g_assert_cmpstr (garray->data, ==, "hello"); diff --git a/glib/tests/gvariant.c b/glib/tests/gvariant.c index c24cd2f3e..27586be71 100644 --- a/glib/tests/gvariant.c +++ b/glib/tests/gvariant.c @@ -313,7 +313,7 @@ invalid_mutation (const gchar *type_string) /* else, perform a random mutation at a random point */ { - gint length, n; + size_t length, n; gchar *new; gchar p; diff --git a/glib/tests/pattern.c b/glib/tests/pattern.c index b590acb8a..414b86358 100644 --- a/glib/tests/pattern.c +++ b/glib/tests/pattern.c @@ -37,9 +37,9 @@ typedef enum struct _GPatternSpec { GMatchType match_type; - guint pattern_length; - guint min_length; - guint max_length; + size_t pattern_length; + size_t min_length; + size_t max_length; gchar *pattern; }; @@ -50,7 +50,7 @@ struct _CompileTest const gchar *src; GMatchType match_type; gchar *pattern; - guint min; + size_t min; }; static CompileTest compile_tests[] = { @@ -80,8 +80,8 @@ test_compilation (gconstpointer d) g_assert_cmpint (spec->match_type, ==, test->match_type); g_assert_cmpstr (spec->pattern, ==, test->pattern); - g_assert_cmpint (spec->pattern_length, ==, strlen (spec->pattern)); - g_assert_cmpint (spec->min_length, ==, test->min); + g_assert_cmpuint (spec->pattern_length, ==, strlen (spec->pattern)); + g_assert_cmpuint (spec->min_length, ==, test->min); g_pattern_spec_free (spec); } @@ -97,8 +97,8 @@ test_copy (gconstpointer d) g_assert_cmpint (p2->match_type, ==, test->match_type); g_assert_cmpstr (p2->pattern, ==, test->pattern); - g_assert_cmpint (p2->pattern_length, ==, strlen (p1->pattern)); - g_assert_cmpint (p2->min_length, ==, test->min); + g_assert_cmpuint (p2->pattern_length, ==, strlen (p1->pattern)); + g_assert_cmpuint (p2->min_length, ==, test->min); g_pattern_spec_free (p1); g_pattern_spec_free (p2); @@ -186,7 +186,8 @@ test_match (gconstpointer d) r = g_utf8_strreverse (test->string, -1); g_assert_cmpint (g_pattern_spec_match (p, strlen (test->string), test->string, r), ==, test->match); G_GNUC_BEGIN_IGNORE_DEPRECATIONS - g_assert_cmpint (g_pattern_match (p, strlen (test->string), test->string, r), ==, test->match); + g_assert_cmpuint (strlen (test->string), <=, G_MAXUINT); + g_assert_cmpint (g_pattern_match (p, (guint) strlen (test->string), test->string, r), ==, test->match); G_GNUC_END_IGNORE_DEPRECATIONS g_free (r); diff --git a/glib/tests/scannerapi.c b/glib/tests/scannerapi.c index cee3956ea..715dd14d3 100644 --- a/glib/tests/scannerapi.c +++ b/glib/tests/scannerapi.c @@ -111,7 +111,7 @@ test_scanner_tokens (ScannerFixture *fix, gconstpointer test_data) { gchar buf[] = "(\t\n\r\\){}"; - const gint buflen = strlen (buf); + const size_t buflen = strlen (buf); gchar tokbuf[] = "(\\){}"; const gsize tokbuflen = strlen (tokbuf); gsize i; diff --git a/glib/tests/spawn-test-win32-gui.c b/glib/tests/spawn-test-win32-gui.c index 46353c8f3..a84fe83ff 100644 --- a/glib/tests/spawn-test-win32-gui.c +++ b/glib/tests/spawn-test-win32-gui.c @@ -36,7 +36,8 @@ WinMain (struct HINSTANCE__ *hInstance, { int infd = atoi (__argv[2]); int outfd = atoi (__argv[3]); - int k, n; + SSIZE_T k; + size_t n; char buf[100] = {0}; if (infd < 0 || outfd < 0) @@ -55,22 +56,28 @@ WinMain (struct HINSTANCE__ *hInstance, exit (1); } - if ((k = read (infd, &n, sizeof (n))) != sizeof (n)) + k = read (infd, &n, sizeof (n)); + if (k < 0 || (size_t) k != sizeof (n)) { - fprintf (stderr, "spawn-test-win32-gui: Got only %d bytes, wanted %d\n", - k, (int)sizeof (n)); + int errsv = errno; + if (k < 0) + fprintf (stderr, "spawn-test-win32-gui: Read error: %s\n", strerror (errsv)); + else + fprintf (stderr, "spawn-test-win32-gui: Got only %zu bytes, wanted %zu\n", + (size_t) k, sizeof (n)); exit (1); } - fprintf (stderr, "spawn-test-win32-gui: Parent says %d bytes to read\n", n); + fprintf (stderr, "spawn-test-win32-gui: Parent says %zu bytes to read\n", n); - if ((k = read (infd, buf, n)) != n) + k = read (infd, buf, n); + if (k < 0 || (size_t) k != n) { int errsv = errno; - if (k == -1) + if (k < 0) fprintf (stderr, "spawn-test-win32-gui: Read error: %s\n", strerror (errsv)); else - fprintf (stderr, "spawn-test-win32-gui: Got only %d bytes\n", k); + fprintf (stderr, "spawn-test-win32-gui: Got only %zu bytes\n", (size_t) k); exit (1); } diff --git a/glib/tests/spawn-test.c b/glib/tests/spawn-test.c index fdc35e86f..779645a13 100644 --- a/glib/tests/spawn-test.c +++ b/glib/tests/spawn-test.c @@ -198,7 +198,7 @@ test_spawn_basics (void) gchar *output = NULL; gchar *erroutput = NULL; #ifdef G_OS_WIN32 - int n; + size_t n; char buf[100]; int pipedown[2], pipeup[2]; gchar **argv = NULL; diff --git a/glib/tests/tree.c b/glib/tests/tree.c index 055a2c266..6e7fc0b5a 100644 --- a/glib/tests/tree.c +++ b/glib/tests/tree.c @@ -455,7 +455,7 @@ test_tree_insert (void) { GTree *tree; gchar *p; - gint i; + size_t i; gchar *scrambled; tree = g_tree_new (my_compare); @@ -468,8 +468,8 @@ test_tree_insert (void) g_tree_unref (tree); tree = g_tree_new (my_compare); - for (i = strlen (chars) - 1; i >= 0; i--) - g_tree_insert (tree, &chars[i], &chars[i]); + for (i = strlen (chars); i > 0; i--) + g_tree_insert (tree, &chars[i - 1], &chars[i - 1]); p = chars; g_tree_foreach (tree, check_order, &p);