compositor: Let the user know about the debug scopes available 03/28803/1
authorMarius Vlad <marius.vlad@collabora.com>
Thu, 4 May 2023 15:01:16 +0000 (18:01 +0300)
committerMarius Vlad <marius.vlad@collabora.com>
Thu, 4 May 2023 15:01:57 +0000 (18:01 +0300)
Bug-AGL: SPEC-4593
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: I79d4447b7768b72712e244504782a33ba257a33d

src/compositor.c

index 8df333d..ef06314 100644 (file)
@@ -1791,6 +1791,7 @@ int wet_main(int argc, char *argv[], const struct weston_testsuite_data *test_da
        int version = 0;
        int no_config = 0;
        int debug = 0;
+       bool list_debug_scopes = false;
        char *config_file = NULL;
        struct weston_log_context *log_ctx = NULL;
        struct weston_log_subscriber *logger;
@@ -1809,6 +1810,7 @@ int wet_main(int argc, char *argv[], const struct weston_testsuite_data *test_da
                { WESTON_OPTION_STRING, "config", 'c', &config_file },
                { WESTON_OPTION_STRING, "modules", 0, &option_modules },
                { WESTON_OPTION_STRING, "debug-scopes", 'l', &debug_scopes },
+               { WESTON_OPTION_STRING, "list-debug-scopes", 'L', &list_debug_scopes },
        };
 
        wl_list_init(&ivi.outputs);
@@ -1937,6 +1939,22 @@ int wet_main(int argc, char *argv[], const struct weston_testsuite_data *test_da
        if (ivi_shell_init(&ivi) < 0)
                goto error_compositor;
 
+       if (list_debug_scopes) {
+               struct weston_log_scope *nscope = NULL;
+
+               weston_log("Printing available debug scopes:\n");
+
+               while ((nscope = weston_log_scopes_iterate(ivi.compositor, nscope))) {
+                       weston_log("\tscope name: %s, desc: %s",
+                                       weston_log_scope_get_name(nscope),
+                                       weston_log_scope_get_description(nscope));
+               }
+
+               weston_log("\n");
+
+               goto error_compositor;
+       }
+
        add_bindings(ivi.compositor);
 
        weston_compositor_flush_heads_changed(ivi.compositor);