eoyilmaz / displaycal-py3

DisplayCAL Modernization Project
https://eoyilmaz.github.io/displaycal-py3/
GNU General Public License v3.0
867 stars 60 forks source link

Crash when creating colorimeter correction #450

Open grishi opened 1 month ago

grishi commented 1 month ago

Describe the bug Consistent repeated crashes when creating colorimeter correction after profiling both instruments.

To Reproduce Steps to reproduce the behavior:

  1. Go to 'Tools/Correction/Colorimeter Correction'
  2. Profile both Spectro and Colorimeter
  3. Click on 'Create colorimeter correction...'
  4. Fill in information
  5. Click "OK"
  6. DisplayCal crashes completely.

displaycal-fault.log output

Fatal Python error: Segmentation fault

Thread 0x000070cdd92006c0 (most recent call first):
  File "/usr/lib/python3.12/socket.py", line 295 in accept
  File "/usr/lib/python3.12/site-packages/DisplayCAL/wxwindows.py", line 1024 in connection_handler
  File "/usr/lib/python3.12/threading.py", line 1012 in run
  File "/usr/lib/python3.12/threading.py", line 1075 in _bootstrap_inner
  File "/usr/lib/python3.12/threading.py", line 1032 in _bootstrap

Current thread 0x000070cdf7b0eb80 (most recent call first):
  File "/usr/lib/python3.12/site-packages/DisplayCAL/wxwindows.py", line 4047 in __init__
  File "/usr/lib/python3.12/site-packages/DisplayCAL/display_cal.py", line 13908 in create_colorimeter_correction_handler
  File "/usr/lib/python3.12/site-packages/wx/core.py", line 2262 in MainLoop
  File "/usr/lib/python3.12/site-packages/DisplayCAL/display_cal.py", line 20052 in main
  File "/usr/lib/python3.12/site-packages/DisplayCAL/main.py", line 537 in _main
  File "/usr/lib/python3.12/site-packages/DisplayCAL/main.py", line 550 in main
  File "/usr/bin/displaycal", line 6 in <module>

Extension modules: wx._core, wx._grid, wx._xml, wx._xrc, wx._adv, wx._dataview, gi._gi, cairo._cairo, gi._gi_cairo, DisplayCAL.lib64.python312.RealDisplaySizeMM, wx._html, numpy._core._multiarray_umath, numpy.linalg._umath_linalg (total: 13)

Versions (please complete the following information):

eoyilmaz commented 1 month ago

Can you try it with DisplayCAL 3.9.14 please. Also what version of wxPython are you using? Anything before wxPython 4.2.2 is not working properly with Python 3.12, fyi.

grishi commented 1 month ago

Thank you for your help. The wxPython version installed is 4.2.2 Installed DisplayCal3.9.14 through PyPI, it also crashes. Terminal and displaycal-fault.log output as shown:

Terminal:

Working directory: / tmp/ DisplayCAL-knnqw0ag/

Command line: /usr/bin/ccxxmake -E 'Xiaomi G Pro 27 (i1 Pro)' -I 'G Pro 27' -t 5 -f reference.ti3,colorimeter.ti3 correction.ccmx

Writing CCMX file 'correction.ccmx' succeeded ccxxmake exitcode: 0 DisplayCAL: Warning - could not find white - dE calculation will be inaccurate DisplayCAL: Warning - could not find white - dE calculation will be inaccurate DisplayCAL: Creating matrix using four-color method DisplayCAL: Correction matrix is: 1.038132 0.028869 -0.014472 0.024570 0.980859 -0.003164 0.002580 0.001227 0.967884 Segmentation fault (core dumped)

displaycal-fault.log

Fatal Python error: Segmentation fault

Thread 0x000074e2a1e006c0 (most recent call first): File "/usr/lib/python3.12/socket.py", line 295 in accept File "/home/grishi/venv-displaycal/lib/python3.12/site-packages/DisplayCAL/wxwindows.py", line 1027 in connection_handler File "/usr/lib/python3.12/threading.py", line 1012 in run File "/usr/lib/python3.12/threading.py", line 1075 in _bootstrap_inner File "/usr/lib/python3.12/threading.py", line 1032 in _bootstrap

Current thread 0x000074e31c4afb80 (most recent call first): File "/home/grishi/venv-displaycal/lib/python3.12/site-packages/DisplayCAL/wxwindows.py", line 4047 in init File "/home/grishi/venv-displaycal/lib/python3.12/site-packages/DisplayCAL/display_cal.py", line 13931 in create_colorimeter_correction_handler File "/home/grishi/venv-displaycal/lib/python3.12/site-packages/wx/core.py", line 3427 in File "/home/grishi/venv-displaycal/lib/python3.12/site-packages/wx/core.py", line 2262 in MainLoop File "/home/grishi/venv-displaycal/lib/python3.12/site-packages/DisplayCAL/display_cal.py", line 20101 in main File "/home/grishi/venv-displaycal/lib/python3.12/site-packages/DisplayCAL/main.py", line 537 in _main File "/home/grishi/venv-displaycal/lib/python3.12/site-packages/DisplayCAL/main.py", line 550 in main File "/home/grishi/venv-displaycal/bin/displaycal", line 6 in

Extension modules: wx._core, wx._grid, wx._xml, wx._xrc, wx._adv, wx._dataview, _dbus_bindings, _dbus_glib_bindings, DisplayCAL.lib64.python312.RealDisplaySizeMM, wx._html, zeroconf._utils.time, zeroconf._dns, zeroconf._protocol.outgoing, zeroconf._protocol.incoming, zeroconf._cache, zeroconf._record_update, zeroconf._history, zeroconf._updates, zeroconf._services, zeroconf._utils.ipaddress, zeroconf._services.info, zeroconf._services.registry, zeroconf._handlers.answers, zeroconf._handlers.multicast_outgoing_queue, zeroconf._handlers.query_handler, zeroconf._handlers.record_manager, zeroconf._listener, zeroconf._services.browser, charset_normalizer.md, requests.packages.charset_normalizer.md, requests.packages.chardet.md, google._upb._message, numpy._core._multiarray_umath, numpy.linalg._umath_linalg (total: 34)

greenpenguins commented 3 weeks ago

I got this same error as you a few days ago, also on Arch running the same versions of software. I run KDE and it only happens on wayland session. If I login using the KDE x11 session this error doesn't happen and calibration is able to fully complete.