diff options
Diffstat (limited to 'src/analysis/contents/file.c')
-rw-r--r-- | src/analysis/contents/file.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/analysis/contents/file.c b/src/analysis/contents/file.c index b133336..7bb0be8 100644 --- a/src/analysis/contents/file.c +++ b/src/analysis/contents/file.c @@ -86,7 +86,7 @@ static GContentAttributes *g_file_content_get_attributes(const GFileContent *); static GBinContent *g_file_content_get_root(GFileContent *); /* Fournit le nom associé au contenu binaire. */ -static const char *g_file_content_describe(const GFileContent *, bool); +static char *g_file_content_describe(const GFileContent *, bool); /* Ecrit une sauvegarde de contenu binaire dans un fichier XML. */ static bool g_file_content_save(const GFileContent *, xmlDocPtr, xmlXPathContextPtr, const char *, const char *); @@ -489,22 +489,23 @@ static GBinContent *g_file_content_get_root(GFileContent *content) * * ******************************************************************************/ -static const char *g_file_content_describe(const GFileContent *content, bool full) +static char *g_file_content_describe(const GFileContent *content, bool full) { - const char *result; /* Description à retourner */ + char *result; /* Description à retourner */ + const char *sep; /* Caractère de séparation */ if (full) - result = content->filename; + result = strdup(content->filename); else { - result = strrchr(content->filename, G_DIR_SEPARATOR); + sep = strrchr(content->filename, G_DIR_SEPARATOR); - if (result == NULL) - result = content->filename; + if (sep == NULL) + result = strdup(content->filename); else - result++; + result = strdup(++sep); } |