aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/conf.c1
-rw-r--r--src/main.c25
-rw-r--r--src/options.h2
3 files changed, 15 insertions, 13 deletions
diff --git a/src/conf.c b/src/conf.c
index b49eeb244..970bc0889 100644
--- a/src/conf.c
+++ b/src/conf.c
@@ -18,6 +18,7 @@
*
*/
+#define NO_GLOBAL_OPTIONS
#include "conf.h"
#include "config.h"
#include "ncmpc.h"
diff --git a/src/main.c b/src/main.c
index 97bfdd3f9..7350a50f6 100644
--- a/src/main.c
+++ b/src/main.c
@@ -173,7 +173,6 @@ D(const char *format, ...)
int
main(int argc, const char *argv[])
{
- options_t *options;
struct sigaction act;
const char *charset = NULL;
gboolean key_error;
@@ -199,13 +198,13 @@ main(int argc, const char *argv[])
#endif
/* initialize options */
- options = options_init();
+ options_init();
/* parse command line options - 1 pass get configuration files */
options_parse(argc, argv);
/* read configuration */
- read_configuration(options);
+ read_configuration(&options);
/* check key bindings */
key_error = check_key_bindings(NULL, NULL, 0);
@@ -260,10 +259,10 @@ main(int argc, const char *argv[])
mpd = mpdclient_new();
if (mpdclient_connect(mpd,
- options->host,
- options->port,
+ options.host,
+ options.port,
10.0,
- options->password))
+ options.password))
exit(EXIT_FAILURE);
/* if no password is used, but the mpd wants one, the connection
@@ -300,7 +299,7 @@ main(int argc, const char *argv[])
timer = g_timer_new();
connected = TRUE;
- while (connected || options->reconnect) {
+ while (connected || options.reconnect) {
static gdouble t = G_MAXDOUBLE;
if( key_error ) {
@@ -328,25 +327,25 @@ main(int argc, const char *argv[])
}
else
screen_idle(mpd);
- } else if (options->reconnect) {
+ } else if( options.reconnect ) {
screen_status_printf(_("Connecting to %s... [Press %s to abort]"),
- options->host, get_key_names(CMD_QUIT,0) );
+ options.host, get_key_names(CMD_QUIT,0) );
if( get_keyboard_command_with_timeout(MPD_RECONNECT_TIME)==CMD_QUIT)
exit(EXIT_SUCCESS);
if (mpdclient_connect(mpd,
- options->host, options->port,
+ options.host, options.port,
1.5,
- options->password) == 0) {
- screen_status_printf(_("Connected to %s!"), options->host);
+ options.password) == 0) {
+ screen_status_printf(_("Connected to %s!"), options.host);
connected = TRUE;
}
doupdate();
}
- if (options->enable_xterm_title)
+ if (options.enable_xterm_title)
update_xterm_title();
t = g_timer_elapsed(timer, NULL);
diff --git a/src/options.h b/src/options.h
index 380b43eca..d0a068f84 100644
--- a/src/options.h
+++ b/src/options.h
@@ -39,7 +39,9 @@ typedef struct {
gboolean scroll;
} options_t;
+#ifndef NO_GLOBAL_OPTIONS
extern options_t options;
+#endif
options_t *options_init(void);
options_t *options_parse(int argc, const char **argv);