text: add helpers to (un)load all modules at once
authorDavid Herrmann <dh.herrmann@googlemail.com>
Wed, 26 Sep 2012 20:00:01 +0000 (22:00 +0200)
committerDavid Herrmann <dh.herrmann@googlemail.com>
Wed, 26 Sep 2012 20:00:01 +0000 (22:00 +0200)
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>
src/main.c
src/text.h

index c73a376..6669509 100644 (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));
index d7e91a4..b61ef59 100644 (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 */