Avoid null check for reference in fm_snmp_util_gen_trap
As C++ references cannot be NULL, new compilers optimizes the code assuming this condition. Therefore, in new compilers, from GCC 6 to 8 the fn_snmp_util_gen_trap will segfault trying to deference data.entity_instance_id as the if (&data != NULL) will be always optimized to be true. Turns out that the case where SFmAlarmDataT is expected to be NULL (or empty) is when the alarm type is WARM_START. So changing the if statement to look for WARM_START instead of checking the null reference seems to be a feasible solution. Story: 2003498 Task: 24775 Change-Id: Ica07ec8d7ad009e1048f014b0a6440c76de09eef Signed-off-by: Erich Cordoba <erich.cordoba.malibran@intel.com>
This commit is contained in:
parent
c8159ea6cb
commit
47209218ac
@ -181,7 +181,7 @@ bool fm_snmp_util_gen_trap(int type, SFmAlarmDataT &data) {
|
||||
|
||||
res = getTrapDestList();
|
||||
|
||||
if (&data != NULL) {
|
||||
if (get_trap_objtype(type) != WARM_START) {
|
||||
eid.assign(data.entity_instance_id);
|
||||
std::string region_name = fm_db_util_get_region_name();
|
||||
std::string sys_name = fm_db_util_get_system_name();
|
||||
|
Loading…
x
Reference in New Issue
Block a user