Vaclav Slavik wrote:
> Hi,
>
> I'm using DirectFB 1.0.0-rc2 together with linux-fusion-3.2 to run
> more than one on on single SDL system screen. I'm sometimes(!)
> getting an assert in dfb_gfxcard_blit() when the second app launched
> (while the first one is still running) shows its window:
>
> (*) DirectFB/Core: Multi Application Core. (2006-11-25 23:51) [
> DEBUG ]
> (*) Direct/Memcpy: Using libc memcpy()
> (*) Direct/Thread: Running 'Fusion Dispatch' (MESSAGING, 15685)...
> (*) DirectFB/Graphics: Generic Software Rasterizer 0.6 (directfb.org)
> (*) Direct/Interface: Loaded 'DGIFF' implementation
> of 'IDirectFBFont'.
> (!) [Main Thread 4.215] (15684) *** Assertion [rect->x +
> rect->w - 1 <
> state->source->width] failed *** [gfxcard.c:1213 in
> dfb_gfxcard_blit()]
> (!) [15684: 4.215] --> Caught signal 5 (sent by pid 15684, uid
> 1000) <--
> (!) Direct/Thread: Killing 'Fusion Dispatch' (15685)!
> Killed
>
> The worst part is that it's not reproducible, I sometimes get the
> assert, sometimes not. I sometimes get it with debugging code
> compiled in. I don't get the assert in release build of DFB. I don't
> get it when I run the 2nd app under Valgrind (which slows it down a
> lot). I don't get it in single instance build when running that app,
> nor if I run the asserting app as the 1st one when no other app is
> occupying the display. When I don't get the assert, everything seems
> to render correctly. It looks like some timing issue to me, possibly
> related to threads synchronization.
>
> The assert appears because GetSurface() for the DFB window with
> dimensions 110x50 returns a surface with 128x64 dimensions (which is
> my screen's size). I don't understand how could that happen, though.
>
> I have no idea how to debug this, would you have any ideas where to
> look and how to debug this? I'm new to DFB and don't know its
> internals at all, so I'm at lost as to what to look for...
>
> Thanks in advance,
> Vaclav
>
That started happening after dok sequenzialized fusion reactions.
After that change, notification of surface resizement may happen after a
long delay.
Dok, what about reverting the change?
--
Regards,
Claudio Ciccani
[EMAIL PROTECTED]
http://directfb.org
http://sf.net/projects/php-directfb
_______________________________________________
directfb-dev mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev