log: fix double free() bug during shutdown

Don't free an internal configuration value in log_init().  Call
config_get_path() instead of manually calling parsePath().
This commit is contained in:
Max Kellermann 2009-07-05 07:14:24 +02:00
parent 15d4c841ce
commit badb827712
2 changed files with 3 additions and 6 deletions

1
NEWS
View File

@ -2,6 +2,7 @@ ver 0.15.1 (2009/??/??)
* commands:
- don't resume playback when stopping during pause
* database: fixed NULL pointer dereference after charset change
* log: fix double free() bug during shutdown
ver 0.15 (2009/06/23)

View File

@ -259,12 +259,8 @@ void log_init(bool verbose, bool use_stdout)
log_init_syslog();
#endif
} else {
char *path = parsePath(param->value);
g_free(param->value);
if (path == NULL)
g_error("error parsing \"%s\" at line %i\n",
CONF_LOG_FILE, param->line);
const char *path = config_get_path(CONF_LOG_FILE);
assert(path != NULL);
log_init_file(path, param->line);
}