Subject: kern/35739: recent addition of RASOPS_ROTATION breaks wsfont
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: None <ad@netbsd.org>
List: netbsd-bugs
Date: 02/20/2007 17:10:04
>Number: 35739
>Category: kern
>Synopsis: recent addition of RASOPS_ROTATION breaks wsfont
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Tue Feb 20 17:10:04 +0000 2007
>Originator: Andrew Doran
>Release: NetBSD 4.99.10
>Organization:
The NetBSD Project
>Environment:
N/A
>Description:
The RASOPS_ROTATION stuff breaks the wsfont abstraction, since callers now
mess with the font data on their own. If I recall, this means fonts in use
by other displays can have their glyphs changed.
>How-To-Repeat:
Code inspection
>Fix:
rasops shouldn't mess with the font data. The 'rotation' should be another
attribute encoded in the cookie returned by wsfont_find(), and if the font
needs to be rotated it should be done by wsfont_lock(), not the caller. Once
that's done, the rotation code in wsfont shouldn't be conditionalized - it's
small enough.