mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2025-01-14 14:20:21 +00:00
textbtree: Initialize to zero the tags counting array
We're using the tag contents array to count the number of invisible tags set but we always increase it without being initialized. This may lead to unexpected behavior when traversing them and it's causing a reliable failure in the textiter tests under s390x. So, memset that area content to 0 once allocated. It's not needed to do the same for the tags themselves as we always assign them. Conditional jump or move depends on uninitialised value(s) at 0x4CFAA00: _gtk_text_btree_char_is_invisible (gtktextbtree.c:2569) by 0x4B8A1BB: find_visible_by_log_attrs (gtktextiter.c:3244) by 0x10E93D: check_backward_visible_word_start (textiter.c:484) by 0x10E93D: test_visible_word_boundaries (textiter.c:523) by 0x533288F: g_test_run_suite (in /usr/lib/s390x-linux-gnu/libglib-2.0.so.0) by 0x53328E7: g_test_run (in /usr/lib/s390x-linux-gnu/libglib-2.0.so.0) by 0x109CC1: main (textiter.c:807)
This commit is contained in:
parent
6818eee859
commit
10bdf8c645
@ -2483,6 +2483,8 @@ _gtk_text_btree_char_is_invisible (const GtkTextIter *iter)
|
||||
tagCnts = g_alloca (sizeof (int) * numTags);
|
||||
tags = g_alloca (sizeof (GtkTextTag *) * numTags);
|
||||
|
||||
memset (tagCnts, 0, sizeof (int) * numTags);
|
||||
|
||||
/*
|
||||
* Record tag toggles within the line of indexPtr but preceding
|
||||
* indexPtr.
|
||||
|
Loading…
Reference in New Issue
Block a user