It seems that, wxWidget has added some checks in PopupMenu API. We can just directly call DoPopupMenu instead. Find attached patch. Seems harmless to directly call DoPopupMenu.
The patch seems to resolve the issue.
I've checked-in the patch with some changes (which involves minimal code change from current).
I was little hesitant to check-in. Because - I don't know - why did they put the assertion there?
There must be a reason for the same (which I don't know).
The following reference suggests that:
We should create a new menu with same ID in order to resolve the issue.
Sent: Saturday, February 28, 2015 at 8:20 AM From: "Richard PALO" <richard@netbsd.org> To: pgadmin-hackers@postgresql.org Subject: [pgadmin-hackers] assert "!IsAttached()" failed in SetInvokingWindow()
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
To continue the 1.20.0 discussion with wxWidgets 3.0, I can easily reproduce the following anytime (which I don't remember seeing with 2.8): > ASSERT INFO: > ./src/common/menucmn.cpp(715): assert "!IsAttached()" failed in SetInvokingWindow(): menus attached to menu bar can't have invoking window > > BACKTRACE: > [1] ctlMenuButton::DoProcessLeftClick(wxMouseEvent&) > [2] pluginButtonMenuFactory::StartDialog(frmMain*, pgObject*) > [3] frmMain::OnAction(wxCommandEvent&) > [4] main > [5] _start
This happens after opening a connection to a server then clicking on the puzzle pieces icon (execute last used plugin).
Not saying it"s not an older issue, though.
- -- Richard PALO
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1 Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/