Revert "dix: Remove couple unused font server functions"
This reverts commit 14cbc31290b04a0fb8dfe790e53de1468733a6b1.
This commit is contained in:
parent
0bcfce4e68
commit
f8396be4ce
123
dix/dixfonts.c
123
dix/dixfonts.c
@ -1905,6 +1905,58 @@ GetClientResolutions(int *num)
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* returns the type index of the new fpe
|
||||
*
|
||||
* should be called (only once!) by each type of fpe when initialized
|
||||
*/
|
||||
|
||||
_X_EXPORT
|
||||
int
|
||||
RegisterFPEFunctions(NameCheckFunc name_func,
|
||||
InitFpeFunc init_func,
|
||||
FreeFpeFunc free_func,
|
||||
ResetFpeFunc reset_func,
|
||||
OpenFontFunc open_func,
|
||||
CloseFontFunc close_func,
|
||||
ListFontsFunc list_func,
|
||||
StartLfwiFunc start_lfwi_func,
|
||||
NextLfwiFunc next_lfwi_func,
|
||||
WakeupFpeFunc wakeup_func,
|
||||
ClientDiedFunc client_died,
|
||||
LoadGlyphsFunc load_glyphs,
|
||||
StartLaFunc start_list_alias_func,
|
||||
NextLaFunc next_list_alias_func, SetPathFunc set_path_func)
|
||||
{
|
||||
FPEFunctions *new;
|
||||
|
||||
/* grow the list */
|
||||
new = (FPEFunctions *) realloc(fpe_functions,
|
||||
(num_fpe_types + 1) * sizeof(FPEFunctions));
|
||||
if (!new)
|
||||
return -1;
|
||||
fpe_functions = new;
|
||||
|
||||
fpe_functions[num_fpe_types].name_check = name_func;
|
||||
fpe_functions[num_fpe_types].open_font = open_func;
|
||||
fpe_functions[num_fpe_types].close_font = close_func;
|
||||
fpe_functions[num_fpe_types].wakeup_fpe = wakeup_func;
|
||||
fpe_functions[num_fpe_types].list_fonts = list_func;
|
||||
fpe_functions[num_fpe_types].start_list_fonts_with_info = start_lfwi_func;
|
||||
fpe_functions[num_fpe_types].list_next_font_with_info = next_lfwi_func;
|
||||
fpe_functions[num_fpe_types].init_fpe = init_func;
|
||||
fpe_functions[num_fpe_types].free_fpe = free_func;
|
||||
fpe_functions[num_fpe_types].reset_fpe = reset_func;
|
||||
fpe_functions[num_fpe_types].client_died = client_died;
|
||||
fpe_functions[num_fpe_types].load_glyphs = load_glyphs;
|
||||
fpe_functions[num_fpe_types].start_list_fonts_and_aliases =
|
||||
start_list_alias_func;
|
||||
fpe_functions[num_fpe_types].list_next_font_or_alias = next_list_alias_func;
|
||||
fpe_functions[num_fpe_types].set_path_hook = set_path_func;
|
||||
|
||||
return num_fpe_types++;
|
||||
}
|
||||
|
||||
void
|
||||
FreeFonts()
|
||||
{
|
||||
@ -1928,3 +1980,74 @@ find_old_font(XID id)
|
||||
return (FontPtr) SecurityLookupIDByType(NullClient, id, RT_NONE,
|
||||
SecurityUnknownAccess);
|
||||
}
|
||||
|
||||
_X_EXPORT
|
||||
Font
|
||||
GetNewFontClientID()
|
||||
{
|
||||
return FakeClientID(0);
|
||||
}
|
||||
|
||||
_X_EXPORT
|
||||
int
|
||||
StoreFontClientFont(FontPtr pfont, Font id)
|
||||
{
|
||||
return AddResource(id, RT_NONE, (pointer) pfont);
|
||||
}
|
||||
|
||||
_X_EXPORT
|
||||
void
|
||||
DeleteFontClientID(Font id)
|
||||
{
|
||||
FreeResource(id, RT_NONE);
|
||||
}
|
||||
|
||||
_X_EXPORT
|
||||
int
|
||||
client_auth_generation(ClientPtr client)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int fs_handlers_installed = 0;
|
||||
|
||||
static unsigned int last_server_gen;
|
||||
|
||||
_X_EXPORT
|
||||
int
|
||||
init_fs_handlers(FontPathElementPtr fpe, BlockHandlerProcPtr block_handler)
|
||||
{
|
||||
/* if server has reset, make sure the b&w handlers are reinstalled */
|
||||
if (last_server_gen < serverGeneration) {
|
||||
last_server_gen = serverGeneration;
|
||||
fs_handlers_installed = 0;
|
||||
}
|
||||
if (fs_handlers_installed == 0) {
|
||||
|
||||
|
||||
if (!RegisterBlockAndWakeupHandlers(block_handler,
|
||||
FontWakeup, (pointer) 0))
|
||||
return AllocError;
|
||||
fs_handlers_installed++;
|
||||
}
|
||||
QueueFontWakeup(fpe);
|
||||
return Successful;
|
||||
}
|
||||
|
||||
_X_EXPORT
|
||||
void
|
||||
remove_fs_handlers(FontPathElementPtr fpe, BlockHandlerProcPtr block_handler,
|
||||
Bool all)
|
||||
{
|
||||
if (all) {
|
||||
/* remove the handlers if no one else is using them */
|
||||
if (--fs_handlers_installed == 0) {
|
||||
|
||||
|
||||
RemoveBlockAndWakeupHandlers(block_handler, FontWakeup,
|
||||
(pointer) 0);
|
||||
}
|
||||
}
|
||||
RemoveFontWakeup(fpe);
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user