]> git.ipfire.org Git - people/ms/linux.git/commitdiff
kconfig: fix bug in search results string: use strlen(gstr->s), not gstr->len
authorMartin Walch <walch.martin@web.de>
Thu, 3 Oct 2013 16:35:16 +0000 (18:35 +0200)
committerJiri Slaby <jslaby@suse.cz>
Mon, 9 Feb 2015 09:17:19 +0000 (10:17 +0100)
commit 503c823048e81cc85c0e9d8c297cc70203e335e5 upstream.

The struct gstr has a capacity that may differ from the actual string length.

However, a string manipulation in the function search_conf made the assumption
that it is the same, which led to messing up some search results, especially
when the content of the gstr in use had not yet reached at least 63 chars.

Signed-off-by: Martin Walch <walch.martin@web.de>
Acked-by: Wang YanQing <udknight@gmail.com>
Acked-by: Benjamin Poirier <bpoirier@suse.de>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
scripts/kconfig/menu.c

index c1d53200c306dc6202cbcc13555a05333c34411a..2b3317010ba4d0fe2991fd3306a8dc48fcaaa57b 100644 (file)
@@ -583,7 +583,7 @@ static void get_prompt_str(struct gstr *r, struct property *prop,
                for (j = 4; --i >= 0; j += 2) {
                        menu = submenu[i];
                        if (head && location && menu == location)
-                               jump->offset = r->len - 1;
+                               jump->offset = strlen(r->s);
                        str_printf(r, "%*c-> %s", j, ' ',
                                   _(menu_get_prompt(menu)));
                        if (menu->sym) {