Re: pgadmin crash on refresh
От | Dave Page |
---|---|
Тема | Re: pgadmin crash on refresh |
Дата | |
Msg-id | AANLkTi=YBEjQwz2HCppj_Kv8TvHdC0e4JFvxjOTL_e6d@mail.gmail.com обсуждение исходный текст |
Ответ на | pgadmin crash on refresh (Magnus Hagander <magnus@hagander.net>) |
Ответы |
Re: pgadmin crash on refresh
(Magnus Hagander <magnus@hagander.net>)
|
Список | pgadmin-hackers |
On Wed, Jan 19, 2011 at 12:18 PM, Magnus Hagander <magnus@hagander.net> wrote: > Opened database->catalogs->pg_catalogs->tables. Right click + refresh = crash. > > Don't have time to dig in right now myself, but here's a backtrace if > somebody wants to get started, or perhaps has a clue what it could > be... > > this is with current git master tip, debugging enabled. Hmm, can't reproduce it on Windows. It does look an awful lot like this though: http://git.postgresql.org/gitweb?p=pgadmin3.git;a=commit;h=9ec6b29fe3fbd9cc196d5e91b55f3697f02bcad8 That backtrace looks kinda funky too - I think the EndMsg() call must be triggering a redraw of everything. The workaround will probably have to be done in frmMain::Refresh. > ASSERT INFO: > ../src/generic/treectlg.cpp(201): assert "m_heightText != -1" failed > in GetTextHeight(): must call CalculateSize() first > > BACKTRACE: > [1] wxGenericTreeCtrl::PaintLevel(wxGenericTreeItem*, wxDC&, int, int&) > [2] wxGenericTreeCtrl::PaintLevel(wxGenericTreeItem*, wxDC&, int, int&) > [3] wxGenericTreeCtrl::PaintLevel(wxGenericTreeItem*, wxDC&, int, int&) > [4] wxGenericTreeCtrl::PaintLevel(wxGenericTreeItem*, wxDC&, int, int&) > [5] wxGenericTreeCtrl::PaintLevel(wxGenericTreeItem*, wxDC&, int, int&) > [6] wxGenericTreeCtrl::PaintLevel(wxGenericTreeItem*, wxDC&, int, int&) > [7] wxGenericTreeCtrl::PaintLevel(wxGenericTreeItem*, wxDC&, int, int&) > [8] wxGenericTreeCtrl::PaintLevel(wxGenericTreeItem*, wxDC&, int, int&) > [9] wxGenericTreeCtrl::PaintLevel(wxGenericTreeItem*, wxDC&, int, int&) > [10] wxGenericTreeCtrl::OnPaint(wxPaintEvent&) > [11] wxAppConsole::HandleEvent(wxEvtHandler*, void > (wxEvtHandler::*)(wxEvent&), wxEvent&) cons) > [12] wxEvtHandler::ProcessEventIfMatches(wxEventTableEntryBase const&, > wxEvtHandler*, wxEvent&) > [13] wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) > [14] wxEvtHandler::ProcessEvent(wxEvent&) > [15] wxEvtHandler::ProcessEvent(wxEvent&) > [16] wxScrollHelperEvtHandler::ProcessEvent(wxEvent&) > [17] wxWindow::GtkSendPaintEvents() > [18] g_closure_invoke() > [19] g_signal_emit_valist() > [20] g_signal_emit() > [21] gtk_main_do_event() > [22] gdk_window_process_updates() > [23] wxWindow::GtkUpdate() > [24] wxWindow::Update() > [25] wxStatusBar::SetStatusText(wxString const&, int) > [26] frmMain::EndMsg(bool) > /opt/pgsql/pgadmin/pgadmin3/pgadmin/./frm/frmMain.cpp:1246 > [27] frmMain::Refresh(pgObject*) > /opt/pgsql/pgadmin/pgadmin3/pgadmin/./frm/frmMain.cpp:565 > [28] refreshFactory::StartDialog(frmMain*, pgObject*) > /opt/pgsql/pgadmin/pgadmin3/pgadmin/./dlg/dlgProperty.cpp:2199 > [29] frmMain::OnAction(wxCommandEvent&) > /opt/pgsql/pgadmin/pgadmin3/pgadmin/./frm/events.cpp:191 > [30] wxAppConsole::HandleEvent(wxEvtHandler*, void > (wxEvtHandler::*)(wxEvent&), wxEvent&) cons) > [31] wxEvtHandler::ProcessEventIfMatches(wxEventTableEntryBase const&, > wxEvtHandler*, wxEvent&) > [32] wxEvtHandler::SearchDynamicEventTable(wxEvent&) > [33] wxEvtHandler::ProcessEvent(wxEvent&) > [34] wxEvtHandler::ProcessEvent(wxEvent&) > [35] wxWindowBase::TryParent(wxEvent&) > [36] wxEvtHandler::ProcessEvent(wxEvent&) > [37] wxEvtHandler::ProcessEvent(wxEvent&) > [38] wxScrollHelperEvtHandler::ProcessEvent(wxEvent&) > [39] wxMenuBase::SendEvent(int, int) > [40] g_cclosure_marshal_VOID__VOID() > [41] g_closure_invoke() > [42] g_signal_emit_valist() > [43] g_signal_emit() > [44] gtk_widget_activate() > [45] gtk_menu_shell_activate_item() > [46] g_closure_invoke() > [47] g_signal_emit_valist() > [48] g_signal_emit() > > > > > -- > Magnus Hagander > Me: http://www.hagander.net/ > Work: http://www.redpill-linpro.com/ > > -- > Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org) > To make changes to your subscription: > http://www.postgresql.org/mailpref/pgadmin-hackers > -- Dave Page Blog: http://pgsnake.blogspot.com Twitter: @pgsnake EnterpriseDB UK: http://www.enterprisedb.com The Enterprise PostgreSQL Company
В списке pgadmin-hackers по дате отправления: