#94 dispcalGUI crashes during start-up

None
closed
Florian Hoech
7
2014-08-18
2014-02-15
Anonymous
No

dispcalGUI crashes during start-up, here's the output

dispcalGUI 1.7.5.7 2014-02-09T23:38:14.426785Z
Linux #1 SMP PREEMPT Fri Jan 31 10:22:54 CET 2014 ( )
Python 2.7.6 (default, Feb 15 2014, 23:06:13)
[GCC 4.8.2 20140206 (prerelease)]
wxPython 3.0.0.0 gtk2 (classic)
Starte...
Anzeigegeräte- und Messgeräte-Erkennung...
/usr/bin
Argyll CMS 1.6.3
...ok.
Überprüfe Grafikkarten-Gammatabellen-Zugriff auf Anzeigegerät 1...
...ok.
Initialisiere GUI...

...ok.
Lade Kalibrierungskurven aus Datei...
/home/USER//.local/share/dispcalGUI/storage/Unknown 2012-08-05 2.2 HQ 3xCurve+MTX/Unknown 2012-08-05 2.2 HQ 3xCurve+MTX.icc
...ok.
Bereit.
Auf Programmaktualisierung überprüfen...
Fatal error: Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/dispcalGUI/main.py", line 232, in main
main()
File "/usr/lib/python2.7/site-packages/dispcalGUI/dispcalGUI.py", line 9868, in main
app = MainApp(redirect=False) # Don't redirect stdin/stdout
File "/usr/lib64/python2.7/site-packages/wx-3.0-gtk2/wx/core.py", line 8631, in init
self._BootstrapApp()
File "/usr/lib64/python2.7/site-packages/wx-3.0-gtk2/wx/_core.py", line 8196, in _BootstrapApp
return _core
.PyApp__BootstrapApp(args, kwargs)
File "/usr/lib/python2.7/site-packages/dispcalGUI/dispcalGUI.py", line 9452, in OnInit
self.frame.Show()
File "/usr/lib/python2.7/site-packages/dispcalGUI/dispcalGUI.py", line 9404, in Show
self.init_lut_viewer(show=True)
File "/usr/lib/python2.7/site-packages/dispcalGUI/dispcalGUI.py", line 6138, in init_lut_viewer
self.show_lut_handler(profile=profile, show=show)
File "/usr/lib/python2.7/site-packages/dispcalGUI/dispcalGUI.py", line 6165, in show_lut_handler
self.lut_viewer_load_lut(event, profile, force_draw=True)
File "/usr/lib/python2.7/site-packages/dispcalGUI/dispcalGUI.py", line 6149, in lut_viewer_load_lut
self.lut_viewer.load_lut(profile)
File "/usr/lib/python2.7/site-packages/dispcalGUI/wxLUTViewer.py", line 766, in load_lut
self.LoadProfile(profile)
File "/usr/lib/python2.7/site-packages/dispcalGUI/wxLUTViewer.py", line 1002, in LoadProfile
self.DrawLUT()
File "/usr/lib/python2.7/site-packages/dispcalGUI/wxLUTViewer.py", line 1221, in DrawLUT
self.Thaw()
File "/usr/lib64/python2.7/site-packages/wx-3.0-gtk2/wx/
core.py", line 10746, in Thaw
return _core
.Window_Thaw(*args, kwargs)
PyAssertionError: C++ assertion "m_window" failed at ./src/gtk/dcclient.cpp(2041) in DoGetSize(): GetSize() doesn't work without window
dispcalGUI ist auf dem neuesten Stand.
swig/python detected a memory leak of type 'wxPyXmlSubclassFactory ', no destructor found.

Discussion

1 2 > >> (Page 1 of 2)
  • Florian Hoech
    Florian Hoech
    2014-02-15

    I'm not able to reproduce this.

    What distribution is that please (the log just shows 'Linux #1')

    return _core.Window_Thaw(*args, kwargs)
    PyAssertionError: C++ assertion "m_window" failed at ./src/gtk/dcclient.cpp(2041) in DoGetSize(): GetSize() doesn't work without window

    This seems to be a bug in wxWidgets 3.0. Basically what is happening is, that during layout the window is 'frozen', when all layout has happened, the window is 'unfrozen' (using the 'Thaw()' method). This is pretty basic stuff and should not fail.

    It would be great if you could report the bug against your distribution or upstream.

    Use as summary _core.Window_Thaw() throws assertion error and description:

    {{{
    #!/usr/bin/env python2
    import wx
    app = wx.App(0)
    frame = wx.Frame(None)
    frame.Freeze()
    frame.Thaw()
    }}}
    
    _core.Window_Thaw(*args, kwargs)
    PyAssertionError: C++ assertion "m_window" failed at ./src/gtk/dcclient.cpp(2041) in DoGetSize(): GetSize() doesn't work without window
    

    Please include also a trace of the crash. To do so, save the above example code (everything between, but not including the curly braces) as 'thawassert.py', make it executable using chmod +x thawassert.py, and run it with gdb thawassert.py then press 'r', and enter 'bt' when the crash happens to get the trace. Attach it as file to the ticket on the distribution/upstream bugreport.

    Upstream bugreport link (I've filled most fields for you, you just have to register first and then follow the link and enter the description):

    http://trac.wxwidgets.org/newticket?summary=_core.Window_Thaw%28%29%20throws%20assertion%20error&version=3.0.0&component=wxPython&keywords=Thaw%20assertion%20wxPython%20wxGTK&cc=dispcalgui%40hoech.net&preview=Preview

     

  • Anonymous
    2014-02-21

    I'm not even able to produce the backtrace. Although wxgtk-3.0.0-2 is installed, I get "ImportError: No module named 'wx'" when trying to import wx. Did I miss something? My distribution is Arch Linux.

     
  • Florian Hoech
    Florian Hoech
    2014-02-21

    That is very strange. Are you certain you are using python2 (i.e. 2.5-2.7)?

     

  • Anonymous
    2014-02-22

    Somehow python3 was called. I open gdb now with "gdb -iex "set auto-load safe-path /usr:/bin:~/src/gdb" --args /usr/bin/python2 thawassert.py". However, I still can't produce a backtrace:

    (gdb) r
    Starting program: /usr/bin/python2 thawassert.py
    warning: Could not load shared library symbols for linux-vdso.so.1.
    Do you need "set solib-search-path" or "set sysroot"?
    [Thread debugging using libthread_db enabled]
    Using host libthread_db library "/usr/lib/libthread_db.so.1".
    [New Thread 0x7fffe6c99700 (LWP 27648)]
    [Thread 0x7fffe6c99700 (LWP 27648) exited]
    [Inferior 1 (process 27642) exited normally]
    (gdb) bt
    No stack.
    (gdb)

    Any ideas?

     
  • Florian Hoech
    Florian Hoech
    2014-03-01

    It seems the AssertionError was a red herring. What I found after a bit of experimentation is that the bug is in wx.lib.plot (only the Linux version is affected) -- which is unfortunate but atleast I can work around it. Can you try the latest development code from SVN?

     
  • Florian Hoech
    Florian Hoech
    2014-04-24

    The latest version 2.0 has had some changes for wxPython 3.0 under Linux, and should hopefully work-around the problem.

     
    Last edit: Florian Hoech 2014-04-24

  • Anonymous
    2014-04-28

    Yes, the problem is solved. Thanks a lot and sorry for the late response.

     
1 2 > >> (Page 1 of 2)


Anonymous


Cancel   Add attachments