gallium/hud: create files after graphs are created to get final names

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Reviewed-by: Edmondo Tommasina <edmondo.tommasina@gmail.com>
This commit is contained in:
Marek Olšák 2017-02-16 13:29:16 +01:00
parent 22c34bbc55
commit c8d84801b7
5 changed files with 23 additions and 12 deletions

View file

@ -939,7 +939,20 @@ hud_graph_destroy(struct hud_graph *graph)
FREE(graph);
}
void
static void strcat_without_spaces(char *dst, const char *src)
{
dst += strlen(dst);
while (*src) {
if (*src == ' ')
*dst++ = '_';
else
*dst++ = *src;
src++;
}
*dst = 0;
}
static void
hud_graph_set_dump_file(struct hud_graph *gr)
{
#ifndef PIPE_OS_WINDOWS
@ -951,7 +964,7 @@ hud_graph_set_dump_file(struct hud_graph *gr)
if (dump_file) {
strcpy(dump_file, hud_dump_dir);
strcat(dump_file, "/");
strcat(dump_file, gr->name);
strcat_without_spaces(dump_file, gr->name);
gr->fd = fopen(dump_file, "w+");
free(dump_file);
}
@ -1376,6 +1389,14 @@ hud_parse_env_var(struct hud_context *hud, const char *env)
FREE(pane);
}
}
LIST_FOR_EACH_ENTRY(pane, &hud->pane_list, head) {
struct hud_graph *gr;
LIST_FOR_EACH_ENTRY(gr, &pane->graph_list, head) {
hud_graph_set_dump_file(gr);
}
}
}
static void

View file

@ -214,8 +214,6 @@ hud_cpu_graph_install(struct hud_pane *pane, unsigned cpu_index)
info = gr->query_data;
info->cpu_index = cpu_index;
hud_graph_set_dump_file(gr);
hud_pane_add_graph(pane, gr);
hud_pane_set_max_value(pane, 100);
}
@ -285,8 +283,6 @@ hud_api_thread_busy_install(struct hud_pane *pane)
*/
gr->free_query_data = free_query_data;
hud_graph_set_dump_file(gr);
hud_pane_add_graph(pane, gr);
hud_pane_set_max_value(pane, 100);
}

View file

@ -394,8 +394,6 @@ hud_pipe_query_install(struct hud_batch_query_context **pbq,
info->result_index = result_index;
}
hud_graph_set_dump_file(gr);
hud_pane_add_graph(pane, gr);
pane->type = type; /* must be set before updating the max_value */

View file

@ -88,7 +88,5 @@ hud_fps_graph_install(struct hud_pane *pane)
*/
gr->free_query_data = free_query_data;
hud_graph_set_dump_file(gr);
hud_pane_add_graph(pane, gr);
}

View file

@ -109,8 +109,6 @@ void hud_batch_query_begin(struct hud_batch_query_context *bq);
void hud_batch_query_update(struct hud_batch_query_context *bq);
void hud_batch_query_cleanup(struct hud_batch_query_context **pbq);
void hud_graph_set_dump_file(struct hud_graph *gr);
#if HAVE_GALLIUM_EXTRA_HUD
int hud_get_num_nics(bool displayhelp);
#define NIC_DIRECTION_RX 1