If the simulator window is open (Menu in Schematic editor: Inspect → Simulator), and you change language in the schematic editor (Menu: Preferences → Set language → [choose any language different from the one currently active]), then KiCad will krasch; the entire thing, simulator, schematic editor, pcb editor if open, and project manager.
I get this in fedora 36 and 37 with nightlies, latest (e335423) and a couple days old builds (b93a3a5).
Is someone else able to reproduce this behaviour?
I could of course write a simple report that this happens, but is there something more I can do as not being a professional programmer, to stimulate the solving of this problem?
Please try to reproduce on further systems, especially other OS:es than fedora and Linux Mint 20.3, and report in this thread, which I have linked in the bug report.
Or you can report straight into Gitlab if you have an account.
There is now a commit 40e41d01 from JP Charras that fixes this (and it seems a second one from Jonathan Haas, 49b35a2c…?).
In the meantime I also confirmed that the same crash happens in Windows 10 with todays nightly build.
I will test again when the next build for fedora becomes available; if you want you can do the same on your OS and report here to confirm it was successful.
In the meantime, thanks to all for the contributions so far!
Update: There is a fix for 6.0 too, 316087c4 by JP Charras.
According to comment on gitlab by Wayne Stambaugh, there might eventually be a 6.0.11 where this fix is included.
Update2: The latest nightly build f4a090 for f36 and f37, which includes the fix, does indeed fix the crash issue.
The change of language on the fly still doesn’t work in the simulator window though; it has to be closed and reopened for the new language to take effect. This has the issue #13357 and will likely not get fixed in 6.99 / 7.0 but in 7.99 once it is started, as it depends on a rewrite of the Simulator UI framework code.
Yes, I noticed that the strategy with the if-statement was the same in both, but one used m_toolManager and the other GetToolManager().
Just out of curiosity, as I don’t know the code well enough: How do these two relate to each other, and what is the significance of choosing one over the other?
I don’t think there is a significant difference, but using the method instead is a little bit cleaner as you can for example rename or move the field without affecting other code too much.