Skip to content

daemon crashes on Windows #3801

@tomatolog

Description

@tomatolog

Bug Description:

latest release crashes on Windows if the Buddy got enabled (by default) with the following stack

 	[Inline Frame] boost::process::detail::windows::limit_handles_::on_setup<boost::process::detail::windows::executor<char,boost::fusion::joint_view<boost::fusion::tuple<boost::process::detail::windows::exe_cmd_init<char>>,boost::fusion::filter_view<const boost::fusion::tuple<std::string &,boost::process::detail::windows::async_pipe_out<1,2> &,BuddyWindow_t &,const boost::process::detail::windows::limit_handles_ &,boost::process::detail::set_on_error &>,boost::process::detail::is_initializer<mpl_::arg<-1>>>>>>::<lambda_1>::operator() Line 143	C++
 	[Inline Frame] boost::process::detail::foreach_handle_invocator<`lambda at /sysroot/root/diskc/boost_1_80_0/boost/process/detail/windows/handles.hpp:137:17'>::invoke Line 55	C++
 	[Inline Frame] boost::process::detail::foreach_handle_invocator<`lambda at /sysroot/root/diskc/boost_1_80_0/boost/process/detail/windows/handles.hpp:137:17'>::operator() Line 58	C++
 	[Inline Frame] boost::fusion::detail::for_each_linear Line 35	C++
 	[Inline Frame] boost::fusion::detail::for_each_dispatch Line 46	C++
 	[Inline Frame] boost::fusion::detail::for_each Line 143	C++
 	[Inline Frame] boost::fusion::for_each Line 43	C++
 	boost::process::detail::foreach_used_handle<boost::process::detail::windows::executor<char,boost::fusion::joint_view<boost::fusion::tuple<boost::process::detail::windows::exe_cmd_init<char>>,boost::fusion::filter_view<const boost::fusion::tuple<std::string &,boost::process::detail::windows::async_pipe_out<1,2> &,BuddyWindow_t &,const boost::process::detail::windows::limit_handles_ &,boost::process::detail::set_on_error &>,boost::process::detail::is_initializer<mpl_::arg<-1>>>>>,`lambda at /sysroot/root/diskc/boost_1_80_0/boost/process/detail/windows/handles.hpp:137:17'> Line 66	C++
 	boost::process::detail::windows::limit_handles_::on_setup<boost::process::detail::windows::executor<char,boost::fusion::joint_view<boost::fusion::tuple<boost::process::detail::windows::exe_cmd_init<char>>,boost::fusion::filter_view<const boost::fusion::tuple<std::string &,boost::process::detail::windows::async_pipe_out<1,2> &,BuddyWindow_t &,const boost::process::detail::windows::limit_handles_ &,boost::process::detail::set_on_error &>,boost::process::detail::is_initializer<mpl_::arg<-1>>>>>> Line 148	C++
>	[Inline Frame] boost::process::detail::windows::executor<char,boost::fusion::joint_view<boost::fusion::tuple<boost::process::detail::windows::exe_cmd_init<char>>,boost::fusion::filter_view<const boost::fusion::tuple<std::string &,boost::process::detail::windows::async_pipe_out<1,2> &,BuddyWindow_t &,const boost::process::detail::windows::limit_handles_ &,boost::process::detail::set_on_error &>,boost::process::detail::is_initializer<mpl_::arg<-1>>>>>::on_setup_t::operator() Line 135	C++
 	[Inline Frame] boost::fusion::detail::for_each_linear Line 35	C++
 	[Inline Frame] boost::fusion::detail::for_each_linear Line 36	C++
 	[Inline Frame] boost::fusion::detail::for_each_linear Line 36	C++
 	[Inline Frame] boost::fusion::detail::for_each_linear Line 36	C++
 	[Inline Frame] boost::fusion::detail::for_each_dispatch Line 46	C++
 	[Inline Frame] boost::fusion::detail::for_each Line 143	C++
 	[Inline Frame] boost::fusion::for_each Line 35	C++
 	boost::process::detail::windows::executor<char,boost::fusion::joint_view<boost::fusion::tuple<boost::process::detail::windows::exe_cmd_init<char>>,boost::fusion::filter_view<const boost::fusion::tuple<std::string &,boost::process::detail::windows::async_pipe_out<1,2> &,BuddyWindow_t &,const boost::process::detail::windows::limit_handles_ &,boost::process::detail::set_on_error &>,boost::process::detail::is_initializer<mpl_::arg<-1>>>>>::operator() Line 181	C++
 	boost::process::detail::basic_execute_impl<char,std::string &,boost::process::detail::windows::async_pipe_out<1,2>,BuddyWindow_t &,const boost::process::detail::windows::limit_handles_ &,boost::process::detail::set_on_error> Line 268	C++
 	[Inline Frame] boost::process::detail::execute_impl Line 275	C++
 	boost::process::child::child<std::string &,boost::process::detail::windows::async_pipe_out<1,2>,BuddyWindow_t &,const boost::process::detail::windows::limit_handles_ &,boost::process::detail::set_on_error> Line 35	C++
 	TryToStart Line 380	C++
 	BuddyStart Line 499	C++
 	ServiceMain Line 14932	C++
 	[Inline Frame] mainimpl Line 14968	C++
 	main Line 14974	C++

and the error Exception thrown at 0x00007FF6984BC83C in searchd.exe: 0xC0000005: Access violation reading location 0x0000000000000000.

Manticore Search Version:

13.13.0

Operating System Version:

Windows 10

Have you tried the latest development version?

Yes

Internal Checklist:

To be completed by the assignee. Check off tasks that have been completed or are not applicable.

  • Implementation completed
  • Tests developed
  • Documentation updated
  • Documentation reviewed

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions