text: add helpers to (un)load all modules at once

Instead of doing all this in main() we now use the two helpers. This makes
the code much more readable and avoids too many stuff in main().

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
This commit is contained in:
David Herrmann 2012-09-26 22:00:01 +02:00
parent f40c6eaf32
commit 5117852e75
2 changed files with 36 additions and 21 deletions

View File

@ -725,13 +725,8 @@ int main(int argc, char **argv)
if (ret)
goto err_out;
kmscon_font_unifont_load();
kmscon_font_8x16_load();
kmscon_font_pango_load();
kmscon_font_freetype2_load();
kmscon_text_bbulk_load();
kmscon_text_bblit_load();
kmscon_text_gltex_load();
kmscon_font_load_all();
kmscon_text_load_all();
memset(&app, 0, sizeof(app));
ret = setup_app(&app);
@ -761,26 +756,16 @@ int main(int argc, char **argv)
}
destroy_app(&app);
kmscon_text_gltex_unload();
kmscon_text_bblit_unload();
kmscon_text_bbulk_unload();
kmscon_font_freetype2_unload();
kmscon_font_pango_unload();
kmscon_font_8x16_unload();
kmscon_font_unifont_unload();
kmscon_text_unload_all();
kmscon_font_unload_all();
conf_free(options, onum);
log_info("exiting");
return EXIT_SUCCESS;
err_unload:
kmscon_text_gltex_unload();
kmscon_text_bblit_unload();
kmscon_text_bbulk_unload();
kmscon_font_freetype2_unload();
kmscon_font_pango_unload();
kmscon_font_8x16_unload();
kmscon_font_unifont_unload();
kmscon_text_unload_all();
kmscon_font_unload_all();
err_out:
conf_free(options, onum);
log_err("cannot initialize kmscon, errno %d: %s", ret, strerror(-ret));

View File

@ -302,4 +302,34 @@ static inline void kmscon_text_gltex_unload(void)
#endif
static inline void kmscon_font_load_all(void)
{
kmscon_font_unifont_load();
kmscon_font_8x16_load();
kmscon_font_pango_load();
kmscon_font_freetype2_load();
}
static inline void kmscon_font_unload_all(void)
{
kmscon_font_freetype2_unload();
kmscon_font_pango_unload();
kmscon_font_8x16_unload();
kmscon_font_unifont_unload();
}
static inline void kmscon_text_load_all(void)
{
kmscon_text_bbulk_load();
kmscon_text_bblit_load();
kmscon_text_gltex_load();
}
static inline void kmscon_text_unload_all(void)
{
kmscon_text_gltex_unload();
kmscon_text_bblit_unload();
kmscon_text_bbulk_unload();
}
#endif /* KMSCON_TEXT_H */