mariuz / flamerobin

FlameRobin is a database administration tool for Firebird RDBMS. Our goal is to build a tool that is: lightweight (small footprint, fast execution) cross-platform (Linux, Windows, Mac OS X, FreeBSD) dependent only on other Open Source software
http://flamerobin.org
MIT License
214 stars 66 forks source link

Assertion failed #250

Closed pwypustek closed 1 year ago

pwypustek commented 2 years ago

Hi /usr/include/wx-3.0/wx/strvararg.h(456): assert "(argtype & (wxFormatStringSpecifier::value)) == argtype" failed in wxArgNormalizer(): format specifier doesn't match argument type

The message appears at different times, e.g. when I open a list Ubuntu 0.9.3 (git hash c75f8618) Unicode

mariuz commented 1 year ago

@pwypustek could you try a new snapshot ?

pwypustek commented 1 year ago

unfortunately the error still appears

ASSERT INFO: /usr/include/wx-3.0/wx/strvararg.h(456): assert "(argtype & (wxFormatStringSpecifier::value)) == argtype" failed in wxArgNormalizer(): format specifier doesn't match argument type

BACKTRACE: [1] wxArgNormalizer::wxArgNormalizer(unsigned long, wxFormatString const, unsigned int) [2] wxArgNormalizerWchar::wxArgNormalizerWchar(unsigned long, wxFormatString const, unsigned int) [3] wxString wxString::Format(wxFormatString const&, unsigned long) [4] DBHTreeItemVisitor::visitTable(Table&) [5] Table::acceptVisitor(MetadataItemVisitor) [6] DBHTreeItemData::update() [7] Observer::doUpdate() [8] Subject::notifyObservers() [9] Subject::unlockSubject() [10] MetadataItem::unlockSubject() [11] MetadataCollection

::unlockChildren() [12] MetadataItem::unlockSubject() [13] Database::unlockChildren() [14] MetadataItem::unlockSubject() [15] SubjectLocker::setSubject(Subject) [16] SubjectLocker::~SubjectLocker() [17] Relation::loadChildren() [18] Table::loadChildren() [19] MetadataItem::ensureChildrenLoaded() [20] MetadataTemplateCmdHandler::handleTemplateCmd(TemplateProcessor, wxString const&, TemplateCmdParams const&, ProcessableObject, wxString&) [21] TemplateCmdHandlerRepository::handleTemplateCmd(TemplateProcessor, wxString const&, TemplateCmdParams const&, ProcessableObject, wxString&) [22] TemplateProcessor::processCommand(wxString const&, TemplateCmdParams const&, ProcessableObject, wxString&) [23] CodeTemplateProcessor::processCommand(wxString const&, TemplateCmdParams const&, ProcessableObject, wxString&) [24] TemplateProcessor::internalProcessTemplateText(wxString&, wxString const&, ProcessableObject) [25] TemplateProcessor::processCommand(wxString const&, TemplateCmdParams const&, ProcessableObject, wxString&) [26] CodeTemplateProcessor::processCommand(wxString const&, TemplateCmdParams const&, ProcessableObject, wxString&) [27] TemplateProcessor::internalProcessTemplateText(wxString&, wxString const&, ProcessableObject) [28] TemplateProcessor::processTemplateFile(wxString&, wxFileName const&, ProcessableObject, ProgressIndicator) [29] MainFrame::executeSysTemplate(wxString const&, MetadataItem, wxWindow) [30] MainFrame::OnMenuBrowseData(wxCommandEvent&) [31] Application::HandleEvent(wxEvtHandler, void (wxEvtHandler::)(wxEvent&), wxEvent&) const [32] wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler, wxEvent&) [33] wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler) [34] wxEvtHandler::TryHereOnly(wxEvent&) [35] wxEvtHandler::ProcessEventLocally(wxEvent&) [36] wxEvtHandler::ProcessEvent(wxEvent&) [37] wxWindowBase::TryAfter(wxEvent&) [38] wxWindowBase::TryAfter(wxEvent&) [39] wxScrollHelperEvtHandler::ProcessEvent(wxEvent&) [40] wxEvtHandler::SafelyProcessEvent(wxEvent&) [41] wxMenuBase::SendEvent(int, int) [42] g_closure_invoke [43] g_signal_emit_valist [44] g_signal_emit [45] gtk_widget_activate [46] gtk_menu_shell_activate_item [47] g_closure_invoke [48] g_signal_emitv [49] gtk_bindings_activate_event [50] g_signal_emit_valist [51] g_signal_emit [52] gtk_main_do_event [53] g_main_context_dispatch [54] g_main_context_iteration [55] gtk_main_iteration [56] wxWindow::DoPopupMenu(wxMenu, int, int) [57] wxWindowBase::PopupMenu(wxMenu, int, int) [58] wxWindowBase::PopupMenu(wxMenu, wxPoint const&) [59] DBHTreeControl::OnContextMenu(wxContextMenuEvent&) [60] Application::HandleEvent(wxEvtHandler, void (wxEvtHandler::)(wxEvent&), wxEvent&) const [61] wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler, wxEvent&) [62] wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) [63] wxEvtHandler::TryHereOnly(wxEvent&) [64] wxEvtHandler::ProcessEventLocally(wxEvent&) [65] wxEvtHandler::ProcessEvent(wxEvent&) [66] wxScrollHelperEvtHandler::ProcessEvent(wxEvent&) [67] wxEvtHandler::SafelyProcessEvent(wxEvent&) [68] g_closure_invoke [69] g_signal_emitv [70] gtk_bindings_activate_event [71] g_closure_invoke [72] g_signal_emit_valist [73] g_signal_emit [74] gtk_window_propagate_key_event [75] g_closure_invoke [76] g_signal_emit_valist [77] g_signal_emit [78] gtk_main_do_event [79] g_main_context_dispatch [80] g_main_loop_run [81] gtk_main [82] wxGUIEventLoop::DoRun() [83] wxEventLoopBase::Run() [84] wxAppConsoleBase::MainLoop() [85] wxEntry(int&, wchar_t**) [86] main [87] __libc_start_main [88] _start

Jdochoa commented 1 year ago

Hi @pwypustek Can you provide more information to reproduce the bug?

./jo

pwypustek commented 1 year ago

Ubuntu 20.04.5 LTS flamerobin-0.9.4 Error shows every time I click "Browse data" or double click table Console: sProcessedSQL: select a.rdb$index_name from rdb$indices a left join rdb$relation_constraints b on b.rdb$index_name = a.rdb$index_name where (rdb$system_flag = 0 or rdb$system_flag is null) and b.rdb$index_name is not null order by 1 sProcessedSQL: select a.rdb$index_name from rdb$indices a left join rdb$relation_constraints b on b.rdb$index_name = a.rdb$index_name where (rdb$system_flag = 0 or rdb$system_flag is null) and a.rdb$index_inactive = 1 and b.rdb$index_name is not null order by 1 sProcessedSQL: select a.rdb$index_name from rdb$indices a left join rdb$relation_constraints b on b.rdb$index_name = a.rdb$index_name where (rdb$system_flag = 0 or rdb$system_flag is null) and b.rdb$index_name is null order by 1 sProcessedSQL: select a.rdb$index_name from rdb$indices a left join rdb$relation_constraints b on b.rdb$index_name = a.rdb$index_name where (rdb$system_flag = 0 or rdb$system_flag is null) and a.rdb$index_inactive = 1 and b.rdb$index_name is null order by 1 05:41:39: Debug: Trying to load image file "/media/user/k/temp/Pobrane/flamerobin/flamerobin-0.9.4/build/images/databaseconnected_32x32.png" 05:41:39: Debug: Trying to load image file "/media/user/k/temp/Pobrane/flamerobin/flamerobin-0.9.4/build/images/databaseconnected_32x32.xpm" 05:41:39: Debug: Trying to load image file "/media/user/k/temp/Pobrane/flamerobin/flamerobin-0.9.4/build/images/databaseconnected_32x32.bmp" sProcessedSQL: select r.rdb$field_name, r.rdb$null_flag, r.rdb$field_source, l.rdb$collation_name, f.rdb$computed_source, r.rdb$default_source, r.rdb$description , null, null, null, null from rdb$fields f join rdb$relation_fields r on f.rdb$field_name=r.rdb$field_source left outer join rdb$collations l on l.rdb$collation_id = r.rdb$collation_id and l.rdb$character_set_id = f.rdb$character_set_id where r.rdb$relation_name = ? order by r.rdb$field_position /usr/include/wx-3.0/wx/strvararg.h(456): assert "(argtype & (wxFormatStringSpecifier::value)) == argtype" failed in wxArgNormalizer(): format specifier doesn't match argument type

(flamerobin:14981): Gtk-WARNING **: 05:41:39.935: gtk_window_set_titlebar() called on a realized window

Jdochoa commented 1 year ago

@pwypustek can you tested with the last commit in my repository? https://github.com/Jdochoa/flamerobin.git

./jo

JQ-pawelwypustek commented 1 year ago

a got make error: [ 15%] Building CXX object CMakeFiles/flamerobin.dir/src/gui/AdvancedSearchFrame.cpp.o /media/user/k/flamerobin/flamerobin-0.9.5/src/gui/AdvancedSearchFrame.cpp: In member function ‘void AdvancedSearchFrame::OnListCtrlResultsItemSelected(wxListEvent&)’: /media/user/k/flamerobin/flamerobin-0.9.5/src/gui/AdvancedSearchFrame.cpp:459:40: error: no matching function for call to ‘wxStyledTextCtrl::StartStyling(int&)’ 459 | stc_ddl->StartStyling(p); | ^ In file included from /media/user/k/flamerobin/flamerobin-0.9.5/src/gui/AdvancedSearchFrame.cpp:30: /usr/include/wx-3.0/wx/stc/stc.h:2640:10: note: candidate: ‘void wxStyledTextCtrl::StartStyling(int, int)’ 2640 | void StartStyling(int pos, int mask); | ^~~~ /usr/include/wx-3.0/wx/stc/stc.h:2640:10: note: candidate expects 2 arguments, 1 provided make[2]: [CMakeFiles/flamerobin.dir/build.make:349: CMakeFiles/flamerobin.dir/src/gui/AdvancedSearchFrame.cpp.o] Błąd 1 make[1]: [CMakeFiles/Makefile2:78: CMakeFiles/flamerobin.dir/all] Błąd 2 make: *** [Makefile:130: all] Błąd 2 user@pc:/media/user/k/flamerobin/flamerobin-0.9.5/build$

Jdochoa commented 1 year ago

What is your environment?

mariuz commented 1 year ago

@JQ-pawelwypustek also please try to install wxWidgets 3.2 headers https://docs.codelite.org/wxWidgets/repo320/

JQ-pawelwypustek commented 5 months ago

Sorry for the delay, I've compiled it and it works flawlessly! Big thanks, guys! tested: 0.9.10 Snapshot