diff --git a/userspace/libsinsp/sinsp.cpp b/userspace/libsinsp/sinsp.cpp index b7e7d76026..c3d5a1f4ec 100644 --- a/userspace/libsinsp/sinsp.cpp +++ b/userspace/libsinsp/sinsp.cpp @@ -1661,7 +1661,7 @@ void sinsp::start_dropping_mode(uint32_t sampling_ratio) } #endif // _WIN32 -void sinsp::set_filter(std::unique_ptr filter) +void sinsp::set_filter(std::unique_ptr filter, const std::optional& filterstring) { if(m_filter != NULL) { @@ -1670,6 +1670,7 @@ void sinsp::set_filter(std::unique_ptr filter) } m_filter = std::move(filter); + m_filterstring = filterstring.value_or(""); } void sinsp::set_filter(const std::string& filter) @@ -1686,13 +1687,6 @@ void sinsp::set_filter(const std::string& filter) m_internal_flt_ast = compiler.get_filter_ast(); } -void sinsp::set_filter(const std::string& filterstring, std::unique_ptr filter) -{ - set_filter(std::move(filter)); - m_filterstring = filterstring; -} - - std::string sinsp::get_filter() const { return m_filterstring; diff --git a/userspace/libsinsp/sinsp.h b/userspace/libsinsp/sinsp.h index 52dde9674e..33e92ce37e 100644 --- a/userspace/libsinsp/sinsp.h +++ b/userspace/libsinsp/sinsp.h @@ -303,18 +303,7 @@ class SINSP_PUBLIC sinsp : public capture_stats_source \param filter the runtime filter object */ - void set_filter(std::unique_ptr filter); - - /*! - \brief Installs the given capture runtime filter object and accordingly - sets the filter string. - - \param filter the filter string. Refer to the filtering language - section for information about the filtering - syntax. - \param filter the runtime filter object - */ - void set_filter(const std::string& filterstring, std::unique_ptr filter); + void set_filter(std::unique_ptr filter, const std::optional& filterstring); /*! \brief Return the filter set for this capture.