Inconsistency between function arguments in actual crash

I am studying SIGSEGV using gdb. This is the last stack stack that gdb sees attached to a running process that should happen:

 #0 0x08d1805c in FooBar (this=0xa9315578, dt=0.100000001) 

At this point, I saved the state using generate-core-file . When I check this dump with gdb, the same frame stack reads:

 #0 0x08d1805c in FooBar (this=0x0, dt=2.69049305e-42) 

It bothers me. On the one hand, a value of 0.1 for dt in a live situation makes sense. On the other hand, this , which is 0x0 , as seen in the dump, will perfectly explain SIGSEGV .

More importantly, how could there be a discrepancy at all?

+7
c ++ linux coredump gdb
source share

No one has answered this question yet.

See related questions:

255
The kernel has been reset, but the kernel file is not in the current directory?
199
Kernel dump file analysis
187
How to dump kernel in Linux with segmentation error?
126
How can I parse a core dump file using GDB if it has command line options?
5
How to increase the chance of matching Linux kernel kernel characters?
4
Time when a heap snapshot is taken when the kernel is reset
3
Linux (MIPS): temporarily "modify" the contents of the register when viewing a core dump
one
Crash stack kernel dump analysis
one
gdb kernel debugging. # file - getting the full command that caused the crash
0
GDB debugs coredump with missing character tables for a specific call stack

All Articles