While I accept that this patch fixes it for you, it is
still extremely odd that x1 and x2 can be the same
and yet xt1 and xt2 somehow become different.
Unless I'm missing something obvious, the only thing
I can think of is the "extra precision" issue that some
CPUs (x86) have, i.e. when FP values get stored in
memory and then reloaded, they lose the extra bits.
(This is described in the GCC info pages).
Could you try reverting your change and compiling
EDGE with the -ffloat-store option, and see if the
same problem occurs? (It has never happened to
me, but I'm on a PowerPC CPU).
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Er... memory says Obtic, for example the entrance to a
roughly '8'-shaped area at the north end of the start
corridor (MAP03). I've definitely seen it elsewhere, though.
I've set things up so that the game will (should) be
automatically paused when the problem occurs.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Avoid division by zero problem
Logged In: YES
user_id=11869
While I accept that this patch fixes it for you, it is
still extremely odd that x1 and x2 can be the same
and yet xt1 and xt2 somehow become different.
Unless I'm missing something obvious, the only thing
I can think of is the "extra precision" issue that some
CPUs (x86) have, i.e. when FP values get stored in
memory and then reloaded, they lose the extra bits.
(This is described in the GCC info pages).
Could you try reverting your change and compiling
EDGE with the -ffloat-store option, and see if the
same problem occurs? (It has never happened to
me, but I'm on a PowerPC CPU).
Logged In: YES
user_id=11266
Is this occasionally error is totally random? I guess my
real question is what you tend to be playing map wise when
it occurs.
Logged In: YES
user_id=294680
Er... memory says Obtic, for example the entrance to a
roughly '8'-shaped area at the north end of the start
corridor (MAP03). I've definitely seen it elsewhere, though.
I've set things up so that the game will (should) be
automatically paused when the problem occurs.
Logged In: YES
user_id=11869
Originator: NO
I started getting this error with 1.29 when
playing DM with bots. It is something to do
with P_SlideMove() doing very small traversals.
The SlideMove stuff desperately needs a better
implementation, but for the time being I've
reworked P_PathTraverse() similar to your
patch.