trace/simple: Replace asprintf by g_strdup_printf

asprintf is not available for all hosts. g_strdup_printf is
more portable and simplifies the code because if does not
need error handling.

The static variable does not need an explicit assignment to be NULL.

Cc: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Signed-off-by: Stefan Weil <sw@weilnetz.de>
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
This commit is contained in:
Stefan Weil 2012-08-13 21:51:16 +02:00 committed by Stefan Hajnoczi
parent 964d0a7b2b
commit 4552e41025
1 changed files with 4 additions and 10 deletions

View File

@ -55,7 +55,7 @@ static unsigned int trace_idx;
static unsigned int writeout_idx;
static uint64_t dropped_events;
static FILE *trace_fp;
static char *trace_file_name = NULL;
static char *trace_file_name;
/* * Trace buffer entry */
typedef struct {
@ -329,18 +329,12 @@ bool st_set_trace_file(const char *file)
{
st_set_trace_file_enabled(false);
free(trace_file_name);
g_free(trace_file_name);
if (!file) {
if (asprintf(&trace_file_name, CONFIG_TRACE_FILE, getpid()) < 0) {
trace_file_name = NULL;
return false;
}
trace_file_name = g_strdup_printf(CONFIG_TRACE_FILE, getpid());
} else {
if (asprintf(&trace_file_name, "%s", file) < 0) {
trace_file_name = NULL;
return false;
}
trace_file_name = g_strdup_printf("%s", file);
}
st_set_trace_file_enabled(true);