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
|
void
|
||||||
FreeFonts()
|
FreeFonts()
|
||||||
{
|
{
|
||||||
@ -1928,3 +1980,74 @@ find_old_font(XID id)
|
|||||||
return (FontPtr) SecurityLookupIDByType(NullClient, id, RT_NONE,
|
return (FontPtr) SecurityLookupIDByType(NullClient, id, RT_NONE,
|
||||||
SecurityUnknownAccess);
|
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