Up until recently, a code I have been working on and running in both Windows (8) and Linux (XUbuntu 14.04) environments started to give segmentation faults upon creating a wx ProgressDialog, but only on the latter platform. This minimal code sample illustrates the problem:
#!/usr/bin/python
import wx
import time
class MyFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, wx.ID_ANY, 'test ',
pos=(200, 100), size=(120, 160))
self.Show(True)
but = wx.Button(self, -1,label="Click me!", pos=(10,10), size=(100,100))
but.Bind(wx.EVT_BUTTON, self.click)
def click(self,evt):
progress_dlg = wx.ProgressDialog('Progress', 'Testing...', -1,
style=wx.PD_ELAPSED_TIME)
for i in range(10):
time.sleep(0.5)
progress_dlg.Pulse()
progress_dlg.Destroy()
if __name__ == "__main__":
application = wx.App(False)
window = MyFrame()
application.MainLoop()
This code works fine on my Windows machine, but not on our Linux server. Presumably the sudden change is related to some recent library update. The exact error message is:
Segmentation fault (core dumped)
and the same happens when running the code with pdb.
I am unsure how to proceed to identify and fix the problem and would welcome any suggestions. Thanks in advance.