Skip to content

Eeschema segfault when Update Symbols from Library

Description

Current Behavior: seg fault

Expected Behavior: open dialog for choosing symbols to update from library

Steps to reproduce

  1. Open a design in Eeschema
  2. Click "Tools" > "Update Symbols from Schematic"

backtrace

Thread 1 "kicad" received signal SIGSEGV, Segmentation fault.
0x00007ffff60523c2 in __memmove_sse2_unaligned_erms () from /usr/lib/libc.so.6
(gdb) bt
#0  0x00007ffff60523c2 in __memmove_sse2_unaligned_erms () at /usr/lib/libc.so.6
#1  0x00007fffc4ed0ef8 in wmemcpy (__n=2, __s2=0x5 <error: Cannot access memory at address 0x5>, __s1=<optimized out>) at /usr/include/bits/wchar2.h:52
#2  std::char_traits<wchar_t>::copy(wchar_t*, wchar_t const*, unsigned long) (__n=2, __s2=0x5 <error: Cannot access memory at address 0x5>, __s1=<optimized out>)
    at /usr/include/c++/10.2.0/bits/char_traits.h:519
#3  std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_S_copy(wchar_t*, wchar_t const*, unsigned long)
    (__n=2, __s=0x5 <error: Cannot access memory at address 0x5>, __d=<optimized out>) at /usr/include/c++/10.2.0/bits/basic_string.h:351
#4  std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_S_copy_chars(wchar_t*, wchar_t*, wchar_t*)
    (__k2=<optimized out>, __k1=0x5 <error: Cannot access memory at address 0x5>, __p=<optimized out>) at /usr/include/c++/10.2.0/bits/basic_string.h:393
#5  std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_M_construct<wchar_t*>(wchar_t*, wchar_t*, std::forward_iterator_tag)
    (this=this@entry=0x55555b67ed00, __beg=0x5 <error: Cannot access memory at address 0x5>, __end=<optimized out>) at /usr/include/c++/10.2.0/bits/basic_string.tcc:225
#6  0x00007fffc4ed1fa1 in std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_M_construct_aux<wchar_t*>(wchar_t*, wchar_t*, std::__false_type)
    (__end=<optimized out>, __beg=<optimized out>, this=0x55555b67ed00) at /usr/include/c++/10.2.0/bits/basic_string.h:247
#7  std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_M_construct<wchar_t*>(wchar_t*, wchar_t*)
    (__end=<optimized out>, __beg=<optimized out>, this=0x55555b67ed00) at /usr/include/c++/10.2.0/bits/basic_string.h:266
#8  std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::basic_string(std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&) (__str=<optimized out>, this=0x55555b67ed00) at /usr/include/c++/10.2.0/bits/basic_string.h:451
#9  wxString::wxString(wxString const&) (stringSrc=<optimized out>, this=0x55555b67ed00) at /usr/include/wx-3.0/wx/string.h:1220
#10 LIB_FIELD::GetName(bool) const (this=<optimized out>, aUseDefaultName=aUseDefaultName@entry=true) at /usr/src/debug/kicad-git/eeschema/lib_field.cpp:370
#11 0x00007fffc4cf159a in DIALOG_CHANGE_SYMBOLS::updateFieldsList() (this=0x55555b67f1b0) at /usr/include/c++/10.2.0/bits/stl_vector.h:1043
#12 0x00007fffc4cf2880 in DIALOG_CHANGE_SYMBOLS::DIALOG_CHANGE_SYMBOLS(SCH_EDIT_FRAME*, SCH_COMPONENT*, DIALOG_CHANGE_SYMBOLS::MODE) (this=0x55555b67f1b0, aParent=<optimized out>, aSymbol=
    0x0, aMode=DIALOG_CHANGE_SYMBOLS::MODE::UPDATE) at /usr/src/debug/kicad-git/eeschema/dialogs/dialog_change_symbols.cpp:118
#13 0x00007fffc506d7b9 in SCH_EDIT_TOOL::ChangeSymbols(TOOL_EVENT const&) (this=0x555555f8c860, aEvent=...) at /usr/src/debug/kicad-git/eeschema/tools/sch_edit_tool.cpp:1241
#14 0x00007fffc52b5a30 in std::function<int (TOOL_EVENT const&)>::operator()(TOOL_EVENT const&) const (__args#0=<optimized out>, this=0x55555618e090)
    at /usr/include/c++/10.2.0/bits/std_function.h:622
#15 COROUTINE<int, TOOL_EVENT const&>::callerStub(long) (aData=<optimized out>) at /usr/src/debug/kicad-git/include/tool/coroutine.h:356
#16 0x0000555555842241 in make_fcontext ()
#17 0x0000000000000000 in  ()

KiCad Version

Application: Eeschema

Version: (5.99.0-7619-gacfbcb4beb), debug build

Libraries:
	wxWidgets 3.0.5
	libcurl/7.73.0 OpenSSL/1.1.1h zlib/1.2.11 zstd/1.4.5 libidn2/2.3.0 libpsl/0.21.1 (+libidn2/2.3.0) libssh2/1.9.0 nghttp2/1.41.0

Platform: Linux 5.9.10-arch1-1 x86_64, 64 bit, Little endian, wxGTK, KDE, x11

Build Info:
	Date: Dec 16 2020 16:06:23
	wxWidgets: 3.0.5 (wchar_t,wx containers,compatible with 2.8) GTK+ 3.24
	Boost: 1.72.0
	OCE: 6.9.1
	Curl: 7.73.0
	ngspice: 33
	Compiler: GCC 10.2.0 with C++ ABI 1014

Build settings:
	KICAD_SCRIPTING=ON
	KICAD_SCRIPTING_MODULES=ON
	KICAD_SCRIPTING_PYTHON3=OFF
	KICAD_SCRIPTING_WXPYTHON=OFF
	KICAD_SCRIPTING_WXPYTHON_PHOENIX=OFF
	KICAD_SCRIPTING_ACTION_MENU=ON
	KICAD_USE_OCE=ON
	KICAD_SPICE=ON
	KICAD_STDLIB_DEBUG=OFF
	KICAD_STDLIB_LIGHT_DEBUG=OFF
	KICAD_SANITIZE=OFF