-
-
Notifications
You must be signed in to change notification settings - Fork 15
Description
What Happened?
SettingsSidebar updates the visible child property to SettingsPage that SettingsSidebarRow has when the selection of SettingsSidebarRow is changed:
However, row could be null if the selection is cleared according to Valadoc, which causes a null access when you select some SettingsSidebarRow and removes it.
Steps to Reproduce
I made a test app to reproduce this issue easily.
- Clone, build, and install https://github.com/ryonakano/junk/tree/settings-sidebar-bug
- Open System Settings via Terminal
- Go to "Bug in SettingsSidebar" plug under the Administration section
- Click the
+button in the action bar
- Click the
-button in the action bar

- See the following message is shown in the terminal
(io.elementary.settings:5991): switchboard-CRITICAL **: 21:05:11.933: switchboard_settings_sidebar_row_get_page: assertion 'self != NULL' failed
(io.elementary.settings:5991): Gtk-CRITICAL **: 21:05:11.933: gtk_stack_set_visible_child: assertion 'GTK_IS_WIDGET (child)' failed
Expected Behavior
The above message are not shown and no null access happens.
OS Version
8.x (Circe)
Session Type
Classic Session (X11, This is the default)
Software Version
Compiled from git
Log Output
Hardware Info
No response
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels