From: Richard Kettlewell Date: Sun, 9 Dec 2007 23:00:41 +0000 (+0000) Subject: pop up login box on startup if no password yet X-Git-Tag: 1.5.99+dev10~1 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/disorder/commitdiff_plain/bf5fdf14a659846700e62c5dcf2c8fceb56b2a8c pop up login box on startup if no password yet --- diff --git a/disobedience/disobedience.c b/disobedience/disobedience.c index d6b346d..5efcc00 100644 --- a/disobedience/disobedience.c +++ b/disobedience/disobedience.c @@ -492,6 +492,9 @@ int main(int argc, char **argv) { /* See if RTP play supported */ check_rtp_address(); suppress_actions = 0; + /* If no password is set yet pop up a login box */ + if(!config->password) + login_box(); D(("enter main loop")); MTAG("misc"); g_main_loop_run(mainloop); diff --git a/lib/eclient.c b/lib/eclient.c index d93412a..2bf86e9 100644 --- a/lib/eclient.c +++ b/lib/eclient.c @@ -236,10 +236,6 @@ disorder_eclient *disorder_eclient_new(const disorder_eclient_callbacks *cb, vector_init(&c->vec); dynstr_init(&c->input); dynstr_init(&c->output); - if(!config->password) { - error(0, "no password set"); - return 0; - } return c; } @@ -340,6 +336,11 @@ void disorder_eclient_polled(disorder_eclient *c, unsigned mode) { if(c->state == state_disconnected) { D(("state_disconnected")); + /* If there is no password yet then we cannot connect */ + if(!config->password) { + comms_error(c, "no password is configured"); + return; + } with_sockaddr(c, start_connect); /* might now be state_disconnected (on error), state_connecting (slow * connect) or state_connected (fast connect). If state_disconnected then