Re: [AD] crash! unhandled exception wip414 win2k msvc

[ Thread Index | Date Index | More lists.liballeg.org/allegro-developers Archives ]


> I only get the crash if the game window gets overlapped by the alt+tab
> popup. If I move the window to the side of the screen so that Alt+Tab
> doens't pop up over it, it works fine. Similarly, I can move other windows
> over it with no problem.

Ok.

> I'm using 16-bit colour for my game, and the desktop is at 32-bit colour,
> and I also get the crash in colorconv_blit_16_to_32.

Does it happen on a 16-bit desktop too ? Does it happen or crash at another 
place if you put
        disable_direct_updating = yes
in the [graphics] section of allegro.cfg (which must be visible by the 
program) ?

> Is there some problem with allegro trying to refresh the screen just when
> it loses the focus, and therefore the screen isn't valid any more?

That's clearly the problem. From the point of view of Allegro, there is 
currently no difference between a normal overlapping window and the 
overlapping Alt+Tab window: when Allegro wants to refresh the screen, it 
first locks the DirecDraw surfaces it is going to use, then does the refresh 
and eventually releases the lock.

Allegro seems to crash in _colorconv_blit_16_to_32 because it can't access 
anymore the surface it has just locked, as though Alt+Tab was able to 
overrule the lock.

-- 
Eric Botcazou



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/