~lightdm-team/lightdm/1.4

« back to all changes in this revision

Viewing changes to tests/src/test-gobject-greeter.c

  • Committer: Robert Ancell
  • Date: 2013-03-11 21:56:51 UTC
  • Revision ID: robert.ancell@canonical.com-20130311215651-xog3k5vicf3agy33
Ensure test programs quit when the status socket closes

Show diffs side-by-side

added added

removed removed

Lines of Context:
8
8
 
9
9
#include "status.h"
10
10
 
 
11
static GMainLoop *loop;
11
12
static LightDMGreeter *greeter;
12
13
static xcb_connection_t *connection = NULL;
13
14
static GKeyFile *config;
55
56
request_cb (const gchar *request)
56
57
{
57
58
    gchar *r;
 
59
 
 
60
    if (!request)
 
61
    {
 
62
        g_main_loop_quit (loop);
 
63
        return;
 
64
    }
58
65
  
59
66
    r = g_strdup_printf ("GREETER %s AUTHENTICATE", getenv ("DISPLAY"));
60
67
    if (strcmp (request, r) == 0)
187
194
int
188
195
main (int argc, char **argv)
189
196
{
190
 
    GMainLoop *main_loop;
191
 
 
192
197
    signal (SIGINT, signal_cb);
193
198
    signal (SIGTERM, signal_cb);
194
199
 
196
201
    g_type_init ();
197
202
#endif
198
203
 
199
 
    main_loop = g_main_loop_new (NULL, FALSE);
 
204
    loop = g_main_loop_new (NULL, FALSE);
200
205
 
201
206
    status_connect (request_cb);
202
207
 
242
247
    if (lightdm_greeter_get_lock_hint (greeter))
243
248
        status_notify ("GREETER %s LOCK-HINT", getenv ("DISPLAY"));
244
249
 
245
 
    g_main_loop_run (main_loop);
 
250
    g_main_loop_run (loop);
246
251
 
247
252
    return EXIT_SUCCESS;
248
253
}