diff --git a/userspace/libsinsp/parsers.cpp b/userspace/libsinsp/parsers.cpp index 7f357a6503..37b7afcb51 100644 --- a/userspace/libsinsp/parsers.cpp +++ b/userspace/libsinsp/parsers.cpp @@ -422,24 +422,28 @@ void sinsp_parser::process_event(sinsp_evt *evt) { case PPME_SYSCALL_MKDIRAT_X: case PPME_SYSCALL_UNLINKAT_2_X: case PPME_SYSCALL_MKNODAT_X: { - if (evt->get_tinfo() != nullptr) { - auto res = evt->get_param(0)->as(); - if(res >= 0) { - // Only if successful - auto dirfd = evt->get_param(1)->as(); - evt->set_fd_info(evt->get_tinfo()->get_fd(dirfd)); - } + if(evt->get_tinfo() == nullptr) { + break; + } + + auto res = evt->get_param(0)->as(); + if(res >= 0) { + // Only if successful + auto dirfd = evt->get_param(1)->as(); + evt->set_fd_info(evt->get_tinfo()->get_fd(dirfd)); } break; } case PPME_SYSCALL_SYMLINKAT_X: { - if (evt->get_tinfo() != nullptr) { - auto res = evt->get_param(0)->as(); - if(res >= 0) { - // Only if successful - auto dirfd = evt->get_param(2)->as(); - evt->set_fd_info(evt->get_tinfo()->get_fd(dirfd)); - } + if(evt->get_tinfo() == nullptr) { + break; + } + + auto res = evt->get_param(0)->as(); + if(res >= 0) { + // Only if successful + auto dirfd = evt->get_param(2)->as(); + evt->set_fd_info(evt->get_tinfo()->get_fd(dirfd)); } break; }