newsym() impossible() band-aid
Prevent the main vision_recalc loop from triggering an impossible for bad coordinates from newsym(). This hack may mean that the underlying problem will remain unsolved but at least newsym won't cause the fuzzer to panic or frighten players with impossible warnings.
This commit is contained in:
@@ -822,7 +822,18 @@ vision_recalc(int control)
|
||||
if ((old_row[col] & IN_SIGHT)
|
||||
|| ((next_row[col] & COULD_SEE)
|
||||
^ (old_row[col] & COULD_SEE)))
|
||||
{
|
||||
/*
|
||||
* TEMPORARY? Sometimes we get here with col==0 and
|
||||
* newsym()'s impossible() for !isok() is being
|
||||
* triggered, so avoid calling it for <0,y>; other bad
|
||||
* coordinates will produce a panic() as they should.
|
||||
*/
|
||||
if (col != 0)
|
||||
/*
|
||||
*/
|
||||
newsym(col, row);
|
||||
}
|
||||
}
|
||||
|
||||
} /* end for col . . */
|
||||
|
||||
Reference in New Issue
Block a user