[ZODB-Dev] Latest news: core dump with small change to POSException.py

Greg Ward gward@mems-exchange.org
Tue, 25 Sep 2001 20:46:09 -0400


On 25 September 2001, Jeremy Hylton said:
> Close, but not quite.  The identifier starts with 't', but that isn't
> the full identifier.  You'll need to look at
> p ((PyStringObject *)co->co_name)->ob_sval[0]
> p ((PyStringObject *)co->co_name)->ob_sval[1]
> p ((PyStringObject *)co->co_name)->ob_sval[2]
> p ((PyStringObject *)co->co_name)->ob_sval[3]
> etc.

Managed to pull a bit of gdb trivia out of the far recesses of my brain:
"x/s ((PyStringObject *)co->co_name)->ob_sval" treats the pointer
in question as a pointer to a C string, and reveals the full string:
"test_merge" -- which is the name of the Python function where the
exception is being caught, and where Python is dumping core.

        Greg