View Issue Details

IDProjectCategoryView StatusLast Update
0005337DarkRadiantGUIpublic20.09.2020 04:52
Reportergreebo Assigned Togreebo  
PrioritynormalSeveritycrashReproducibilitysometimes
Status resolvedResolutionfixed 
Product Version2.8.1 
Target Version2.8.1Fixed in Version2.8.1 
Summary0005337: Crash in PrefabChooser dialog when using type-search while a prefab is loaded
DescriptionDue to the Progress Dialog triggering event processing, there seems to be a re-entrancy problem happening, causing another prefab to be loaded before the current one is finished loading.
Additional InformationStacktrace:
        DarkRadiantCore.dll!std::_Ref_count_base::_Decref() Line 650 C++
     DarkRadiantCore.dll!std::_Ptr_base<scene::IMapRootNode>::_Decref() Line 884 C++
     DarkRadiantCore.dll!std::shared_ptr<scene::IMapRootNode>::~shared_ptr<scene::IMapRootNode>() Line 1133 C++
     DarkRadiantCore.dll!std::shared_ptr<scene::IMapRootNode>::operator=<map::RootNode>(const std::shared_ptr<map::RootNode> & _Right) Line 1143 C++
     DarkRadiantCore.dll!map::MapResource::load() Line 128 C++
> DarkRadiant.exe!ui::PrefabSelector::handleSelectionChange() Line 503 C++
     DarkRadiant.exe!ui::PrefabSelector::onSelectionChanged(wxDataViewEvent & ev) Line 528 C++
     wxbase313ud_vc14x_x64.dll!wxAppConsoleBase::HandleEvent(wxEvtHandler * handler, void(wxEvtHandler::*)(wxEvent &) func, wxEvent & event) Line 658 C++
     wxbase313ud_vc14x_x64.dll!wxAppConsoleBase::CallEventHandler(wxEvtHandler * handler, wxEventFunctor & functor, wxEvent & event) Line 670 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEventIfMatchesId(const wxEventTableEntryBase & entry, wxEvtHandler * handler, wxEvent & event) Line 1417 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::SearchDynamicEventTable(wxEvent & event) Line 1887 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::TryHereOnly(wxEvent & event) Line 1608 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::TryBeforeAndHere(wxEvent & event) Line 3912 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEventLocally(wxEvent & event) Line 1545 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEvent(wxEvent & event) Line 1518 C++
     wxmsw313ud_core_vc14x_x64.dll!wxScrollHelperEvtHandler::ProcessEvent(wxEvent & event) Line 200 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindowBase::ProcessWindowEvent(wxEvent & event) Line 863 C++
     DarkRadiant.exe!wxutil::TreeView::JumpToSearchMatch(const wxDataViewItem & item) Line 595 C++
     DarkRadiant.exe!wxutil::TreeView::Search::HighlightMatch(const wxDataViewItem & item) Line 449 C++
     DarkRadiant.exe!wxutil::TreeView::Search::HandleKeyEvent(wxKeyEvent & ev) Line 473 C++
     DarkRadiant.exe!wxutil::TreeView::_onChar(wxKeyEvent & ev) Line 560 C++
     wxbase313ud_vc14x_x64.dll!wxAppConsoleBase::HandleEvent(wxEvtHandler * handler, void(wxEvtHandler::*)(wxEvent &) func, wxEvent & event) Line 658 C++
     wxbase313ud_vc14x_x64.dll!wxAppConsoleBase::CallEventHandler(wxEvtHandler * handler, wxEventFunctor & functor, wxEvent & event) Line 670 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEventIfMatchesId(const wxEventTableEntryBase & entry, wxEvtHandler * handler, wxEvent & event) Line 1417 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::SearchDynamicEventTable(wxEvent & event) Line 1887 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::TryHereOnly(wxEvent & event) Line 1608 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::TryBeforeAndHere(wxEvent & event) Line 3912 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEventLocally(wxEvent & event) Line 1545 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEvent(wxEvent & event) Line 1518 C++
     wxmsw313ud_core_vc14x_x64.dll!wxScrollHelperEvtHandler::ProcessEvent(wxEvent & event) Line 200 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindowBase::ProcessWindowEvent(wxEvent & event) Line 863 C++
     wxmsw313ud_core_vc14x_x64.dll!wxDataViewMainWindow::OnChar(wxKeyEvent & event) Line 4182 C++
     wxbase313ud_vc14x_x64.dll!wxAppConsoleBase::HandleEvent(wxEvtHandler * handler, void(wxEvtHandler::*)(wxEvent &) func, wxEvent & event) Line 658 C++
     wxbase313ud_vc14x_x64.dll!wxAppConsoleBase::CallEventHandler(wxEvtHandler * handler, wxEventFunctor & functor, wxEvent & event) Line 670 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEventIfMatchesId(const wxEventTableEntryBase & entry, wxEvtHandler * handler, wxEvent & event) Line 1417 C++
     wxbase313ud_vc14x_x64.dll!wxEventHashTable::HandleEvent(wxEvent & event, wxEvtHandler * self) Line 1023 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::TryHereOnly(wxEvent & event) Line 1612 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::TryBeforeAndHere(wxEvent & event) Line 3912 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEventLocally(wxEvent & event) Line 1545 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEvent(wxEvent & event) Line 1518 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::SafelyProcessEvent(wxEvent & event) Line 1636 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindowBase::HandleWindowEvent(wxEvent & event) Line 1556 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindow::HandleChar(unsigned __int64 wParam, __int64 lParam) Line 6319 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindow::MSWHandleMessage(__int64 * result, unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 3339 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindow::MSWWindowProc(unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 3873 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWndProc(HWND__ * hWnd, unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 2940 C++
     user32.dll!UserCallWinProcCheckWow() Unknown
     user32.dll!DispatchMessageWorker() Unknown
     user32.dll!IsDialogMessageW() Unknown
     wxmsw313ud_core_vc14x_x64.dll!wxWindow::MSWSafeIsDialogMessage(tagMSG * msg) Line 2805 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindow::MSWProcessMessage(tagMSG * pMsg) Line 2689 C++
     wxmsw313ud_core_vc14x_x64.dll!wxGUIEventLoop::PreProcessMessage(tagMSG * msg) Line 145 C++
     wxmsw313ud_core_vc14x_x64.dll!wxGUIEventLoop::ProcessMessage(tagMSG * msg) Line 163 C++
     wxmsw313ud_core_vc14x_x64.dll!wxGUIEventLoop::Dispatch() Line 229 C++
     wxbase313ud_vc14x_x64.dll!wxAppConsoleBase::Dispatch() Line 408 C++
     wxmsw313ud_core_vc14x_x64.dll!wxGUIEventLoop::DoYieldFor(long eventsToProcess) Line 395 C++
     wxbase313ud_vc14x_x64.dll!wxEventLoopBase::YieldFor(long eventsToProcess) Line 155 C++
     wxbase313ud_vc14x_x64.dll!wxEventLoopBase::Yield(bool onlyIfNeeded) Line 116 C++
     wxbase313ud_vc14x_x64.dll!wxAppConsoleBase::Yield(bool onlyIfNeeded) Line 415 C++
     DarkRadiant.exe!ui::MapFileProgressHandler::handleFileOperation(map::FileOperation & msg) Line 132 C++
     DarkRadiant.exe!sigc::bound_mem_functor1<void,ui::MapFileProgressHandler,map::FileOperation &>::operator()(map::FileOperation & _A_a1) Line 1851 C++
     DarkRadiant.exe!std::_Invoker_functor::_Call<sigc::bound_mem_functor1<void,ui::MapFileProgressHandler,map::FileOperation &> &,map::FileOperation &>(sigc::bound_mem_functor1<void,ui::MapFileProgressHandler,map::FileOperation &> & _Obj, map::FileOperation & <_Args_0>) Line 1579 C++
     DarkRadiant.exe!std::invoke<sigc::bound_mem_functor1<void,ui::MapFileProgressHandler,map::FileOperation &> &,map::FileOperation &>(sigc::bound_mem_functor1<void,ui::MapFileProgressHandler,map::FileOperation &> & _Obj, map::FileOperation & <_Args_0>) Line 1579 C++
     DarkRadiant.exe!std::_Invoker_ret<void,1>::_Call<sigc::bound_mem_functor1<void,ui::MapFileProgressHandler,map::FileOperation &> &,map::FileOperation &>(sigc::bound_mem_functor1<void,ui::MapFileProgressHandler,map::FileOperation &> & <_Vals_0>, map::FileOperation & <_Vals_1>) Line 1598 C++
     DarkRadiant.exe!std::_Func_impl_no_alloc<sigc::bound_mem_functor1<void,ui::MapFileProgressHandler,map::FileOperation &>,void,map::FileOperation &>::_Do_call(map::FileOperation & <_Args_0>) Line 927 C++
     DarkRadiant.exe!std::_Func_class<void,map::FileOperation &>::operator()(map::FileOperation & <_Args_0>) Line 970 C++
     DarkRadiant.exe!radiant::TypeListener<map::FileOperation>::operator()(radiant::IMessage & message) Line 116 C++
     DarkRadiant.exe!std::_Invoker_functor::_Call<radiant::TypeListener<map::FileOperation> &,radiant::IMessage &>(radiant::TypeListener<map::FileOperation> & _Obj, radiant::IMessage & <_Args_0>) Line 1579 C++
     DarkRadiant.exe!std::invoke<radiant::TypeListener<map::FileOperation> &,radiant::IMessage &>(radiant::TypeListener<map::FileOperation> & _Obj, radiant::IMessage & <_Args_0>) Line 1579 C++
     DarkRadiant.exe!std::_Invoker_ret<void,1>::_Call<radiant::TypeListener<map::FileOperation> &,radiant::IMessage &>(radiant::TypeListener<map::FileOperation> & <_Vals_0>, radiant::IMessage & <_Vals_1>) Line 1598 C++
     DarkRadiant.exe!std::_Func_impl_no_alloc<radiant::TypeListener<map::FileOperation>,void,radiant::IMessage &>::_Do_call(radiant::IMessage & <_Args_0>) Line 927 C++
     DarkRadiantCore.dll!std::_Func_class<void,radiant::IMessage &>::operator()(radiant::IMessage & <_Args_0>) Line 970 C++
     DarkRadiantCore.dll!radiant::MessageBus::sendMessage(radiant::IMessage & message) Line 66 C++
     DarkRadiantCore.dll!map::MapImporter::addEntity(const std::shared_ptr<scene::INode> & entityNode) Line 72 C++
     DarkRadiantCore.dll!map::Doom3MapReader::parseEntity(parser::DefTokeniser & tok) Line 257 C++
     DarkRadiantCore.dll!map::Doom3MapReader::readFromStream(std::basic_istream<char,std::char_traits<char>> & stream) Line 45 C++
     DarkRadiantCore.dll!map::MapResource::loadFile(std::basic_istream<char,std::char_traits<char>> & mapStream, const map::MapFormat & format, const std::shared_ptr<map::RootNode> & root, const std::string & filename) Line 340 C++
     DarkRadiantCore.dll!map::MapResource::loadMapNodeFromStream(std::basic_istream<char,std::char_traits<char>> & stream, const std::string & fullpath) Line 316 C++
     DarkRadiantCore.dll!map::MapResource::loadMapNode::__l2::<lambda>(std::basic_istream<char,std::char_traits<char>> & mapStream) Line 297 C++
     DarkRadiantCore.dll!std::_Invoker_functor::_Call<void <lambda>(std::basic_istream<char,std::char_traits<char>> &) &,std::basic_istream<char,std::char_traits<char>> &>(map::MapResource::loadMapNode::__l2::void <lambda>(std::basic_istream<char,std::char_traits<char>> &) & _Obj, std::basic_istream<char,std::char_traits<char>> & <_Args_0>) Line 1579 C++
     DarkRadiantCore.dll!std::invoke<void <lambda>(std::basic_istream<char,std::char_traits<char>> &) &,std::basic_istream<char,std::char_traits<char>> &>(map::MapResource::loadMapNode::__l2::void <lambda>(std::basic_istream<char,std::char_traits<char>> &) & _Obj, std::basic_istream<char,std::char_traits<char>> & <_Args_0>) Line 1579 C++
     DarkRadiantCore.dll!std::_Invoker_ret<void,1>::_Call<void <lambda>(std::basic_istream<char,std::char_traits<char>> &) &,std::basic_istream<char,std::char_traits<char>> &>(map::MapResource::loadMapNode::__l2::void <lambda>(std::basic_istream<char,std::char_traits<char>> &) & <_Vals_0>, std::basic_istream<char,std::char_traits<char>> & <_Vals_1>) Line 1598 C++
     DarkRadiantCore.dll!std::_Func_impl_no_alloc<void <lambda>(std::basic_istream<char,std::char_traits<char>> &),void,std::basic_istream<char,std::char_traits<char>> &>::_Do_call(std::basic_istream<char,std::char_traits<char>> & <_Args_0>) Line 927 C++
     DarkRadiantCore.dll!std::_Func_class<void,std::basic_istream<char,std::char_traits<char>> &>::operator()(std::basic_istream<char,std::char_traits<char>> & <_Args_0>) Line 970 C++
     DarkRadiantCore.dll!map::MapResource::openFileStream(const std::string & path, const std::function<void __cdecl(std::basic_istream<char,std::char_traits<char>> &)> & streamProcessor) Line 456 C++
     DarkRadiantCore.dll!map::MapResource::loadMapNode() Line 295 C++
     DarkRadiantCore.dll!map::MapResource::load() Line 120 C++
     DarkRadiant.exe!ui::PrefabSelector::handleSelectionChange() Line 503 C++
     DarkRadiant.exe!ui::PrefabSelector::onSelectionChanged(wxDataViewEvent & ev) Line 528 C++
     wxbase313ud_vc14x_x64.dll!wxAppConsoleBase::HandleEvent(wxEvtHandler * handler, void(wxEvtHandler::*)(wxEvent &) func, wxEvent & event) Line 658 C++
     wxbase313ud_vc14x_x64.dll!wxAppConsoleBase::CallEventHandler(wxEvtHandler * handler, wxEventFunctor & functor, wxEvent & event) Line 670 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEventIfMatchesId(const wxEventTableEntryBase & entry, wxEvtHandler * handler, wxEvent & event) Line 1417 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::SearchDynamicEventTable(wxEvent & event) Line 1887 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::TryHereOnly(wxEvent & event) Line 1608 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::TryBeforeAndHere(wxEvent & event) Line 3912 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEventLocally(wxEvent & event) Line 1545 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEvent(wxEvent & event) Line 1518 C++
     wxmsw313ud_core_vc14x_x64.dll!wxScrollHelperEvtHandler::ProcessEvent(wxEvent & event) Line 200 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindowBase::ProcessWindowEvent(wxEvent & event) Line 863 C++
     wxmsw313ud_core_vc14x_x64.dll!wxDataViewMainWindow::SendSelectionChangedEvent(const wxDataViewItem & item) Line 3328 C++
     wxmsw313ud_core_vc14x_x64.dll!wxDataViewMainWindow::OnMouse(wxMouseEvent & event) Line 4877 C++
     wxbase313ud_vc14x_x64.dll!wxAppConsoleBase::HandleEvent(wxEvtHandler * handler, void(wxEvtHandler::*)(wxEvent &) func, wxEvent & event) Line 658 C++
     wxbase313ud_vc14x_x64.dll!wxAppConsoleBase::CallEventHandler(wxEvtHandler * handler, wxEventFunctor & functor, wxEvent & event) Line 670 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEventIfMatchesId(const wxEventTableEntryBase & entry, wxEvtHandler * handler, wxEvent & event) Line 1417 C++
     wxbase313ud_vc14x_x64.dll!wxEventHashTable::HandleEvent(wxEvent & event, wxEvtHandler * self) Line 1023 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::TryHereOnly(wxEvent & event) Line 1612 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::TryBeforeAndHere(wxEvent & event) Line 3912 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEventLocally(wxEvent & event) Line 1545 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEvent(wxEvent & event) Line 1518 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::SafelyProcessEvent(wxEvent & event) Line 1636 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindowBase::HandleWindowEvent(wxEvent & event) Line 1556 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindow::HandleMouseEvent(unsigned int msg, int x, int y, unsigned int flags) Line 5871 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindow::MSWHandleMessage(__int64 * result, unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 3154 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindow::MSWWindowProc(unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 3873 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWndProc(HWND__ * hWnd, unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 2940 C++
     user32.dll!UserCallWinProcCheckWow() Unknown
     user32.dll!DispatchMessageWorker() Unknown
     user32.dll!IsDialogMessageW() Unknown
     wxmsw313ud_core_vc14x_x64.dll!wxWindow::MSWSafeIsDialogMessage(tagMSG * msg) Line 2805 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindow::MSWProcessMessage(tagMSG * pMsg) Line 2689 C++
     wxmsw313ud_core_vc14x_x64.dll!wxGUIEventLoop::PreProcessMessage(tagMSG * msg) Line 145 C++
     wxmsw313ud_core_vc14x_x64.dll!wxGUIEventLoop::ProcessMessage(tagMSG * msg) Line 163 C++
     wxmsw313ud_core_vc14x_x64.dll!wxGUIEventLoop::Dispatch() Line 229 C++
     wxbase313ud_vc14x_x64.dll!wxEventLoopManual::ProcessEvents() Line 237 C++
     wxbase313ud_vc14x_x64.dll!wxEventLoopManual::DoRun() Line 283 C++
     wxbase313ud_vc14x_x64.dll!wxEventLoopBase::Run() Line 90 C++
     wxmsw313ud_core_vc14x_x64.dll!wxDialogModalData::RunLoop() Line 63 C++
     wxmsw313ud_core_vc14x_x64.dll!wxDialog::ShowModal() Line 192 C++
     DarkRadiant.exe!ui::PrefabSelector::ShowModal() Line 255 C++
     DarkRadiant.exe!ui::PrefabSelector::ChoosePrefab(const std::string & curPrefab) Line 326 C++
     DarkRadiant.exe!ui::OrthoContextMenu::callbackAddPrefab() Line 333 C++
     DarkRadiant.exe!std::_Invoker_pmf_pointer::_Call<void (__cdecl ui::OrthoContextMenu::*)(void),ui::OrthoContextMenu * &>(void(ui::OrthoContextMenu::*)() _Pmf, ui::OrthoContextMenu * & _Arg1) Line 1579 C++
     DarkRadiant.exe!std::invoke<void (__cdecl ui::OrthoContextMenu::*&)(void),ui::OrthoContextMenu * &>(void(ui::OrthoContextMenu::*)() & _Obj, ui::OrthoContextMenu * & <_Args_0>) Line 1579 C++
     DarkRadiant.exe!std::_Invoker_ret<std::_Unforced,0>::_Call<void (__cdecl ui::OrthoContextMenu::*&)(void),ui::OrthoContextMenu * &>(void(ui::OrthoContextMenu::*)() & <_Vals_0>, ui::OrthoContextMenu * & <_Vals_1>) Line 1615 C++
     DarkRadiant.exe!std::_Call_binder<std::_Unforced,0,void (__cdecl ui::OrthoContextMenu::*)(void),std::tuple<ui::OrthoContextMenu *>,std::tuple<>>(std::_Invoker_ret<std::_Unforced,0> __formal, std::integer_sequence<unsigned __int64,0> __formal, void(ui::OrthoContextMenu::*)() & _Obj, std::tuple<ui::OrthoContextMenu *> & _Tpl, std::tuple<> && _Ut) Line 1402 C++
     DarkRadiant.exe!std::_Binder<std::_Unforced,void (__cdecl ui::OrthoContextMenu::*)(void),ui::OrthoContextMenu *>::operator()<>() Line 1442 C++
     DarkRadiant.exe!std::_Invoker_functor::_Call<std::_Binder<std::_Unforced,void (__cdecl ui::OrthoContextMenu::*)(void),ui::OrthoContextMenu *> &>(std::_Binder<std::_Unforced,void (__cdecl ui::OrthoContextMenu::*)(void),ui::OrthoContextMenu *> & _Obj) Line 1579 C++
     DarkRadiant.exe!std::invoke<std::_Binder<std::_Unforced,void (__cdecl ui::OrthoContextMenu::*)(void),ui::OrthoContextMenu *> &>(std::_Binder<std::_Unforced,void (__cdecl ui::OrthoContextMenu::*)(void),ui::OrthoContextMenu *> & _Obj) Line 1579 C++
     DarkRadiant.exe!std::_Invoker_ret<void,1>::_Call<std::_Binder<std::_Unforced,void (__cdecl ui::OrthoContextMenu::*)(void),ui::OrthoContextMenu *> &>(std::_Binder<std::_Unforced,void (__cdecl ui::OrthoContextMenu::*)(void),ui::OrthoContextMenu *> & <_Vals_0>) Line 1598 C++
     DarkRadiant.exe!std::_Func_impl_no_alloc<std::_Binder<std::_Unforced,void (__cdecl ui::OrthoContextMenu::*)(void),ui::OrthoContextMenu *>,void>::_Do_call() Line 927 C++
     DarkRadiant.exe!std::_Func_class<void>::operator()() Line 970 C++
     DarkRadiant.exe!wxutil::MenuItem::execute() Line 39 C++
     DarkRadiant.exe!ui::OrthoContextMenu::onItemClick(wxCommandEvent & ev) Line 581 C++
     wxbase313ud_vc14x_x64.dll!wxAppConsoleBase::HandleEvent(wxEvtHandler * handler, void(wxEvtHandler::*)(wxEvent &) func, wxEvent & event) Line 658 C++
     wxbase313ud_vc14x_x64.dll!wxAppConsoleBase::CallEventHandler(wxEvtHandler * handler, wxEventFunctor & functor, wxEvent & event) Line 670 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEventIfMatchesId(const wxEventTableEntryBase & entry, wxEvtHandler * handler, wxEvent & event) Line 1417 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::SearchDynamicEventTable(wxEvent & event) Line 1887 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::TryHereOnly(wxEvent & event) Line 1608 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::TryBeforeAndHere(wxEvent & event) Line 3912 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEventLocally(wxEvent & event) Line 1545 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEvent(wxEvent & event) Line 1518 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::SafelyProcessEvent(wxEvent & event) Line 1636 C++
     wxmsw313ud_core_vc14x_x64.dll!wxMenuBase::DoProcessEvent(wxMenuBase * menu, wxEvent & event, wxWindow * win) Line 667 C++
     wxmsw313ud_core_vc14x_x64.dll!wxMenuBase::SendEvent(int itemid, int checked) Line 643 C++
     wxmsw313ud_core_vc14x_x64.dll!wxMenu::MSWCommand(unsigned int __formal, unsigned short id_) Line 799 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindow::HandleCommand(unsigned short id_, unsigned short cmd, HWND__ * control) Line 5747 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindow::MSWHandleMessage(__int64 * result, unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 3179 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindow::MSWWindowProc(unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 3873 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWndProc(HWND__ * hWnd, unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 2940 C++
     user32.dll!UserCallWinProcCheckWow() Unknown
     user32.dll!CallWindowProcW() Unknown
     opengl32.dll!00007ff810283919() Unknown
     user32.dll!UserCallWinProcCheckWow() Unknown
     user32.dll!DispatchMessageWorker() Unknown
     wxmsw313ud_core_vc14x_x64.dll!wxYieldForCommandsOnly() Line 2369 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindow::DoPopupMenu(wxMenu * menu, int x, int y) Line 2400 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindowBase::PopupMenu(wxMenu * menu, int x, int y) Line 3022 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindowBase::PopupMenu(wxMenu * menu, const wxPoint & pos) Line 1276 C++
     DarkRadiant.exe!ui::OrthoContextMenu::Show(wxWindow * parent, const BasicVector3<double> & point) Line 127 C++
     DarkRadiant.exe!ui::XYWnd::onContextMenu() Line 447 C++
     DarkRadiant.exe!ui::XYWnd::onGLMouseButtonRelease(wxMouseEvent & ev) Line 1606 C++
     DarkRadiant.exe!std::_Invoker_pmf_pointer::_Call<void (__cdecl ui::XYWnd::*)(wxMouseEvent &),ui::XYWnd * &,wxMouseEvent &>(void(ui::XYWnd::*)(wxMouseEvent &) _Pmf, ui::XYWnd * & _Arg1, wxMouseEvent & <_Args2_0>) Line 1579 C++
     DarkRadiant.exe!std::invoke<void (__cdecl ui::XYWnd::*&)(wxMouseEvent &),ui::XYWnd * &,wxMouseEvent &>(void(ui::XYWnd::*)(wxMouseEvent &) & _Obj, ui::XYWnd * & <_Args_0>, wxMouseEvent & <_Args_1>) Line 1579 C++
     DarkRadiant.exe!std::_Invoker_ret<std::_Unforced,0>::_Call<void (__cdecl ui::XYWnd::*&)(wxMouseEvent &),ui::XYWnd * &,wxMouseEvent &>(void(ui::XYWnd::*)(wxMouseEvent &) & <_Vals_0>, ui::XYWnd * & <_Vals_1>, wxMouseEvent & <_Vals_2>) Line 1615 C++
     DarkRadiant.exe!std::_Call_binder<std::_Unforced,0,1,void (__cdecl ui::XYWnd::*)(wxMouseEvent &),std::tuple<ui::XYWnd *,std::_Ph<1>>,std::tuple<wxMouseEvent &>>(std::_Invoker_ret<std::_Unforced,0> __formal, std::integer_sequence<unsigned __int64,0,1> __formal, void(ui::XYWnd::*)(wxMouseEvent &) & _Obj, std::tuple<ui::XYWnd *,std::_Ph<1>> & _Tpl, std::tuple<wxMouseEvent &> && _Ut) Line 1402 C++
     DarkRadiant.exe!std::_Binder<std::_Unforced,void (__cdecl ui::XYWnd::*)(wxMouseEvent &),ui::XYWnd *,std::_Ph<1> const &>::operator()<wxMouseEvent &>(wxMouseEvent & <_Unbargs_0>) Line 1442 C++
     DarkRadiant.exe!std::_Invoker_functor::_Call<std::_Binder<std::_Unforced,void (__cdecl ui::XYWnd::*)(wxMouseEvent &),ui::XYWnd *,std::_Ph<1> const &> &,wxMouseEvent &>(std::_Binder<std::_Unforced,void (__cdecl ui::XYWnd::*)(wxMouseEvent &),ui::XYWnd *,std::_Ph<1> const &> & _Obj, wxMouseEvent & <_Args_0>) Line 1579 C++
     DarkRadiant.exe!std::invoke<std::_Binder<std::_Unforced,void (__cdecl ui::XYWnd::*)(wxMouseEvent &),ui::XYWnd *,std::_Ph<1> const &> &,wxMouseEvent &>(std::_Binder<std::_Unforced,void (__cdecl ui::XYWnd::*)(wxMouseEvent &),ui::XYWnd *,std::_Ph<1> const &> & _Obj, wxMouseEvent & <_Args_0>) Line 1579 C++
     DarkRadiant.exe!std::_Invoker_ret<void,1>::_Call<std::_Binder<std::_Unforced,void (__cdecl ui::XYWnd::*)(wxMouseEvent &),ui::XYWnd *,std::_Ph<1> const &> &,wxMouseEvent &>(std::_Binder<std::_Unforced,void (__cdecl ui::XYWnd::*)(wxMouseEvent &),ui::XYWnd *,std::_Ph<1> const &> & <_Vals_0>, wxMouseEvent & <_Vals_1>) Line 1598 C++
     DarkRadiant.exe!std::_Func_impl_no_alloc<std::_Binder<std::_Unforced,void (__cdecl ui::XYWnd::*)(wxMouseEvent &),ui::XYWnd *,std::_Ph<1> const &>,void,wxMouseEvent &>::_Do_call(wxMouseEvent & <_Args_0>) Line 927 C++
     DarkRadiant.exe!std::_Func_class<void,wxMouseEvent &>::operator()(wxMouseEvent & <_Args_0>) Line 970 C++
     DarkRadiant.exe!wxutil::FreezePointer::onMouseUp(wxMouseEvent & ev) Line 186 C++
     wxbase313ud_vc14x_x64.dll!wxAppConsoleBase::HandleEvent(wxEvtHandler * handler, void(wxEvtHandler::*)(wxEvent &) func, wxEvent & event) Line 658 C++
     wxbase313ud_vc14x_x64.dll!wxAppConsoleBase::CallEventHandler(wxEvtHandler * handler, wxEventFunctor & functor, wxEvent & event) Line 670 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEventIfMatchesId(const wxEventTableEntryBase & entry, wxEvtHandler * handler, wxEvent & event) Line 1417 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::SearchDynamicEventTable(wxEvent & event) Line 1887 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::TryHereOnly(wxEvent & event) Line 1608 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::TryBeforeAndHere(wxEvent & event) Line 3912 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEventLocally(wxEvent & event) Line 1545 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::ProcessEvent(wxEvent & event) Line 1518 C++
     wxbase313ud_vc14x_x64.dll!wxEvtHandler::SafelyProcessEvent(wxEvent & event) Line 1636 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindowBase::HandleWindowEvent(wxEvent & event) Line 1556 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindow::HandleMouseEvent(unsigned int msg, int x, int y, unsigned int flags) Line 5871 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindow::MSWHandleMessage(__int64 * result, unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 3154 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWindow::MSWWindowProc(unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 3873 C++
     wxmsw313ud_core_vc14x_x64.dll!wxTopLevelWindowMSW::MSWWindowProc(unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 346 C++
     wxmsw313ud_core_vc14x_x64.dll!wxFrame::MSWWindowProc(unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 912 C++
     wxmsw313ud_core_vc14x_x64.dll!wxWndProc(HWND__ * hWnd, unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 2940 C++
     user32.dll!UserCallWinProcCheckWow() Unknown
     user32.dll!DispatchMessageWorker() Unknown
     wxmsw313ud_core_vc14x_x64.dll!wxGUIEventLoop::ProcessMessage(tagMSG * msg) Line 169 C++
     wxmsw313ud_core_vc14x_x64.dll!wxGUIEventLoop::Dispatch() Line 229 C++
     wxbase313ud_vc14x_x64.dll!wxEventLoopManual::ProcessEvents() Line 237 C++
     wxbase313ud_vc14x_x64.dll!wxEventLoopManual::DoRun() Line 283 C++
     wxbase313ud_vc14x_x64.dll!wxEventLoopBase::Run() Line 90 C++
     wxbase313ud_vc14x_x64.dll!wxAppConsoleBase::MainLoop() Line 380 C++
     wxbase313ud_vc14x_x64.dll!wxAppConsoleBase::OnRun() Line 302 C++
     wxmsw313ud_core_vc14x_x64.dll!wxAppBase::OnRun() Line 336 C++
     wxbase313ud_vc14x_x64.dll!wxEntryReal(int & argc, wchar_t * * argv) Line 507 C++
     wxbase313ud_vc14x_x64.dll!wxEntry(int & argc, wchar_t * * argv) Line 184 C++
     wxmsw313ud_core_vc14x_x64.dll!wxEntry(HINSTANCE__ * hInstance, HINSTANCE__ * __formal, char * __formal, int nCmdShow) Line 306 C++
     DarkRadiant.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, char * __formal, int nCmdShow) Line 7 C++
     DarkRadiant.exe!invoke_main() Line 107 C++
     DarkRadiant.exe!__scrt_common_main_seh() Line 288 C++
     DarkRadiant.exe!__scrt_common_main() Line 331 C++
     DarkRadiant.exe!WinMainCRTStartup() Line 17 C++
     kernel32.dll!00007ff83a707bd4() Unknown
     ntdll.dll!00007ff83b86ce51() Unknown
TagsNo tags attached.

Activities

There are no notes attached to this issue.

Related Changesets

DarkRadiant: master 661ad356

2020-09-20 03:44:52

greebo

Details Diff
0005337: Move DispatchEvent definition to .cpp file Affected Issues
0005337
mod - radiant/Makefile.am Diff File
add - radiant/ui/DispatchEvent.cpp Diff File
mod - radiant/ui/DispatchEvent.h Diff File
mod - tools/msvc/DarkRadiant.vcxproj Diff File
mod - tools/msvc/DarkRadiant.vcxproj.filters Diff File

DarkRadiant: master 8a444bdc

2020-09-20 04:51:28

greebo

Details Diff
0005337: Add loopback guard to PrefabSelector::handleSelectionChange. It doesn't occur anymore after the changes to MapFileProgressHandler, but it still provides additional protection. Affected Issues
0005337
mod - radiant/ui/MapFileProgressHandler.cpp Diff File
mod - radiant/ui/mainframe/ScreenUpdateBlocker.cpp Diff File
mod - radiant/ui/prefabselector/PrefabSelector.cpp Diff File
mod - radiant/ui/prefabselector/PrefabSelector.h Diff File

Issue History

Date Modified Username Field Change
20.09.2020 03:44 greebo New Issue
20.09.2020 03:44 greebo File Added: grafik.png
20.09.2020 03:44 greebo File Deleted: grafik.png
20.09.2020 04:51 greebo Assigned To => greebo
20.09.2020 04:51 greebo Status new => assigned
20.09.2020 04:51 greebo Changeset attached => DarkRadiant master 661ad356
20.09.2020 04:51 greebo Changeset attached => DarkRadiant master 8a444bdc
20.09.2020 04:52 greebo Status assigned => resolved
20.09.2020 04:52 greebo Resolution open => fixed
20.09.2020 04:52 greebo Fixed in Version => 2.8.1