klayout
klayout copied to clipboard
[macOS] User Properties Dialog Crashes
1. The Latest Version (0.29.1)
The User Properties
dialog crashes when I click the [User Properties]
button.
This problem reproduces with the latest four binaries listed below.
02901-crash-logs.zip
I used this feature before. I recently started using it again after a long hiatus and noticed this problem.
This problem is macOS-specific.
This feature works as expected in the Linux and Windows environments, as shown in the images below.
To be continued...
Cont.
2. Previous Versions (< 0.29.1)
I tested previous versions with HW*.dmg going back in history.
Then, I found versions up to 0.28.8
are problematic.
<0.29.1> --> 0.28.17 --> 0.28.15 --> 0.28.14 --> 0.28.13 --> 0.28.12 --> 0.28.11 --> 0.28.10 --> 0.28.9 --> 0.28.8
To be continued...
Cont.
3. Further Previous Versions (< 0.28.8)
I tested with 0.28.7
, 0.27.13
, and 0.26.12
and found they are OK, as shown in the sample images below.
OK-samples.zip
I suspect some problem may have intruded between 0.28.7
and 0.28.8
.
Best regards, Kazzz-S
Thanks for the analysis. I will look into that.
Matthias
Cont.
4. With Qt6
- It works with Qt6!
- These two DMGs have not been officially published.
on M1 lastest master: homebrew qt 5.15.13 coredump homebrew qt 6.7 works
Dear @Kazzz-S and @stefanottili
Thanks for the many datapoints and your experiments!
Maybe I found the root cause: on some platforms / compilers, a default-initialized iterator appears no to have the same value. I think it is more related to the compiler, although I have not seen the issue myself on neither gcc nor clang on Linux and Windows. Searching does not reveal a consistent picture: some say, a default-initialized constructor is a "singular" value, others say it is uninitialized. So it is better to give it a proper value.
My patch is here: https://github.com/KLayout/klayout/pull/1708
Maybe you can try whether this fixes the problem.
Thanks and best regards,
Matthias
P.S: I hope you did not spend too much effort in your research. Basically all I needed was the hint about 0.28.7 vs. 0.28.8 :(
git checkout origin/bugfix/issue-1706 fixes the coredump on M1 Sonoma.
The fact that it went unreported for so many versions just might indicate that nobody is using this feature ...
Hello @klayoutmatthias,
Thank you for trying to fix this problem. Using the patch #1708, I rebuilt:
- Four binaries with Qt5.x mentioned in this table.
- Two binaries with Qt6.x mentioned in this comment.
- One binary with Qt5.12.8 on Linux Mint 20.3.
I confirmed that all 7 test cases are OK.
Thank you again, and best regards, Kazzz-S
Hello @stefanottili,
Thank you for testing on M1 Sonoma. I use this feature mainly in Linux environments, so I overlooked this problem till recently.
Best regards, Kazzz-S