cppcheck: (error) Null pointer dereference: who_perm
As indicated by the VERIFY the local who_perm variable can never be NULL in parse_fs_perm(). Due to the existence of the is_set conditional, which is always true, cppcheck 1.88 was reporting a possible NULL reference. Resolve the issue by removing the extraneous is_set variable. Reviewed-by: Tony Hutter <hutter2@llnl.gov> Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Closes #9732
This commit is contained in:
parent
070402f112
commit
1e49b288cb
|
@ -5102,7 +5102,6 @@ parse_fs_perm(fs_perm_t *fsperm, nvlist_t *nvl)
|
|||
zfs_deleg_who_type_t perm_type = name[0];
|
||||
char perm_locality = name[1];
|
||||
const char *perm_name = name + 3;
|
||||
boolean_t is_set = B_TRUE;
|
||||
who_perm_t *who_perm = NULL;
|
||||
|
||||
assert('$' == name[2]);
|
||||
|
@ -5132,7 +5131,6 @@ parse_fs_perm(fs_perm_t *fsperm, nvlist_t *nvl)
|
|||
assert(!"unhandled zfs_deleg_who_type_t");
|
||||
}
|
||||
|
||||
if (is_set) {
|
||||
who_perm_node_t *found_node = NULL;
|
||||
who_perm_node_t *node = safe_malloc(
|
||||
sizeof (who_perm_node_t));
|
||||
|
@ -5181,8 +5179,8 @@ parse_fs_perm(fs_perm_t *fsperm, nvlist_t *nvl)
|
|||
node = found_node;
|
||||
who_perm = &node->who_perm;
|
||||
}
|
||||
}
|
||||
VERIFY3P(who_perm, !=, NULL);
|
||||
|
||||
assert(who_perm != NULL);
|
||||
(void) parse_who_perm(who_perm, nvl2, perm_locality);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue