# HG changeset patch # User Matti Hamalainen # Date 1103821382 0 # Node ID eebb38debe35819bef2c4445a1fa6ebd3329b595 # Parent 583f5651abffd30eb3d84e714fbafbac19e83f6b Separate xs_init_configuration() from xs_read_configuration() diff -r 583f5651abff -r eebb38debe35 src/xs_config.c --- a/src/xs_config.c Thu Dec 23 17:02:05 2004 +0000 +++ b/src/xs_config.c Thu Dec 23 17:03:02 2004 +0000 @@ -160,18 +160,15 @@ #define XS_SIDPLAY1_FT (0.05f) /* - * Get the configuration (from file or default) + * Reset/initialize the configuration */ -void xs_read_configuration(void) +void xs_init_configuration(void) { - gchar *cfgFilename, *tmpStr; - ConfigFile *cfgFile; - gint i; - + /* Lock configuration mutex */ XSDEBUG("initializing configuration ...\n"); XS_MUTEX_LOCK(xs_cfg); - /* Pre-initialize configuration structure */ + /* Initialize values with sensible defaults */ xs_cfg.audioBitsPerSample = XS_RES_16BIT; xs_cfg.audioChannels = XS_CHN_MONO; xs_cfg.audioFrequency = 44100; @@ -206,7 +203,7 @@ xs_cfg.sid2Builder = XS_BLD_HARDSID; #else #ifdef HAVE_SIDPLAY2 -#error This should not happen! No SIDPlay2 builders! +#error This should not happen! No supported SIDPlay2 builders configured in! #endif #endif #endif @@ -250,8 +247,24 @@ xs_cfg.subAutoMinTime = 15; - /* Try to open the XMMS configuration file */ + /* Unlock the configuration */ + XS_MUTEX_UNLOCK(xs_cfg); +} + + +/* + * Get the configuration (from file or default) + */ +void xs_read_configuration(void) +{ + gchar *cfgFilename, *tmpStr; + ConfigFile *cfgFile; + gint i; + + /* Try to open the XMMS configuration file */ + XS_MUTEX_LOCK(xs_cfg); XSDEBUG("loading from config-file ...\n"); + #ifdef HAVE_NODEFAULTCFG cfgFilename = g_strconcat(g_get_home_dir(), XS_CONFIG_FILE, NULL); cfgFile = xmms_cfg_open_file(cfgFilename); @@ -320,9 +333,7 @@ XSDEBUG("writing configuration ...\n"); XS_MUTEX_LOCK(xs_cfg); - /* - * Try to open the XMMS configuration file - */ + /* Try to open the XMMS configuration file */ #ifdef HAVE_NODEFAULTCFG cfgFilename = g_strconcat(g_get_home_dir(), XS_CONFIG_FILE, NULL); cfgFile = xmms_cfg_open_file(cfgFilename); diff -r 583f5651abff -r eebb38debe35 src/xs_config.h --- a/src/xs_config.h Thu Dec 23 17:02:05 2004 +0000 +++ b/src/xs_config.h Thu Dec 23 17:03:02 2004 +0000 @@ -155,6 +155,7 @@ /* * Functions */ +void xs_init_configuration(void); void xs_configure(void); void xs_read_configuration(void); gint xs_write_configuration(void);