CVSROOT:        /cvs/directfb
Module name:    DirectFB
Changes by:     dok     20010923 06:33:01

Modified files:
        include        : directfb_internals.h 
        interfaces/IDirectFBVideoProvider: idirectfbvideoprovider_v4l.c 
        src/core       : gfxcard.c gfxcard.h state.h surfacemanager.c 
                         surfacemanager.h surfaces.c surfaces.h 
                         windows.c 
        src/gfx/generic: generic.c 

Log message:
Use 'DFBCALLOC' in 'DFB_ALLOCATE_INTERFACE', forgot that one.

Fixed small event dispatching bug in window stack, a button event
was sent to the focused window even if it's not under the cursor
and doesn't grab the pointer.

When CapsLock is hold down you can raise
the window under the cursor with a click.

The following changes fix problems related to heavy threading,
e.g. more than 50 threads on my machine actively using DirectFB:

Added 'surfacemanager_lock/unlock()' and divided surface manager functions
into two groups: functions doing the lock themselves and functions that can
only be called between lock/unlock. Functions doing the lock themself must
not be called between lock/unlock.

Added 'state_lock/unlock(state)' that are called in drawing/blitting functions
from 'gfxcard.c'. Merged 'card->source_locked' and 'source_locked (generic.c)'
into new 'state->source_locked'.

Added 'buffer->video.locked' so the surface manager does not try to kick out
surface buffers that are currently locked, which could end up in a dead lock.



-- 
Info:  To unsubscribe send a mail to [EMAIL PROTECTED] with 
"unsubscribe directfb-cvs" as subject.

Reply via email to