]> git.baikalelectronics.ru Git - kernel.git/commit
Revert "kconfig: qconf: don't show goback button on splitMode"
authorMasahiro Yamada <masahiroy@kernel.org>
Sat, 1 Aug 2020 07:08:49 +0000 (16:08 +0900)
committerMasahiro Yamada <masahiroy@kernel.org>
Sat, 1 Aug 2020 11:54:39 +0000 (20:54 +0900)
commitd5215a5f1cbe6c62301fdf10e51ddc95c6a7dca1
treeccf6f187f87caceeda477abc1df6b6c2fb66b9f6
parent9e7cffcbad2d98411596c9af95443bbcf531a860
Revert "kconfig: qconf: don't show goback button on splitMode"

This reverts commit ecf859b83248bb1b4c6e73120e93e9a3338674a2.

Maxim Levitsky reports 'make xconfig' crashes since that commit
(https://lkml.org/lkml/2020/7/18/411)

Or, the following is simple test code that makes it crash:

    menu "Menu"

    config FOO
            bool "foo"
            default y

    menuconfig BAR
            bool "bar"
            depends on FOO

    endmenu

Select the Split View mode, and double-click "bar" in the right
window, then you will see Segmentation fault.

When 'last' is not set for symbolMode, the following code in
ConfigList::updateList() calls firstChild().

  item = last ? last->nextSibling() : firstChild();

However, the pointer returned by ConfigList::firstChild() does not
seem to be compatible with (ConfigItem *), which seems another bug.

I'd rather want to reconsider whether hiding the goback icon is the
right thing to do.

In the following test code, the Split View shows "Menu2" and "Menu3"
in the right window. You can descend into "Menu3", but there is no way
to ascend back to "Menu2" from "Menu3".

    menu "Menu1"

    config FOO
            bool "foo"
            default y

    menu "Menu2"
            depends on FOO

    menu "Menu3"

    config BAZ
            bool "baz"

    endmenu

    endmenu

    endmenu

It is true that the goback button is currently not functional due to
yet another bug, but hiding the problem is not the right way to go.

Anyway, Segmentation fault is fatal. Revert the offending commit for
now, and we should find the right solution.

Reported-by: Maxim Levitsky <mlevitsk@redhat.com>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
scripts/kconfig/qconf.cc