Segmentation fault in SIngle Editor Tab Mode
Issue #188
resolved
After commit 5acffcd and later (including 92b829e),
if it is in the “SIngle Editor Tab Mode“,
after switching between several photos from different folders,
Segmentation fault occurs.
Sometimes with a message:
===
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
Aborted
===
And in the current folder, a .apt file appears, but with the name " �O�."
Comments (2)
-
-
repo owner - changed status to resolved
- Log in to comment
Confirmed with Art 1.9.2 (RawTherapee 5.8.3005 doesn’t show this behavior).
Let’s hope Alberto can do something with this backtrace.
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
--Type <RET> for more, q to quit, c to continue without paging--
Thread 1 "ART" received signal SIGABRT, Aborted.
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
50 ../sysdeps/unix/sysv/linux/raise.c: Bestand of map bestaat niet.
(gdb) backtrace
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#10x00007ffff5653859 in __GI_abort () at abort.c:79#20x00007ffff5940911 in () at /lib/x86_64-linux-gnu/libstdc++.so.6#30x00007ffff594c38c in () at /lib/x86_64-linux-gnu/libstdc++.so.6#40x00007ffff594c3f7 in () at /lib/x86_64-linux-gnu/libstdc++.so.6#50x00007ffff594c6fd in __cxa_rethrow ()at /lib/x86_64-linux-gnu/libstdc++.so.6
#60x0000555555cccaba in std::__uninitialized_copy<false>::__uninit_copy<__gnu_cxx::__normal_iterator<rtengine::procparams::LocalContrastParams::Region const*, std::vector<rtengine::procparams::LocalContrastParams::Region, std::allocatorrtengine::procparams::LocalContrastParams::Region > >, rtengine::procparams::LocalContrastParams::Region*>(__gnu_cxx::__normal_iterator<rtengine::procparams::LocalContrastParams::Region const*, std::vector<rtengine::procparams::LocalContrastParams::Region, std::allocatorrtengine::procparams::LocalContrastParams::Region > >, __gnu_cxx::__normal_iterator<rtengine::procparams::LocalContrastParams::Region const*, std::vector<rtengine::procparams::LocalContrastParams::Region, std::allocatorrtengine::procparams::LocalContrastParams::Region > >, rtengine::procparams::LocalContrastParams::Region*) (__first={contrast = 4.6175027845653594e-310, curve = std::vector of length 11682542644526, capacity 4 = {<error reading variable>, __last=
{contrast = 1.8801915897194909e+219, curve = std::vector of length 11728147800201, capacity -937128 = {<error reading variable>, __result=0x555557255380)
at /usr/include/c++/9/bits/stl_uninitialized.h:89
--Type <RET> for more, q to quit, c to continue without paging--
#70x0000555555ccb614 in std::uninitialized_copy<__gnu_cxx::__normal_iterator<rtengine::procparams::LocalContrastParams::Region const*, std::vector<rtengine::procparams::LocalContrastParams::Region, std::allocatorrtengine::procparams::LocalContrastParams::Region > >, rtengine::procparams::LocalContrastParams::Region*>(__gnu_cxx::__normal_iterator<rtengine::procparams::LocalContrastParams::Region const*, std::vector<rtengine::procparams::LocalContrastParams::Region, std::allocatorrtengine::procparams::LocalContrastParams::Region > >, __gnu_cxx::__normal_iterator<rtengine::procparams::LocalContrastParams::Region const*, std::vector<rtengine::procparams::LocalContrastParams::Region, std::allocatorrtengine::procparams::LocalContrastParams::Region > >, rtengine::procparams::LocalContrastParams::Region*) (__first={contrast = 4.6175027845653594e-310, curve = std::vector of length 11682542644526, capacity 4 = {<error reading variable>, __last=
{contrast = 1.8801915897194909e+219, curve = std::vector of length 11728147800201, capacity -937128 = {<error reading variable>, __result=0x555557255380)
at /usr/include/c++/9/bits/stl_uninitialized.h:140
#80x0000555555cc997b in std::__uninitialized_copy_a<__gnu_cxx::__normal_iterator<rtengine::procparams::LocalContrastParams::Region const*, std::vector<rtengine::procparams::LocalContrastParams::Region, std::allocatorrtengine::procparams::LocalContrastParams::Region > >, rtengine::procparams::LocalContrastParams::Region*, rtengine::procparams::LocalContrastParams::Region>(__gnu_cxx::__normal_iterator<rtengine::procparams::LocalContrastParams::Region const*, std::vector<rtengine::procparams::LocalContrastParams::Region, std::allocator<rtengine::procpar--Type <RET> for more, q to quit, c to continue without paging--ams::LocalContrastParams::Region> > >, __gnu_cxx::__normal_iterator<rtengine::procparams::LocalContrastParams::Region const*, std::vector<rtengine::procparams::LocalContrastParams::Region, std::allocatorrtengine::procparams::LocalContrastParams::Region > >, rtengine::procparams::LocalContrastParams::Region*, std::allocatorrtengine::procparams::LocalContrastParams::Region&) (__first=
{contrast = 4.6175027845653594e-310, curve = std::vector of length 11682542644526, capacity 4 = {<error reading variable>, __last=
{contrast = 1.8801915897194909e+219, curve = std::vector of length 11728147800201, capacity -937128 = {<error reading variable>, __result=0x555557255380)
at /usr/include/c++/9/bits/stl_uninitialized.h:307
#90x0000555555cc8411 in std::vector<rtengine::procparams::LocalContrastParams::Region, std::allocatorrtengine::procparams::LocalContrastParams::Region >::vector(std::vector<rtengine::procparams::LocalContrastParams::Region, std::allocatorrtengine::procparams::LocalContrastParams::Region > const&)(this=0x7fffffffb7b0, __x=std::vector of length 1, capacity 1 = {...})
at /usr/include/c++/9/bits/stl_vector.h:555
#100x0000555555cc6519 in rtengine::procparams::LocalContrastParams::LocalContrastParams(rtengine::procparams::LocalContrastParams const&)(this=0x7fffffffb7a8) at /home/paul/art/rtgui/../rtengine/procparams.h:566
#110x0000555555cc77dc in rtengine::procparams::ProcParams::ProcParams(rtengine::procparams::ProcParams const&) (this=0x7fffffffb6c0)at /home/paul/art/rtgui/../rtengine/procparams.h:1496
#120x00005555560d061b in Thumbnail::setProcParams(rtengine::procparams::Partial--Type <RET> for more, q to quit, c to continue without paging--Profile const&, int, bool, bool) (this=0x7fffb8008400, pp=
..., whoChangedIt=2, updateCacheNow=false, resetToDefault=false)
at /home/paul/art/rtgui/thumbnail.cc:484
#130x00005555560d0891 in Thumbnail::setProcParams(rtengine::procparams::ProcParams const&, int, bool, bool)(this=0x7fffb8008400, pp=..., whoChangedIt=2, updateCacheNow=false, resetToDefault=false) at /home/paul/art/rtgui/thumbnail.cc:513
#140x0000555555dad32f in EditorPanel::refreshProcessingState(bool)(this=0x55555771e8c0, inProcessingP=false)
at /home/paul/art/rtgui/editorpanel.cc:1330
#150x0000555555dacce1 in EditorPanel::<lambda()>::operator()(void) const(__closure=0x7fff60038b98) at /home/paul/art/rtgui/editorpanel.cc:1258
#160x0000555555db671a in std::_Function_handler<bool(), EditorPanel::setProgressState(bool)::<lambda()> >::_M_invoke(const std::_Any_data &) (__functor=...)at /usr/include/c++/9/bits/std_function.h:285
#170x0000555555ea63fc in std::function<bool ()>::operator()() const(this=0x7fff60038b98) at /usr/include/c++/9/bits/std_function.h:688
#18 0x0000555555e96cc5 in IdleRegister::<lambda(gpointer)>::operator()(gpointer) const (__closure=0x0, data=0x7fff60038b90)
at /home/paul/art/rtgui/guiutils.cc:59
#190x0000555555e96d75 in IdleRegister::<lambda(gpointer)>::_FUN(gpointer) ()at /home/paul/art/rtgui/guiutils.cc:69
#200x00007ffff770af4d in () at /lib/x86_64-linux-gnu/libgdk-3.so.0--Type <RET> for more, q to quit, c to continue without paging--
#210x00007ffff75a304e in g_main_context_dispatch ()at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#220x00007ffff75a3400 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0#230x00007ffff75a34a3 in g_main_context_iteration ()at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#240x00007ffff5084fe5 in g_application_run ()at /lib/x86_64-linux-gnu/libgio-2.0.so.0
#250x0000555555f5841d in main(int, char**) (argc=1, argv=0x7fffffffdf18)at /home/paul/art/rtgui/main.cc:570
(gdb)