View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0005337 | DarkRadiant | GUI | public | 20.09.2020 03:44 | 05.02.2021 11:29 |
Reporter | greebo | Assigned To | greebo | ||
Priority | normal | Severity | crash | Reproducibility | sometimes |
Status | closed | Resolution | fixed | ||
Product Version | 2.9.0 | ||||
Target Version | 2.9.0 | Fixed in Version | 2.9.0 | ||
Summary | 0005337: Crash in PrefabChooser dialog when using type-search while a prefab is loaded | ||||
Description | Due 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 Information | Stacktrace: 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 | ||||
Tags | No tags attached. | ||||
DarkRadiant: master 661ad356 20.09.2020 03:44 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 20.09.2020 04:51 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 |
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.9.0 |
05.02.2021 11:29 | greebo | Status | resolved => closed |