Forums

Full Version: Segfault on wall collision
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
while we are at crash-logs, i just managed to cause this (when driving into the wall):

Thread 0 Crashed:
0 org.vdrift-team.vdrift 0x0008c758 ROADSTRIP::CollideBranch(VERTEX, VERTEX, VERTEX&, bool, BEZIER*&, BEZIERCOLBRANCH*, VERTEX&) + 208 (track.cpp:391)
1 org.vdrift-team.vdrift 0x0008c7f4 ROADSTRIP::CollideBranch(VERTEX, VERTEX, VERTEX&, bool, BEZIER*&, BEZIERCOLBRANCH*, VERTEX&) + 364 (track.cpp:392)
2 org.vdrift-team.vdrift 0x0008cb20 ROADSTRIP::CollideBranch(VERTEX, VERTEX, VERTEX&, bool, BEZIER*&, BEZIERCOLBRANCH*, VERTEX&) + 1176 (track.cpp:460)
3 org.vdrift-team.vdrift 0x0008cb20 ROADSTRIP::CollideBranch(VERTEX, VERTEX, VERTEX&, bool, BEZIER*&, BEZIERCOLBRANCH*, VERTEX&) + 1176 (track.cpp:460)
4 org.vdrift-team.vdrift 0x0008cb20 ROADSTRIP::CollideBranch(VERTEX, VERTEX, VERTEX&, bool, BEZIER*&, BEZIERCOLBRANCH*, VERTEX&) + 1176 (track.cpp:460)
5 org.vdrift-team.vdrift 0x0008cb20 ROADSTRIP::CollideBranch(VERTEX, VERTEX, VERTEX&, bool, BEZIER*&, BEZIERCOLBRANCH*, VERTEX&) + 1176 (track.cpp:460)
6 org.vdrift-team.vdrift 0x0008cbc0 ROADSTRIP::CollideBranch(VERTEX, VERTEX, VERTEX&, bool, BEZIER*&, BEZIERCOLBRANCH*, VERTEX&) + 1336 (track.cpp:463)
7 org.vdrift-team.vdrift 0x0008cb20 ROADSTRIP::CollideBranch(VERTEX, VERTEX, VERTEX&, bool, BEZIER*&, BEZIERCOLBRANCH*, VERTEX&) + 1176 (track.cpp:460)
8 org.vdrift-team.vdrift 0x0008cbc0 ROADSTRIP::CollideBranch(VERTEX, VERTEX, VERTEX&, bool, BEZIER*&, BEZIERCOLBRANCH*, VERTEX&) + 1336 (track.cpp:463)
9 org.vdrift-team.vdrift 0x0008cbc0 ROADSTRIP::CollideBranch(VERTEX, VERTEX, VERTEX&, bool, BEZIER*&, BEZIERCOLBRANCH*, VERTEX&) + 1336 (track.cpp:463)
10 org.vdrift-team.vdrift 0x0008cb20 ROADSTRIP::CollideBranch(VERTEX, VERTEX, VERTEX&, bool, BEZIER*&, BEZIERCOLBRANCH*, VERTEX&) + 1176 (track.cpp:460)
11 org.vdrift-team.vdrift 0x0008cbc0 ROADSTRIP::CollideBranch(VERTEX, VERTEX, VERTEX&, bool, BEZIER*&, BEZIERCOLBRANCH*, VERTEX&) + 1336 (track.cpp:463)
12 org.vdrift-team.vdrift 0x0008dc18 TRACK::CollideRoads(VERTEX, VERTEX, VERTEX&, bool, ROADSTRIP*&, BEZIER*&, VERTEX&) + 344 (track.cpp:351)
13 org.vdrift-team.vdrift 0x0008e00c TRACK::ElevationSeg(VERTEX, VERTEX&, float) + 320 (track.cpp:1175)
14 org.vdrift-team.vdrift 0x000912a0 Vamos_World::World::interact(Vamos_Body::Car*, unsigned long) + 528 (World.cc:207)
15 org.vdrift-team.vdrift 0x00079ef4 VAMOSWORLD:TonguehysUpdate(float) + 136 (stl_iterator.h:603)
16 org.vdrift-team.vdrift 0x0007fee4 VAMOSWORLD::Update(float, float, _SDL_Joystick**) + 172 (vamosworld.cc:915)
17 org.vdrift-team.vdrift 0x000155b0 Update() + 504 (main.cpp:488)
I split this from the New menu system thread into its own topic so it isn't forgotten about...

Do you get a lot of "Detected NaN in elevation" messages when this happens? Or does it just crash right away?
sry this was the first time that happened, and i don't have stdout of that session anymore...
Sometimes, but not always, when I run into a wall, especially it seems if it's a guard rail with lots of contours (as opposed to a flat wall of some kind) VDrift begins printing tons of Detected NaN statements on the console and the screen goes black. At this point I'm usually force to kill -9 vdrift in order to get it to die, it doesn't segfault on its own. This is why I was wondering if you got the messages or not. Let me know if you can reproduce it again.