From 2247964d205cd35c8203ee4de9d1801b3fc3b3c8 Mon Sep 17 00:00:00 2001 From: martin-s Date: Sat, 24 May 2008 11:19:08 +0000 Subject: [PATCH] Add:Core:Further improved logging git-svn-id: https://navit.svn.sourceforge.net/svnroot/navit/trunk@1076 ffa7fe5e-494d-0410-b361-a75ebd5db220 --- navit/navit/file.h | 2 ++ navit/navit/log.c | 13 ++++++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/navit/navit/file.h b/navit/navit/file.h index 475777b..25280de 100644 --- a/navit/navit/file.h +++ b/navit/navit/file.h @@ -21,6 +21,8 @@ struct file; struct file_wordexp; struct param_list; struct file *file_create(char *name); +int file_is_dir(char *name); +int file_mkdir(char *name, int pflag); int file_mmap(struct file *file); unsigned char *file_data_read(struct file *file, long long offset, int size); unsigned char *file_data_read_compressed(struct file *file, long long offset, int size, int size_uncomp); diff --git a/navit/navit/log.c b/navit/navit/log.c index f1a75c7..0101d11 100644 --- a/navit/navit/log.c +++ b/navit/navit/log.c @@ -181,12 +181,23 @@ log_new(struct attr **attrs) { struct log *ret=g_new0(struct log, 1); struct attr *data,*overwrite,*lazy,*mkdir,*flush_size,*flush_time; + struct file_wordexp *wexp; + char *filename, **wexp_data; dbg(1,"enter\n"); data=attr_search(attrs, NULL, attr_data); if (! data) return NULL; - ret->filename=g_strdup(data->u.str); + filename=data->u.str; + wexp=file_wordexp_new(filename); + if (wexp && file_wordexp_get_count(wexp) > 0) { + wexp_data=file_wordexp_get_array(wexp); + filename=wexp_data[0]; + } + if (filename) + ret->filename=g_strdup(filename); + if (wexp) + file_wordexp_destroy(wexp); overwrite=attr_search(attrs, NULL, attr_overwrite); if (overwrite) ret->overwrite=overwrite->u.num; -- 2.7.4