#831338 icedove: SIGSEGV caused by NULL pointer in js::Shape::fixupShapeTreeAfterMovingGC

#831338#5
Date:
2016-07-14 19:00:04 UTC
From:
To:
Dear Maintainer,

while reading e-mails, icedove crashed. Here is the gdb output
(I attached gdb because I was waiting for a different crash):

Program received signal SIGSEGV, Segmentation fault.
js::Shape::fixupShapeTreeAfterMovingGC (this=<optimized out>) at
/build/icedove-tNL3mB/icedove-45.1.0/mozilla/js/src/jspropertytree.cpp:278
278	        BaseShape* base = key->base();
(gdb) p key
$1 = (js::Shape *) 0x0
(gdb) l
273	    for (KidsHash::Enum e(*kh); !e.empty(); e.popFront()) {
274	        Shape* key = e.front();
275	        if (IsForwarded(key))
276	            key = Forwarded(key);
277
278	        BaseShape* base = key->base();
279	        if (IsForwarded(base))
280	            base = Forwarded(base);
281	        UnownedBaseShape* unowned = base->unowned();
282	        if (IsForwarded(unowned))
(gdb) i s
#0  js::Shape::fixupShapeTreeAfterMovingGC (this=<optimized out>) at
/build/icedove-tNL3mB/icedove-45.1.0/mozilla/js/src/jspropertytree.cpp:278
#1  0x00007ffff27c185b in js::Shape::fixupAfterMovingGC (this=<optimized
out>) at
/build/icedove-tNL3mB/icedove-45.1.0/mozilla/js/src/jspropertytree.cpp:309
#2  0x00007ffff2788921 in UpdateCellPointersTyped<js::Shape>
(traceKind=<error reading variable: Cannot access memory at address
0x7fffffffc258>,     arena=<error reading variable: Cannot access memory
at address 0x7fffffffc268>, trc=0x7fffffffc2a0) at
/build/icedove-tNL3mB/icedove-45.1.0/mozilla/js/src/jsgc.cpp:2390
#3  UpdateCellPointers (arena=<error reading variable: Cannot access
memory at address 0x7fffffffc268>, trc=0x7fffffffc2a0)
    at /build/icedove-tNL3mB/icedove-45.1.0/mozilla/js/src/jsgc.cpp:2428
#4  js::gc::UpdateCellPointersTask::updateArenas (this=<error reading
variable: Cannot access memory at address 0x7fffffffc348>)
    at /build/icedove-tNL3mB/icedove-45.1.0/mozilla/js/src/jsgc.cpp:2601
(gdb) p *this
value has been optimized out
(gdb) up
#1  0x00007ffff27c185b in js::Shape::fixupAfterMovingGC (this=<optimized
out>) at
/build/icedove-tNL3mB/icedove-45.1.0/mozilla/js/src/jspropertytree.cpp:309
309	        fixupShapeTreeAfterMovingGC();

#831338#10
Date:
2016-07-14 19:21:34 UTC
From:
To:
Hello Stefan,

unfortunately such partially logs are useless for us because they
missing some things.
Please follow the hints from the wiki for a complete gdb log:

https://wiki.debian.org/Icedove#Debugging

Regards
Carsten