From 9bd800e9794c86d5e15f2ddcaa13e5779100bf9d Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Tue, 16 Mar 2010 07:51:02 +0000 Subject: expand ~ in log file name --- src/util/common_logging.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/util/common_logging.c b/src/util/common_logging.c index 9d7b0de1f..13cb17af7 100644 --- a/src/util/common_logging.c +++ b/src/util/common_logging.c @@ -169,6 +169,7 @@ GNUNET_log_setup (const char *comp, const char *loglevel, const char *logfile) { FILE *altlog; int dirwarn; + char *fn; GNUNET_free_non_null (component); GNUNET_asprintf (&component, @@ -178,17 +179,20 @@ GNUNET_log_setup (const char *comp, const char *loglevel, const char *logfile) min_level = get_type (loglevel); if (logfile == NULL) return GNUNET_OK; - dirwarn = (GNUNET_OK != GNUNET_DISK_directory_create_for_file (logfile)); - altlog = FOPEN (logfile, "a"); + fn = GNUNET_STRINGS_filename_expand (logfile); + dirwarn = (GNUNET_OK != GNUNET_DISK_directory_create_for_file (fn)); + altlog = FOPEN (fn, "a"); if (altlog == NULL) { - GNUNET_log_strerror_file (GNUNET_ERROR_TYPE_ERROR, "fopen", logfile); + GNUNET_log_strerror_file (GNUNET_ERROR_TYPE_ERROR, "fopen", fn); if (dirwarn) GNUNET_log (GNUNET_ERROR_TYPE_WARNING, _("Failed to create or access directory for log file `%s'\n"), - logfile); + fn); + GNUNET_free (fn); return GNUNET_SYSERR; } + GNUNET_free (fn); if (GNUNET_stderr != NULL) fclose (GNUNET_stderr); GNUNET_stderr = altlog; -- cgit v1.2.3