NetBSD compile warning ("potential null pointer dereference")
This warning is when building htop for NetBSD, with GCC with -flto enabled
lto-wrapper: warning: using serial compilation of 3 LTRANS jobs
DisplayOptionsPanel.c: In function ‘DisplayOptionsPanel_eventHandler’:
DisplayOptionsPanel.c:98:14: error: potential null pointer dereference [-Werror=null-dereference]
98 | if (OptionItem_kind(selected) == OPTION_ITEM_NUMBER) {
| ^
lto1: all warnings being treated as errors
lto-wrapper: fatal error: gcc returned 1 exit status
I actually caught this one in CI (build log), and yet I don't know how to fix it at the moment.
NetBSD or OpenBSD?
@BenBE Sorry, it's NetBSD, not OpenBSD. I corrected the description.
The problem is likely selected == NULL, which can be returned from Panel_getSelected(super); in line 91, propagating to line 98 through the fall-thru case …
Modifying line 92 to read if (previous != selected || !selected) { should address this. /untested
@Explorer09 Can you take a look at this suggestion and do a PR if you like?