mirror of
https://github.com/zeek/zeek.git
synced 2025-10-12 11:38:20 +00:00
Event: Use IntrusivePtr to manage obj refcount
Fly-by cleanup.
This commit is contained in:
parent
e4e9ec3e80
commit
89402fcc1b
2 changed files with 7 additions and 14 deletions
19
src/Event.cc
19
src/Event.cc
|
@ -46,12 +46,9 @@ Event::Event(const EventHandlerPtr& arg_handler, zeek::Args arg_args, util::deta
|
|||
args(std::move(arg_args)),
|
||||
src(arg_src),
|
||||
aid(arg_aid),
|
||||
obj(arg_obj),
|
||||
obj(zeek::NewRef{}, arg_obj),
|
||||
next_event(nullptr),
|
||||
meta(detail::MakeEventMetadataVector(arg_ts)) {
|
||||
if ( obj )
|
||||
Ref(obj);
|
||||
}
|
||||
meta(detail::MakeEventMetadataVector(arg_ts)) {}
|
||||
|
||||
Event::Event(detail::EventMetadataVectorPtr arg_meta, const EventHandlerPtr& arg_handler, zeek::Args arg_args,
|
||||
util::detail::SourceID arg_src, analyzer::ID arg_aid, Obj* arg_obj)
|
||||
|
@ -59,12 +56,9 @@ Event::Event(detail::EventMetadataVectorPtr arg_meta, const EventHandlerPtr& arg
|
|||
args(std::move(arg_args)),
|
||||
src(arg_src),
|
||||
aid(arg_aid),
|
||||
obj(arg_obj),
|
||||
obj(zeek::NewRef{}, arg_obj),
|
||||
next_event(nullptr),
|
||||
meta(std::move(arg_meta)) {
|
||||
if ( obj )
|
||||
Ref(obj);
|
||||
}
|
||||
meta(std::move(arg_meta)) {}
|
||||
|
||||
zeek::VectorValPtr Event::MetadataValues(const EnumValPtr& id) const {
|
||||
static const auto& any_vec_t = zeek::id::find_type<zeek::VectorType>("any_vec");
|
||||
|
@ -151,9 +145,8 @@ void Event::Dispatch(bool no_remote) {
|
|||
// Already reported.
|
||||
}
|
||||
|
||||
if ( obj )
|
||||
// obj->EventDone();
|
||||
Unref(obj);
|
||||
// Unref obj
|
||||
obj.reset();
|
||||
|
||||
if ( handler->ErrorHandler() )
|
||||
reporter->EndErrorHandler();
|
||||
|
|
|
@ -95,7 +95,7 @@ private:
|
|||
zeek::Args args;
|
||||
util::detail::SourceID src;
|
||||
analyzer::ID aid;
|
||||
Obj* obj;
|
||||
zeek::IntrusivePtr<Obj> obj;
|
||||
Event* next_event;
|
||||
detail::EventMetadataVectorPtr meta;
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue