[basic-win32] Increase performance of Uniscribe code
[basic-win32] Increase performance of Uniscribe code

A few weeks ago I reported a performance issue regarding the use of
Uniscribe in the win32 basic shaper.

It turns out that the issue was with the use of Uniscribe's
SCRIPT_CACHE.  Despite the name, this value is for caching
per-font-plus-size values, not per-script values.  See:

  http://msdn.microsoft.com/en-us/library/dd317726(VS.85).aspx

Since shaping occurs on runs containing a single font, we only need
one SCRIPT_CACHE in uniscribe_shape.  I'm including a patch below that
does this.  With the patch applied, the time for one of my tests went
from 20s to .3s.

kari-lentz/alpha-pango,Distrotech/pango,OpenInkpot-archive/iplinux-pango1.0,Distrotech/pango,kari-lentz/alpha-pango,OpenInkpot-archive/iplinux-pango1.0,danny-ku/pango,danny-ku/pango,zsx/pango,kari-lentz/alpha-pango,OpenInkpot-archive/iplinux-pango1.0,zsx/pango,Distrotech/pango,zsx/pango,kari-lentz/alpha-pango,danny-ku/pango,zsx/pango