DC++ crashes on usercommands supplied by flexhub ...tried gdb but prints out nothing but a never ending loop so here is msvc debug
> msvcr100d.dll!_expandtime(localeinfo_struct * plocinfo, char specifier, const tm * timeptr, char * * string, unsigned int * left, __lc_time_data * lc_time, unsigned int alternate_form) Line 798 + 0x24 bytes C++
msvcr100d.dll!_Strftime_l(char * string, unsigned int maxsize, const char * format, const tm * timeptr, void * lc_time_arg, localeinfo_struct * plocinfo) Line 380 + 0x29 bytes C++
msvcr100d.dll!strftime(char * string, unsigned int maxsize, const char * format, const tm * timeptr) Line 268 + 0x19 bytes C++
DCPlusPlus.exe!dcpp::Util::formatTime(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & msg, const __int64 t) Line 817 + 0x25 bytes C++
DCPlusPlus.exe!dcpp::Util::formatParams(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & msg, const std::tr1::unordered_map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::hash<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::equal_to<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > & params, bool filter) Line 801 + 0x19 bytes C++
DCPlusPlus.exe!dcpp::AdcHub::sendUserCmd(const dcpp::UserCommand & command, const std::tr1::unordered_map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::hash<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::equal_to<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > & params) Line 701 + 0x18 bytes C++
DCPlusPlus.exe!HubFrame::runUserCommand(const dcpp::UserCommand & uc) Line 1232 C++
DCPlusPlus.exe!std::tr1::_Pmf_caller2<void,HubFrame>::_Call_pmf<void (__thiscall HubFrame::*)(dcpp::UserCommand const &),HubFrame *,std::tr1::reference_wrapper<dcpp::UserCommand const > >(const void * __formal, void (const dcpp::UserCommand &)* _Pm, HubFrame * & _Fx0, std::tr1::reference_wrapper<dcpp::UserCommand const > & _Fx1) Line 43 C++
DCPlusPlus.exe!std::tr1::_Pmf_caller2<void,HubFrame>::_Apply_pmf<void (__thiscall HubFrame::*)(dcpp::UserCommand const &),HubFrame *,std::tr1::reference_wrapper<dcpp::UserCommand const > >(void (const dcpp::UserCommand &)* _Pm, HubFrame * & _Fx0, std::tr1::reference_wrapper<dcpp::UserCommand const > & _Fx1) Line 52 + 0x2b bytes C++
DCPlusPlus.exe!std::tr1::_Callable_pmf<void (__thiscall HubFrame::*const)(dcpp::UserCommand const &),HubFrame,0>::_ApplyX<void,HubFrame * &,std::tr1::reference_wrapper<dcpp::UserCommand const > &>(HubFrame * & _Ax0, std::tr1::reference_wrapper<dcpp::UserCommand const > & _Ax1) Line 9 + 0x1c bytes C++
DCPlusPlus.exe!std::tr1::_Bind2<std::tr1::_Callable_pmf<void (__thiscall HubFrame::*const)(dcpp::UserCommand const &),HubFrame,0>,HubFrame *,std::tr1::reference_wrapper<dcpp::UserCommand const > >::_ApplyX<void,std::tr1::_Nil &,std::tr1::_Nil &,std::tr1::_Nil &,std::tr1::_Nil &,std::tr1::_Nil &,std::tr1::_Nil &,std::tr1::_Nil &,std::tr1::_Nil &,std::tr1::_Nil &,std::tr1::_Nil &>(std::tr1::_Nil & _Bx0, std::tr1::_Nil & _Bx1, std::tr1::_Nil & _Bx2, std::tr1::_Nil & _Bx3, std::tr1::_Nil & _Bx4, std::tr1::_Nil & _Bx5, std::tr1::_Nil & _Bx6, std::tr1::_Nil & _Bx7, std::tr1::_Nil & _Bx8, std::tr1::_Nil & _Bx9) Line 293 C++
DCPlusPlus.exe!std::tr1::_Bind_base<void,std::tr1::_Bind2<std::tr1::_Callable_pmf<void (__thiscall HubFrame::*const)(dcpp::UserCommand const &),HubFrame,0>,HubFrame *,std::tr1::reference_wrapper<dcpp::UserCommand const > > >::operator()() Line 32 C++
DCPlusPlus.exe!std::tr1::_Callable_obj<std::tr1::_Bind<void,void,std::tr1::_Bind2<std::tr1::_Callable_pmf<void (__thiscall HubFrame::*const)(dcpp::UserCommand const &),HubFrame,0>,HubFrame *,std::tr1::reference_wrapper<dcpp::UserCommand const > > >,0>::_ApplyX<void>() Line 14 C++
DCPlusPlus.exe!std::tr1::_Impl_no_alloc0<std::tr1::_Callable_obj<std::tr1::_Bind<void,void,std::tr1::_Bind2<std::tr1::_Callable_pmf<void (__thiscall HubFrame::*const)(dcpp::UserCommand const &),HubFrame,0>,HubFrame *,std::tr1::reference_wrapper<dcpp::UserCommand const > > >,0>,void>::_Do_call() Line 66 C++
DCPlusPlus.exe!std::tr1::_Function_impl0<void>::operator()() Line 155 C++
DCPlusPlus.exe!dwt::checkCall(HWND__ * handle, const std::tr1::function<void __cdecl(void)> & f) Line 132 C++
DCPlusPlus.exe!dwt::`anonymous namespace'::<lambda0>::operator()() Line 136 + 0x19 bytes C++
DCPlusPlus.exe!std::tr1::_Callable_obj<dwt::`anonymous namespace'::<lambda0>,0>::_ApplyX<void>() Line 14 C++
DCPlusPlus.exe!std::tr1::_Impl_no_alloc0<std::tr1::_Callable_obj<dwt::`anonymous namespace'::<lambda0>,0>,void>::_Do_call() Line 66 C++
DCPlusPlus.exe!std::tr1::_Function_impl0<void>::operator()() Line 155 C++
DCPlusPlus.exe!dwt::Application::dispatchAsync() Line 260 C++
DCPlusPlus.exe!dwt::Application::dispatch() Line 190 + 0xb bytes C++
DCPlusPlus.exe!dwt::Application::run() Line 158 + 0x8 bytes C++
DCPlusPlus.exe!SmartWinMain(dwt::Application & app) Line 156 + 0x8 bytes C++
DCPlusPlus.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, char * lpCmdLine, int nCmdShow) Line 285 + 0xb bytes C++
DCPlusPlus.exe!__tmainCRTStartup() Line 547 + 0x2c bytes C
DCPlusPlus.exe!WinMainCRTStartup() Line 371 C
kernel32.dll!@BaseThreadInitThunk@12() + 0x12 bytes
ntdll.dll!___RtlUserThreadStart@8() + 0x27 bytes
ntdll.dll!__RtlUserThreadStart@8() + 0x1b bytes
Marked to private upon request from iceman50 until someone has some time too peak at it since there is suspicion that it could be used for exploiting