wx.menu.Insert leads to StackHash error when the program closes

ABC <[email protected]> Mon, 16 Jul 2018 19:20:20 -0700 (PDT)
Newsgroups gmane.comp.python.wxpython.devel
Message-ID <[email protected]>
I ported my code from Python 2.7/wxPython 3.0.2   to   Python 3.7/wxPython 
4.0.3, on Windows 7 32-bit.
I use PopupMenu() with a menu that has a sub-menu.
That sub-menu is added to the menu with *Insert()*.
Now, everytime the program exits, I get a StachHash_0a9e fault from Windows.
If I use *Prepend()* instead, all is good.

The code below demonstrates this issue.
I also see that in this code, defining self.menu ahead of self.submenu, 
will make the error go away.

import wx
class Main_Frame(wx.Frame):
    def __init__(self):
        wx.Frame.__init__(self, parent = None, id = -1, title = 'Test menu 
insert', style = wx.DEFAULT_FRAME_STYLE)

        self.submenu = wx.Menu()
        self.submenu.Append(-1, 'Sub-menu')

        self.menu = wx.Menu()

        # ---- Insert vs. Prepend ----
        self.menu.Insert(0, -1, '...to sub-menu', self.submenu)
        #self.menu.Prepend(-1, '...to sub-menu', self.submenu)

class App(wx.App):
    def __init__(self, redirect_ = False, redirect_filename_ = None):
        wx.App.__init__(self, redirect = redirect_, filename = 
redirect_filename_)

    def OnInit(self):
        self.frame = Main_Frame()
        
        self.frame.Show()
        self.SetTopWindow(self.frame)

        self.frame.PopupMenu(self.frame.menu, (10,10))
        return True

def main():
    app = App()
    app.MainLoop()
    return False

if __name__ == '__main__':
    main()

-- 
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
For more options, visit https://groups.google.com/d/optout.