Avoid unexpected else when variables are undefined

This commit is contained in:
Félix Suárez 2023-05-29 10:02:19 -06:00
parent bb1f67c960
commit 883351b68d

View File

@ -5253,9 +5253,10 @@ sub get_module_status ($$$$) {
if ($module_type !~ m/_string/) { if ($module_type !~ m/_string/) {
# Critical # Critical
if ($critical_min ne $critical_max) { if ($critical_min ne $critical_max && defined($module->{'critical_inverse'})) {
# [critical_min, critical_max) # [critical_min, critical_max)
if (defined($module->{'critical_inverse'}) && $module->{'critical_inverse'} == 0) { if ($module->{'critical_inverse'} == 0) {
return 1 if ($data >= $critical_min && $data < $critical_max); return 1 if ($data >= $critical_min && $data < $critical_max);
return 1 if ($data >= $critical_min && $critical_max < $critical_min); return 1 if ($data >= $critical_min && $critical_max < $critical_min);
} }
@ -5270,9 +5271,10 @@ sub get_module_status ($$$$) {
} }
# Warning # Warning
if ($warning_min ne $warning_max) { if ($warning_min ne $warning_max && defined($module->{'warning_inverse'})) {
# [warning_min, warning_max) # [warning_min, warning_max)
if (defined($module->{'warning_inverse'}) && $module->{'warning_inverse'} == 0) { if ($module->{'warning_inverse'} == 0) {
return 2 if ($data >= $warning_min && $data < $warning_max); return 2 if ($data >= $warning_min && $data < $warning_max);
return 2 if ($data >= $warning_min && $warning_max < $warning_min); return 2 if ($data >= $warning_min && $warning_max < $warning_min);
} }
@ -5290,24 +5292,32 @@ sub get_module_status ($$$$) {
else { else {
# Critical # Critical
$eval_result = eval { if(defined($module->{'critical_inverse'})){
if (defined($module->{'critical_inverse'}) && $module->{'critical_inverse'} == 0) {
$critical_str ne '' && $data =~ /$critical_str/ ; $eval_result = eval {
} else { if ($module->{'critical_inverse'} == 0) {
$critical_str ne '' && $data !~ /$critical_str/ ; $critical_str ne '' && $data =~ /$critical_str/ ;
} } else {
}; $critical_str ne '' && $data !~ /$critical_str/ ;
return 1 if ($eval_result); }
};
return 1 if ($eval_result);
}
# Warning # Warning
$eval_result = eval { if(defined($module->{'critical_inverse'})){
if (defined($module->{'warning_inverse'}) && $module->{'warning_inverse'} == 0) {
$warning_str ne '' && $data =~ /$warning_str/ ; $eval_result = eval {
} else { if ($module->{'warning_inverse'} == 0) {
$warning_str ne '' && $data !~ /$warning_str/ ; $warning_str ne '' && $data =~ /$warning_str/ ;
} } else {
}; $warning_str ne '' && $data !~ /$warning_str/ ;
return 2 if ($eval_result); }
};
return 2 if ($eval_result);
}
} }
# Normal # Normal