[1/6]usp10: code for the cmap format 12 table for unicode code points beyond the BMP

Alexandre Julliard julliard at winehq.org
Mon Dec 19 04:07:04 CST 2011


Aric Stewart <aric at codeweavers.com> writes:

> +        while (k < GET_BE_DWORD(format->nGroups))
> +        {
> +            if (GET_BE_DWORD(format->groups[k].startCharCode) > utf32c)
> +                break;
> +            if (GET_BE_DWORD(format->groups[k].endCharCode) < utf32c)
> +                k++;
> +            else
> +            {
> +                DWORD offset = utf32c - GET_BE_DWORD(format->groups[k].startCharCode);
> +                *pgi = GET_BE_DWORD(format->groups[k].startGlyphID) + offset;
> +                return 0;
> +            }

You probably want a binary search.

Also do we really need a new source file for such a small function?

-- 
Alexandre Julliard
julliard at winehq.org



More information about the wine-devel mailing list