Make fails

John Ralls jralls at ceridwen.us
Thu Dec 3 16:39:25 EST 2015


> On Dec 3, 2015, at 1:00 PM, Alex Aycinena <alex.aycinena at gmail.com> wrote:
> 
> John,
> 
> When I put a breakpoint on /gnc-pricedb-xml-v2.cpp:445 and ran the test, it stopped at the break and then I continued several times before the following:
> 
> Breakpoint 1, gnc_price_to_dom_tree (tag=0x4574ce "price", price=0x695590)
>     at /home/gnucash-dev/gitcheckouts/gnucash/src/backend/xml/gnc-pricedb-xml-v2.cpp:445
> 445        if (sourcestr && (strlen(sourcestr) != 0))
> (gdb) c
> Continuing.
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x0000000000449228 in gnc_price_to_dom_tree (tag=0x4574ce "price", 
>     price=0x695590)
>     at /home/gnucash-dev/gitcheckouts/gnucash/src/backend/xml/gnc-pricedb-xml-v2.cpp:445
> 445        if (sourcestr && (strlen(sourcestr) != 0))
> (gdb) p sourcestr
> $3 = (const gchar *) 0x3 <error: Cannot access memory at address 0x3>
> (gdb) p strlen(sourcestr)
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x00007ffff46d20ba in strlen () from /lib64/libc.so.6

Alex,

That might be good enough, it pointed out to me that the PriceSource enum had one more entry than the source_names array. I’ve fixed that and pushed it, see if that does it.

You didn’t want “strace” after the crash, you wanted “bt”.

I couldn’t replicate the crash on F21 so I’m in the process of setting up an F23 VM. Odd, though, that everywhere else over-running the array returns NULL instead of garbage.

Regards,
John Ralls




More information about the gnucash-devel mailing list