assert "Assert failure" failed in Yield() #425

issue sgornick opened this issue on July 23, 2011
  1. sgornick commented at 3:31 AM on July 23, 2011: none

    ./src/common/evtloopcmn.cpp(75): assert "Assert failure" failed in Yield(): wxYield called recursively

    In the Bitcoin client version 0.3.24 when clicking between the All Transactions tab and the Sent/Received tab, if I don't give it enough time and I then toggle back to the previous one, I get the Assertion error above. If I wait a second or more between clicks, it works fine, but if I toggle too quickly between the two, then I can replicate this consistently.

    This is using the Linux 64 binaries of v0.3.24.

  2. dooglus commented at 6:01 PM on September 4, 2011: contributor

    I just had the same running the release candidate built from git tag 'v0.4.00rc1'. The top transaction was in black, too dark to read, as new transactions always are. I've found that switching tabs (from 'all' to 'sent' and back) fixes it, so that's what I was doing when I saw this assert failure. The touchpad button is bad, so I may have double-clicked one of the tabs.

    ASSERT INFO: ../src/common/evtloopcmn.cpp(75): assert "Assert failure" failed in Yield(): wxYield called recursively

    BACKTRACE: [1] wxOnAssert(char const_, int, char const_, char const_, wchar_t const_) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/appbase.cpp:1141 [2] wxEventLoopBase::Yield(bool) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/evtloopcmn.cpp:78 [3] wxAppConsoleBase::Yield(bool) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/appbase.cpp:349 [4] wxYield() /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/utilscmn.cpp:1661 [5] CMainFrame::OnIdle(wxIdleEvent&) /home/chris/chris/bitcoin/src/ui.cpp:902 [6] wxAppConsoleBase::HandleEvent(wxEvtHandler_, void (wxEvtHandler::)(wxEvent&), wxEvent&) cons) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/appbase.cpp:592 [7] wxAppConsoleBase::CallEventHandler(wxEvtHandler, wxEventFunctor&, wxEvent&) cons) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/appbase.cpp:603 [8] wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler_, wxEvent&) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/event.cpp:1296 [9] wxEvtHandler::SearchDynamicEventTable(wxEvent&) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/event.cpp:1637 [10] wxEvtHandler::TryHereOnly(wxEvent&) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/event.cpp:1482 [11] wxEvtHandler::TryBeforeAndHere(wxEvent&) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../include/wx/event.h:3293 [12] wxEvtHandler::ProcessEventLocally(wxEvent&) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/event.cpp:1419 [13] wxEvtHandler::ProcessEvent(wxEvent&) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/event.cpp:1392 [14] wxEvtHandler::SafelyProcessEvent(wxEvent&) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/event.cpp:1499 [15] wxWindowBase::HandleWindowEvent(wxEvent&) cons) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/wincmn.cpp:1457 [16] wxWindowBase::SendIdleEvents(wxIdleEvent&) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/wincmn.cpp:2638 [17] wxFrame::SendIdleEvents(wxIdleEvent&) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/gtk/frame.cpp:240 [18] wxAppBase::ProcessIdle() /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/appcmn.cpp:352 [19] wxEventLoopBase::ProcessIdle() /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/evtloopcmn.cpp:66 [20] wxGUIEventLoop::YieldFor(long) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/gtk/evtloop.cpp:354 [21] wxEventLoopBase::Yield(bool) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/evtloopcmn.cpp:82 [22] wxAppConsoleBase::Yield(bool) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/appbase.cpp:349 [23] wxYield() /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/utilscmn.cpp:1661 [24] CMainFrame::OnIdle(wxIdleEvent&) /home/chris/chris/bitcoin/src/ui.cpp:902 [25] wxAppConsoleBase::HandleEvent(wxEvtHandler_, void (wxEvtHandler::)(wxEvent&), wxEvent&) cons) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/appbase.cpp:592 [26] wxAppConsoleBase::CallEventHandler(wxEvtHandler, wxEventFunctor&, wxEvent&) cons) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/appbase.cpp:603 [27] wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler_, wxEvent&) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/event.cpp:1296 [28] wxEvtHandler::SearchDynamicEventTable(wxEvent&) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/event.cpp:1637 [29] wxEvtHandler::TryHereOnly(wxEvent&) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/event.cpp:1482 [30] wxEvtHandler::TryBeforeAndHere(wxEvent&) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../include/wx/event.h:3293 [31] wxEvtHandler::ProcessEventLocally(wxEvent&) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/event.cpp:1419 [32] wxEvtHandler::ProcessEvent(wxEvent&) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/event.cpp:1392 [33] wxEvtHandler::SafelyProcessEvent(wxEvent&) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/event.cpp:1499 [34] wxWindowBase::HandleWindowEvent(wxEvent&) cons) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/wincmn.cpp:1457 [35] wxWindowBase::SendIdleEvents(wxIdleEvent&) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/wincmn.cpp:2638 [36] wxFrame::SendIdleEvents(wxIdleEvent&) /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/gtk/frame.cpp:240 [37] wxAppBase::ProcessIdle() /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/appcmn.cpp:352 [38] wxApp::DoIdle() /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/gtk/app.cpp:139 [39] wxapp_idle_callback() /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/gtk/app.cpp:108 [40] g_main_context_dispatch() [41] g_main_loop_run() [42] gtk_main() [43] wxGUIEventLoop::Run() /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/gtk/evtloop.cpp:62 [44] wxAppConsoleBase::MainLoop() /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/appbase.cpp:314 [45] wxAppConsoleBase::OnRun() /home/chris/chris/wxWidgets-2.9.2/buildgtk/../src/common/appbase.cpp:256

  3. dooglus commented at 6:04 PM on September 4, 2011: contributor

    It turns out that I can reproduce this by clicking any of the 4 tabs that aren't currently selected, then clicking another one very quickly. If I'm on "all transactions" and click 'sent' and 'received' in quick succession, I'll see this assert failure.

  4. laanwj commented at 9:06 AM on December 4, 2011: member

    This deals with the old wx gui, please re-open the issue if this still reproducable with QtUI.

  5. laanwj closed this on Dec 4, 2011

  6. dooglus commented at 9:08 AM on December 4, 2011: contributor

    Isn't the old client still being supported? It seems silly to close all the bugs which are still an issue for it.

  7. laanwj commented at 9:54 AM on December 4, 2011: member

    The Wx UI is no longer being supported.

    The 0.4.x daemon is still supported. @luke-jr provides backports of bug fixes.

    Apart from that, I think it IS necessary to close issues that are no longer relevant with the current version. After all, they have been fixed in -master. Most open source projects work this way. We can't keep them in the list until 2020.

  8. sipa referenced this in commit 7b49f22bdb on Dec 12, 2016
  9. MarcoFalke referenced this in commit 64dfdde0aa on Dec 13, 2016
  10. deadalnix referenced this in commit 80773a6b74 on Jan 19, 2017
  11. ptschip referenced this in commit a086fd19b2 on Apr 24, 2017
  12. lateminer referenced this in commit 211a1113a6 on Oct 16, 2019
  13. rajarshimaitra referenced this in commit 3957b8d03f on Aug 5, 2021
  14. MarcoFalke locked this on Sep 8, 2021
Labels

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-29 03:16 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me