More details of the problem:

On 04/13/05 18:19, Selwyn Tang wrote:
> With the Unichrome driver from 0.9.22, DrawString() seems failing for
> rendering an over 2000 pixels wide of string (logical width, reported
> from GetStringExtents()). My string's logical wxh is 2006x108. Some time
> after calling DrawString(), the "(!) DirectFB/Unichrome: Timeout waiting
> for idle engine!" error appeared and the system hanged.

I noticed that DrawString() fails when rendering a string with logical
width more than 2047, no matter the height.

I tried on an ARGB surface, which would use the unichrome driver's
drawstring function. It would die at line 44 of uc_accel.c, inside
uc_waitcmd(). Seems that the command never finishes.

When trying on an A8 surface, it doesn't use the unichrome driver. I
guess it is using software rendering. Anyway, the DrawString() succeeds,
but the result is distorted, ie. the string is stretched horizontally
and corrupted.

Concluding the two cases above, I doubt if there is anything wrong with
DrawString() for string longer than 2047 pixels.

In line 157 of src/core/fonts.c:

        if (width > 2048)
                width = 2048;

Is it related to this problem? Since I am a newbie in DFB, I don't
understand if it is the hardcoded limit.

Please advise. Thanks!

Selwyn

_______________________________________________
directfb-users mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-users

Reply via email to