[2/2] gdi32: Simplify font cache. (try 2)

Kusanagi Kouichi slash at ac.auone-net.jp
Sat Mar 31 06:05:31 CDT 2012


On 2012-03-30 15:36:06 +0200, Alexandre Julliard wrote:
> Kusanagi Kouichi <slash at ac.auone-net.jp> writes:
> 
> > @@ -1516,23 +1464,8 @@ static void add_face_to_cache(Face *face)
> >          RegSetValueExW(hkey_face, face_full_name_value, 0, REG_SZ, (BYTE*)face->FullName,
> >                         (strlenW(face->FullName) + 1) * sizeof(WCHAR));
> >  
> > -    reg_save_dword(hkey_face, face_index_value, face->face_index);
> > -    reg_save_dword(hkey_face, face_italic_value, (face->ntmFlags & NTM_ITALIC) != 0);
> > -    reg_save_dword(hkey_face, face_bold_value, (face->ntmFlags & NTM_BOLD) != 0);
> > -    reg_save_dword(hkey_face, face_version_value, face->font_version);
> > -    reg_save_dword(hkey_face, face_external_value, face->external);
> > -
> > -    RegSetValueExW(hkey_face, face_font_sig_value, 0, REG_BINARY, (BYTE*)&face->fs, sizeof(face->fs));
> > +    RegSetValueExW(hkey_face, face_value, 0, REG_BINARY, (BYTE*)face, sizeof *face);
> 
> I don't think that's a good idea. There are many things in the structure
> that don't make sense to have in the registry.

Font cache lacks some information. Of course we can fix that, but that
might occur again. If we save and load full information, we never lose
any information.

> Also this won't work on 64-bit.

Wine64 looks to work. Do you mean WoW64?

> 
> -- 
> Alexandre Julliard
> julliard at winehq.org



More information about the wine-devel mailing list