It affects only linux builds. Pressing "reset layout" cause segmentation fault. GDB trace:
(gdb) run
Starting program: /media/src/src/audio/BespokeSynth/Builds/LinuxMakefile/build/BespokeSynth
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
JUCE v5.4.7
[Detaching after fork from child process 23923]
[Detaching after fork from child process 23924]
[New Thread 0x7ffff64ee700 (LWP 23927)]
0.001: pixel ratio: 1 screen width: 2560 screen height: 1080
[New Thread 0x7ffff578c700 (LWP 23928)]
[Thread 0x7ffff578c700 (LWP 23928) exited]
[New Thread 0x7ffff578c700 (LWP 23929)]
[New Thread 0x7ffff4f8b700 (LWP 23930)]
[New Thread 0x7fffc38d3700 (LWP 23952)]
0.001: output: Gina3G, Gina3G; Front output / input input: Gina3G, Gina3G; Front output / input
[Thread 0x7ffff64ee700 (LWP 23927) exited]
0.547667: Loading layout: /home/kv/.config/BespokeSynth/data/layouts/blank.json
3.64367: Loading layout: /home/kv/.config/BespokeSynth/data/layouts/blank.json
Thread 1 "BespokeSynth" received signal SIGSEGV, Segmentation fault.
IDrawableModule::OnClicked (this=0x1585170, x=159, y=26, right=<optimized out>) at /usr/include/c++/10/bits/stl_vector.h:1043
1043 operator[](size_type __n) _GLIBCXX_NOEXCEPT
Missing separate debuginfos, use: zypper install krb5-debuginfo-1.18.2-3.2.x86_64 libX11-6-debuginfo-1.6.12-1.1.x86_64 libX11-xcb1-debuginfo-1.6.12-1.1.x86_64 libXau6-debuginfo-1.0.9-1.7.x86_64 libXcursor1-debuginfo-1.2.0-1.5.x86_64 libXext6-debuginfo-1.3.4-1.7.x86_64 libXfixes3-debuginfo-5.0.3-1.11.x86_64 libXinerama1-debuginfo-1.1.4-1.8.x86_64 libXrandr-devel-debuginfo-1.5.2-1.7.x86_64 libXrender1-debuginfo-0.9.10-1.12.x86_64 libXss1-debuginfo-1.2.3-1.9.x86_64 libbrotlicommon1-debuginfo-1.0.9-1.1.x86_64 libbrotlidec1-debuginfo-1.0.9-1.1.x86_64 libbz2-1-debuginfo-1.0.8-2.20.x86_64 libcom_err2-debuginfo-1.45.6-1.19.x86_64 libcrypt1-debuginfo-4.4.17-1.1.x86_64 libcurl4-debuginfo-7.72.0-1.2.x86_64 libdrm2-debuginfo-2.4.102-2.1.x86_64 libfreetype6-debuginfo-2.10.2-1.3.x86_64 libgcc_s1-debuginfo-10.2.1+git583-1.2.x86_64 libglvnd-debuginfo-1.3.2-2.1.x86_64 libidn2-0-debuginfo-2.3.0-3.2.x86_64 libkeyutils1-debuginfo-1.6-1.19.x86_64 libldap-2_4-2-debuginfo-2.4.53-57.2.x86_64 libnghttp2-14-debuginfo-1.41.0-1.3.x86_64 libopenssl1_1-debuginfo-1.1.1g-2.13.x86_64 libpcre1-debuginfo-8.44-1.19.x86_64 libpng16-16-debuginfo-1.6.37-1.7.x86_64 libpython3_8-1_0-debuginfo-3.8.5-2.1.x86_64 libsasl2-3-debuginfo-2.1.27-3.5.x86_64 libselinux1-debuginfo-3.0-2.3.x86_64 libssh4-debuginfo-0.9.5-1.1.x86_64 libstdc++6-debuginfo-10.2.1+git583-1.2.x86_64 libunistring2-debuginfo-0.9.10-2.8.x86_64 libxcb-dri3-0-debuginfo-1.14-1.3.x86_64 libxcb-glx0-debuginfo-1.14-1.3.x86_64 libxcb-present0-debuginfo-1.14-1.3.x86_64 libxcb-sync1-debuginfo-1.14-1.3.x86_64 libxcb1-debuginfo-1.14-1.3.x86_64 libz1-debuginfo-1.2.11-16.1.x86_64
(gdb) bt
#0 IDrawableModule::OnClicked (this=0x1585170, x=159, y=26, right=<optimized out>) at /usr/include/c++/10/bits/stl_vector.h:1043
#1 0x0000000000883c33 in IClickable::TestClick (testOnly=false, right=false, y=26, x=159, this=0x1585170) at ../../Source/IClickable.cpp:50
#2 IClickable::TestClick (this=0x1585170, x=159, y=26, right=<optimized out>, testOnly=<optimized out>) at ../../Source/IClickable.cpp:34
#3 0x000000000089f522 in ModularSynth::CheckClick (this=0x14505e8, clickedModule=0x1585170, x=159, y=26, rightButton=<optimized out>) at ../../Source/ModularSynth.cpp:1031
#4 0x0000000000c20d7e in juce::Component::internalMouseDown (this=<optimized out>, source=..., relativePos=..., time=..., pressure=<optimized out>, orientation=<optimized out>, rotation=<optimized out>, tiltX=<optimized out>, tiltY=<optimized out>)
at /usr/share/juce/modules/juce_gui_basics/components/juce_Component.cpp:2407
#5 0x0000000000caf9cb in juce::MouseInputSourceInternal::sendMouseDown (time=..., screenPos=..., comp=..., this=0x143b270) at /usr/share/juce/modules/juce_gui_basics/mouse/juce_MouseInputSource.cpp:584
#6 juce::MouseInputSourceInternal::setButtons (this=this@entry=0x143b270, screenPos=..., screenPos@entry=..., time=time@entry=..., newButtonState=..., newButtonState@entry=...) at /usr/share/juce/modules/juce_gui_basics/mouse/juce_MouseInputSource.cpp:216
#7 0x0000000000c340f1 in juce::MouseInputSourceInternal::handleEvent (pen=..., newOrientation=<optimized out>, newPressure=<optimized out>, newMods=..., time=..., positionWithinPeer=..., newPeer=..., this=<optimized out>)
at /usr/share/juce/modules/juce_gui_basics/mouse/juce_MouseInputSource.cpp:334
#8 juce::MouseInputSource::handleEvent (this=this@entry=0x7fffffffd750, peer=..., pos=..., pos@entry=..., time=time@entry=1601348466602, mods=..., mods@entry=..., pressure=<optimized out>, orientation=<optimized out>, penDetails=...)
at /usr/share/juce/modules/juce_gui_basics/mouse/juce_MouseInputSource.cpp:634
#9 0x0000000000c342d2 in juce::ComponentPeer::handleMouseEvent (this=0x144a220, type=juce::MouseInputSource::mouse, pos=..., newMods=..., newPressure=<optimized out>, newOrientation=<optimized out>, time=1601348466602, pen=..., touchIndex=0)
at /usr/include/c++/10/bits/atomic_base.h:325
#10 0x0000000000cb083d in juce::LinuxComponentPeer::handleButtonPressEvent (buttonPressEvent=..., this=0x144a220) at /usr/share/juce/modules/juce_gui_basics/native/juce_linux_X11_Windowing.cpp:1877
#11 juce::LinuxComponentPeer::handleWindowMessage (this=0x144a220, event=...) at /usr/share/juce/modules/juce_gui_basics/native/juce_linux_X11_Windowing.cpp:1635
#12 0x0000000000b7d48a in operator() (__closure=<optimized out>) at /usr/share/juce/modules/juce_gui_basics/native/juce_linux_X11.cpp:217
#13 std::__invoke_impl<void, juce::XWindowSystem::initialiseXDisplay()::<lambda(int)>&, int> (__f=...) at /usr/include/c++/10/bits/invoke.h:60
#14 std::__invoke_r<void, juce::XWindowSystem::initialiseXDisplay()::<lambda(int)>&, int> (__fn=...) at /usr/include/c++/10/bits/invoke.h:153
#15 std::_Function_handler<void(int), juce::XWindowSystem::initialiseXDisplay()::<lambda(int)> >::_M_invoke(const std::_Any_data &, int &&) (__functor=..., __args#0=<optimized out>) at /usr/include/c++/10/bits/std_function.h:291
#16 0x0000000000ab6c3a in std::function<void (int)>::operator()(int) const (__args#0=<optimized out>, this=0x143acb0) at /usr/include/c++/10/bits/std_function.h:617
#17 juce::InternalRunLoop::dispatchPendingEvents (this=0x143ac20) at /usr/share/juce/modules/juce_events/native/juce_linux_Messaging.cpp:169
#18 juce::MessageManager::dispatchNextMessageOnSystemQueue (returnIfNoPendingMessages=<optimized out>) at /usr/share/juce/modules/juce_events/native/juce_linux_Messaging.cpp:260
#19 0x0000000000ab6de7 in juce::MessageManager::runDispatchLoop (this=0x143abb0) at /usr/share/juce/modules/juce_events/messages/juce_MessageManager.cpp:128
#20 0x00000000004f2092 in juce::JUCEApplicationBase::main () at /usr/share/juce/modules/juce_events/messages/juce_ApplicationBase.cpp:262
#21 0x00007ffff728acca in __libc_start_main (main=0x4da4c0 <main(int, char**)>, argc=1, argv=0x7fffffffdb58, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffdb48) at ../csu/libc-start.c:308
#22 0x00000000004f4a8a in _start () at ../sysdeps/x86_64/start.S:120