[LIBREPORT PATCH] skip the workflow selection if there is only 1 available closes #167
Jakub Filak
jfilak at redhat.com
Tue Jul 16 13:27:43 UTC 2013
Please, take a look at set_auto_event_chain() function in wizard.c
I'm afraid that you cannot simply assign to g_auto_event_list variable.
<snip>
GList *wf_event_list = wf_get_event_list(w);
while(wf_event_list)
{
g_auto_event_list = g_list_append(g_auto_event_list,
xstrdup(ec_get_name(wf_event_list->data)));
load_single_event_config_data_from_user_storage(
(event_config_t *)wf_event_list->data);
wf_event_list = g_list_next(wf_event_list);
}
</snip>
Or is this version OK?
On Tue, 2013-07-16 at 14:48 +0200, Jiri Moskovcak wrote:
> Signed-off-by: Jiri Moskovcak <jmoskovc at redhat.com>
> ---
> src/gui-wizard-gtk/main.c | 19 +++++++++++++++++++
> 1 file changed, 19 insertions(+)
>
> diff --git a/src/gui-wizard-gtk/main.c b/src/gui-wizard-gtk/main.c
> index 3239420..235c4bf 100644
> --- a/src/gui-wizard-gtk/main.c
> +++ b/src/gui-wizard-gtk/main.c
> @@ -145,6 +145,25 @@ int main(int argc, char **argv)
>
> load_workflow_config_data(WORKFLOWS_DIR);
>
> + /* list of workflows applicable to the currently processed problem */
> + GHashTable *possible_workflows = load_workflow_config_data_from_list(
> + list_possible_events_glist(g_dump_dir_name, "workflow"),
> + WORKFLOWS_DIR);
> +
> + /* if we have only 1 workflow, we can use the events from it as default */
> + if (g_auto_event_list == NULL && g_hash_table_size(possible_workflows) == 1)
> + {
> + GHashTableIter iter;
> + gpointer key, value;
> +
> + g_hash_table_iter_init(&iter, possible_workflows);
> + if (g_hash_table_iter_next(&iter, &key, &value))
> + {
> + VERB1 log("autoselected workflow: '%s'", (char *)key);
> + g_auto_event_list = wf_get_event_list((workflow_t *)value);
> + }
> + }
> +
> problem_data_reload_from_dump_dir();
>
> create_assistant(expert_mode);
More information about the Crash-catcher
mailing list