#16966: Debugger crashes when loading symbols for OpenTTD
-----------------------------------+--------------------------
Reporter: milek7 | Owner: anevilyak
Type: bug | Status: new
Priority: normal | Milestone: Unscheduled
Component: Applications/Debugger | Version: R1/beta2
Keywords: | Blocked By:
Blocking: | Platform: x86-64
-----------------------------------+--------------------------
To reproduce (libsdl_devel is required for build):
{{{
git clone https://github.com/OpenTTD/OpenTTD
cd OpenTTD
mkdir build
cd build
cmake ..
Debugger ./openttd
}}}
It seems it crashes by stack overflow caused by infinite recursion when
resolving symbol, crashlog attached.
From cursory examination of coredump it seems to loop with this string:
`IndustryDirectoryWindow::GetIndustryString(const
Industry*)::<lambda(CargoInfo, CargoInfo)>::`, which seems to be the
symbol
`_ZZNK23IndustryDirectoryWindow17GetIndustryStringEPK8IndustryENKUlSt5tupleIJhtPKcjEES6_E_clES6_S6_`
(GNU tools are demangling it into
`IndustryDirectoryWindow::GetIndustryString(Industry const*)
const::{lambda(std::tuple<unsigned char, unsigned short, char const*,
unsigned int>, std::tuple<unsigned char, unsigned short, char const*,
unsigned int>)#1}::operator()(std::tuple<unsigned char, unsigned short,
char const*, unsigned int>, std::tuple<unsigned char, unsigned short, char
const*, unsigned int>) const`).
--
Ticket URL: <https://dev.haiku-os.org/ticket/16966>
Haiku <https://dev.haiku-os.org>
The Haiku operating system.