On Thu, Mar 20, 2008 at 09:38:04PM -0700, Josh Triplett wrote:

> If a manastorm occurs at the edge of the map, Omega does an emergency
> save due to a fatal signal (likely segfault), and then exits.  Easily
> reproducible in the sewers beneath the city, where the diagonal
> corridors lead all the way to the edge of the map.  Looking at the
> source, it looks like all 3x3 effects go through the function "ball"
> in effect1.c, which has no check for boundary conditions.

In ball(), right after ey = yy + Dirs[1][i];, could you put the
following line and see if that solves the crash?

if(offscreen(ex, ey)) continue;

I can't easily reproduce the crash myself, perhaps because I'm trying it
on amd64.

-- 
Met vriendelijke groet / with kind regards,
      Guus Sliepen <[EMAIL PROTECTED]>

Attachment: signature.asc
Description: Digital signature

Reply via email to