Merge ~3v1n0/ubuntu/+source/gdm3:upstream/3.28.x into ~ubuntu-desktop/ubuntu/+source/gdm3:upstream/3.28.x

Proposed by Marco Trevisan (Treviño)
Status: Needs review
Proposed branch: ~3v1n0/ubuntu/+source/gdm3:upstream/3.28.x
Merge into: ~ubuntu-desktop/ubuntu/+source/gdm3:upstream/3.28.x
Diff against target: 2465 lines (+363/-1273)
3 files modified
libgdm/gdm-client.c (+177/-289)
po/af.po (+98/-912)
po/zh_CN.po (+88/-72)
Reviewer Review Type Date Requested Status
Iain Lane Pending
Review via email: mp+347419@code.launchpad.net

Commit message

Pull latest commits from gnome-3-28 upstream branch

To post a comment you must log in.

Unmerged commits

8446bfc... by Marco Trevisan (Treviño)

Pull recent commit from the upstream 3.28.x branch

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/libgdm/gdm-client.c b/libgdm/gdm-client.c
2index 294f4f4..28cb725 100644
3--- a/libgdm/gdm-client.c
4+++ b/libgdm/gdm-client.c
5@@ -40,18 +40,13 @@
6
7 struct GdmClientPrivate
8 {
9- GdmManager *manager;
10-
11 GdmUserVerifier *user_verifier;
12 GHashTable *user_verifier_extensions;
13
14 GdmGreeter *greeter;
15 GdmRemoteGreeter *remote_greeter;
16 GdmChooser *chooser;
17- GDBusConnection *connection;
18- char *address;
19
20- GList *pending_opens;
21 char **enabled_extensions;
22 };
23
24@@ -74,35 +69,47 @@ gdm_client_error_quark (void)
25 return error_quark;
26 }
27
28+static GDBusConnection *
29+gdm_client_get_open_connection (GdmClient *client)
30+{
31+ GDBusProxy *proxy = NULL;
32+
33+ if (client->priv->user_verifier != NULL) {
34+ proxy = G_DBUS_PROXY (client->priv->user_verifier);
35+ } else if (client->priv->greeter != NULL) {
36+ proxy = G_DBUS_PROXY (client->priv->greeter);
37+ } else if (client->priv->remote_greeter != NULL) {
38+ proxy = G_DBUS_PROXY (client->priv->remote_greeter);
39+ } else if (client->priv->chooser != NULL) {
40+ proxy = G_DBUS_PROXY (client->priv->chooser);
41+ }
42+
43+ if (proxy != NULL) {
44+ return g_dbus_proxy_get_connection (proxy);
45+ }
46+
47+ return NULL;
48+}
49+
50 static void
51-on_got_manager (GdmManager *manager,
52+on_got_manager (GObject *object,
53 GAsyncResult *result,
54 GTask *task)
55 {
56 GdmClient *client;
57- GdmManager *new_manager;
58- GError *error;
59+ GError *error;
60+ g_autoptr(GdmManager) manager = NULL;
61
62 client = GDM_CLIENT (g_async_result_get_source_object (G_ASYNC_RESULT (task)));
63
64 error = NULL;
65- new_manager = gdm_manager_proxy_new_finish (result, &error);
66-
67- if (client->priv->manager == NULL) {
68- client->priv->manager = new_manager;
69-
70- } else {
71- g_object_ref (client->priv->manager);
72- g_object_unref (new_manager);
73-
74- g_clear_error (&error);
75- }
76+ manager = gdm_manager_proxy_new_finish (result, &error);
77
78 if (error != NULL) {
79 g_task_return_error (task, error);
80 } else {
81 g_task_return_pointer (task,
82- g_object_ref (client->priv->manager),
83+ g_object_ref (manager),
84 (GDestroyNotify) g_object_unref);
85 }
86
87@@ -123,14 +130,6 @@ get_manager (GdmClient *client,
88 callback,
89 user_data);
90
91- if (client->priv->manager != NULL) {
92- g_task_return_pointer (task,
93- g_object_ref (client->priv->manager),
94- (GDestroyNotify) g_object_unref);
95- g_object_unref (task);
96- return;
97- }
98-
99 gdm_manager_proxy_new_for_bus (G_BUS_TYPE_SYSTEM,
100 G_DBUS_PROXY_FLAGS_NONE,
101 "org.gnome.DisplayManager",
102@@ -391,11 +390,13 @@ on_got_manager_for_reauthentication (GdmClient *client,
103 GTask *task)
104 {
105 GCancellable *cancellable;
106+ GdmManager *manager;
107 char *username;
108 GError *error;
109
110 error = NULL;
111- if (!g_task_propagate_boolean (G_TASK (result), &error)) {
112+ manager = g_task_propagate_pointer (G_TASK (result), &error);
113+ if (manager == NULL) {
114 g_task_return_error (task, error);
115 g_object_unref (task);
116 return;
117@@ -403,73 +404,62 @@ on_got_manager_for_reauthentication (GdmClient *client,
118
119 cancellable = g_task_get_cancellable (task);
120 username = g_object_get_data (G_OBJECT (task), "username");
121- gdm_manager_call_open_reauthentication_channel (client->priv->manager,
122+ gdm_manager_call_open_reauthentication_channel (manager,
123 username,
124 cancellable,
125 (GAsyncReadyCallback)
126 on_reauthentication_channel_opened,
127 task);
128-
129+ g_object_unref (manager);
130 }
131
132-static gboolean
133-gdm_client_open_connection_sync (GdmClient *client,
134- GCancellable *cancellable,
135- GError **error)
136+static GDBusConnection *
137+gdm_client_get_connection_sync (GdmClient *client,
138+ GCancellable *cancellable,
139+ GError **error)
140 {
141+ g_autoptr(GdmManager) manager = NULL;
142+ g_autofree char *address = NULL;
143+ GDBusConnection *connection;
144 gboolean ret;
145
146- g_return_val_if_fail (GDM_IS_CLIENT (client), FALSE);
147+ g_return_val_if_fail (GDM_IS_CLIENT (client), NULL);
148
149- if (client->priv->manager == NULL) {
150- client->priv->manager = gdm_manager_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
151- G_DBUS_PROXY_FLAGS_NONE,
152- "org.gnome.DisplayManager",
153- "/org/gnome/DisplayManager/Manager",
154- cancellable,
155- error);
156+ connection = gdm_client_get_open_connection (client);
157
158- if (client->priv->manager == NULL) {
159- goto out;
160- }
161- } else {
162- client->priv->manager = g_object_ref (client->priv->manager);
163+ if (connection != NULL) {
164+ return g_object_ref (connection);
165 }
166
167- if (client->priv->connection == NULL) {
168- ret = gdm_manager_call_open_session_sync (client->priv->manager,
169- &client->priv->address,
170- cancellable,
171- error);
172+ manager = gdm_manager_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
173+ G_DBUS_PROXY_FLAGS_NONE,
174+ "org.gnome.DisplayManager",
175+ "/org/gnome/DisplayManager/Manager",
176+ cancellable,
177+ error);
178
179- if (!ret) {
180- g_clear_object (&client->priv->manager);
181- goto out;
182- }
183+ if (manager == NULL) {
184+ return NULL;
185+ }
186
187- g_debug ("GdmClient: connecting to address: %s", client->priv->address);
188+ ret = gdm_manager_call_open_session_sync (manager,
189+ &address,
190+ cancellable,
191+ error);
192
193- client->priv->connection = g_dbus_connection_new_for_address_sync (client->priv->address,
194- G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_CLIENT,
195- NULL,
196- cancellable,
197- error);
198+ if (!ret) {
199+ return NULL;
200+ }
201
202- if (client->priv->connection == NULL) {
203- g_clear_object (&client->priv->manager);
204- g_clear_pointer (&client->priv->address, g_free);
205- goto out;
206- }
207+ g_debug ("GdmClient: connecting to address: %s", address);
208
209- g_object_add_weak_pointer (G_OBJECT (client->priv->connection),
210- (gpointer *)
211- &client->priv->connection);
212- } else {
213- client->priv->connection = g_object_ref (client->priv->connection);
214- }
215+ connection = g_dbus_connection_new_for_address_sync (address,
216+ G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_CLIENT,
217+ NULL,
218+ cancellable,
219+ error);
220
221- out:
222- return client->priv->connection != NULL;
223+ return connection;
224 }
225
226 static void
227@@ -501,6 +491,7 @@ on_session_opened (GdmManager *manager,
228 GTask *task)
229 {
230 GdmClient *client;
231+ g_autofree char *address = NULL;
232 GCancellable *cancellable;
233 GError *error;
234
235@@ -508,7 +499,7 @@ on_session_opened (GdmManager *manager,
236
237 error = NULL;
238 if (!gdm_manager_call_open_session_finish (manager,
239- &client->priv->address,
240+ &address,
241 result,
242 &error)) {
243 g_task_return_error (task, error);
244@@ -518,7 +509,7 @@ on_session_opened (GdmManager *manager,
245 }
246
247 cancellable = g_task_get_cancellable (task);
248- g_dbus_connection_new_for_address (client->priv->address,
249+ g_dbus_connection_new_for_address (address,
250 G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_CLIENT,
251 NULL,
252 cancellable,
253@@ -534,76 +525,52 @@ on_got_manager_for_opening_connection (GdmClient *client,
254 GTask *task)
255 {
256 GCancellable *cancellable;
257+ GdmManager *manager;
258 GError *error;
259
260 error = NULL;
261- if (!g_task_propagate_boolean (G_TASK (result), &error)) {
262+ manager = g_task_propagate_pointer (G_TASK (result), &error);
263+ if (manager == NULL) {
264 g_task_return_error (task, error);
265 g_object_unref (task);
266 return;
267 }
268
269 cancellable = g_task_get_cancellable (task);
270- gdm_manager_call_open_session (client->priv->manager,
271+ gdm_manager_call_open_session (manager,
272 cancellable,
273 (GAsyncReadyCallback)
274 on_session_opened,
275 task);
276-}
277
278-static void
279-finish_pending_opens (GdmClient *client,
280- GError *error)
281-{
282- GList *node;
283-
284- for (node = client->priv->pending_opens;
285- node != NULL;
286- node = node->next) {
287-
288- GTask *task = node->data;
289-
290- g_task_return_error (task, error);
291- g_object_unref (task);
292- }
293- g_clear_pointer (&client->priv->pending_opens,
294- (GDestroyNotify) g_list_free);
295+ g_object_unref (manager);
296 }
297
298-static gboolean
299-gdm_client_open_connection_finish (GdmClient *client,
300- GAsyncResult *result,
301- GError **error)
302+static GDBusConnection *
303+gdm_client_get_connection_finish (GdmClient *client,
304+ GAsyncResult *result,
305+ GError **error)
306 {
307- g_autoptr(GDBusConnection) connection = NULL;
308+ GDBusConnection *connection;
309
310- g_return_val_if_fail (GDM_IS_CLIENT (client), FALSE);
311+ g_return_val_if_fail (GDM_IS_CLIENT (client), NULL);
312
313 connection = g_task_propagate_pointer (G_TASK (result), error);
314 if (connection == NULL) {
315- finish_pending_opens (client, *error);
316- return FALSE;
317- }
318-
319- if (client->priv->connection == NULL) {
320- client->priv->connection = g_steal_pointer (&connection);
321- g_object_add_weak_pointer (G_OBJECT (client->priv->connection),
322- (gpointer *) &client->priv->connection);
323- } else if (client->priv->connection == connection) {
324- connection = NULL;
325+ return NULL;
326 }
327
328- finish_pending_opens (client, NULL);
329- return TRUE;
330+ return connection;
331 }
332
333 static void
334-gdm_client_open_connection (GdmClient *client,
335+gdm_client_get_connection (GdmClient *client,
336 GCancellable *cancellable,
337 GAsyncReadyCallback callback,
338 gpointer user_data)
339 {
340 GTask *task;
341+ GDBusConnection *connection;
342
343 g_return_if_fail (GDM_IS_CLIENT (client));
344
345@@ -612,25 +579,20 @@ gdm_client_open_connection (GdmClient *client,
346 callback,
347 user_data);
348
349- if (client->priv->connection != NULL) {
350+ connection = gdm_client_get_open_connection (client);
351+ if (connection != NULL) {
352 g_task_return_pointer (task,
353- g_object_ref (client->priv->connection),
354+ g_object_ref (connection),
355 (GDestroyNotify) g_object_unref);
356 g_object_unref (task);
357 return;
358 }
359
360- if (client->priv->pending_opens == NULL) {
361- get_manager (client,
362- cancellable,
363- (GAsyncReadyCallback)
364- on_got_manager_for_opening_connection,
365- task);
366- } else {
367- client->priv->pending_opens = g_list_prepend (client->priv->pending_opens,
368- task);
369- }
370-
371+ get_manager (client,
372+ cancellable,
373+ (GAsyncReadyCallback)
374+ on_got_manager_for_opening_connection,
375+ task);
376 }
377
378 /**
379@@ -653,39 +615,36 @@ gdm_client_open_reauthentication_channel_sync (GdmClient *client,
380 GCancellable *cancellable,
381 GError **error)
382 {
383- GDBusConnection *connection;
384+ g_autoptr(GDBusConnection) connection = NULL;
385+ g_autoptr(GdmManager) manager = NULL;
386+ g_autofree char *address = NULL;
387 GdmUserVerifier *user_verifier = NULL;
388 gboolean ret;
389- char *address;
390
391- g_return_val_if_fail (GDM_IS_CLIENT (client), FALSE);
392+ g_return_val_if_fail (GDM_IS_CLIENT (client), NULL);
393
394- if (client->priv->manager == NULL) {
395- client->priv->manager = gdm_manager_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
396- G_DBUS_PROXY_FLAGS_NONE,
397- "org.gnome.DisplayManager",
398- "/org/gnome/DisplayManager/Manager",
399- cancellable,
400- error);
401+ manager = gdm_manager_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
402+ G_DBUS_PROXY_FLAGS_NONE,
403+ "org.gnome.DisplayManager",
404+ "/org/gnome/DisplayManager/Manager",
405+ cancellable,
406+ error);
407
408- if (client->priv->manager == NULL) {
409- goto out;
410- }
411- } else {
412- client->priv->manager = g_object_ref (client->priv->manager);
413+ if (manager == NULL) {
414+ return NULL;
415 }
416
417- ret = gdm_manager_call_open_reauthentication_channel_sync (client->priv->manager,
418+ ret = gdm_manager_call_open_reauthentication_channel_sync (manager,
419 username,
420 &address,
421 cancellable,
422 error);
423
424 if (!ret) {
425- goto out;
426+ return NULL;
427 }
428
429- g_debug ("GdmClient: connecting to address: %s", client->priv->address);
430+ g_debug ("GdmClient: connecting to address: %s", address);
431
432 connection = g_dbus_connection_new_for_address_sync (address,
433 G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_CLIENT,
434@@ -694,10 +653,8 @@ gdm_client_open_reauthentication_channel_sync (GdmClient *client,
435 error);
436
437 if (connection == NULL) {
438- g_free (address);
439- goto out;
440+ return NULL;
441 }
442- g_free (address);
443
444 user_verifier = gdm_user_verifier_proxy_new_sync (connection,
445 G_DBUS_PROXY_FLAGS_NONE,
446@@ -706,19 +663,6 @@ gdm_client_open_reauthentication_channel_sync (GdmClient *client,
447 cancellable,
448 error);
449
450- if (user_verifier != NULL) {
451- g_object_weak_ref (G_OBJECT (user_verifier),
452- (GWeakNotify)
453- g_object_unref,
454- connection);
455-
456- g_object_weak_ref (G_OBJECT (user_verifier),
457- (GWeakNotify)
458- g_clear_object,
459- &client->priv->manager);
460- }
461-
462- out:
463 return user_verifier;
464 }
465
466@@ -778,7 +722,7 @@ gdm_client_open_reauthentication_channel_finish (GdmClient *client,
467 GAsyncResult *result,
468 GError **error)
469 {
470- g_return_val_if_fail (GDM_IS_CLIENT (client), FALSE);
471+ g_return_val_if_fail (GDM_IS_CLIENT (client), NULL);
472
473 return g_task_propagate_pointer (G_TASK (result), error);
474 }
475@@ -799,15 +743,19 @@ gdm_client_get_user_verifier_sync (GdmClient *client,
476 GCancellable *cancellable,
477 GError **error)
478 {
479+ g_autoptr(GDBusConnection) connection = NULL;
480+
481 if (client->priv->user_verifier != NULL) {
482 return g_object_ref (client->priv->user_verifier);
483 }
484
485- if (!gdm_client_open_connection_sync (client, cancellable, error)) {
486+ connection = gdm_client_get_connection_sync (client, cancellable, error);
487+
488+ if (connection == NULL) {
489 return NULL;
490 }
491
492- client->priv->user_verifier = gdm_user_verifier_proxy_new_sync (client->priv->connection,
493+ client->priv->user_verifier = gdm_user_verifier_proxy_new_sync (connection,
494 G_DBUS_PROXY_FLAGS_NONE,
495 NULL,
496 SESSION_DBUS_PATH,
497@@ -818,15 +766,6 @@ gdm_client_get_user_verifier_sync (GdmClient *client,
498 g_object_add_weak_pointer (G_OBJECT (client->priv->user_verifier),
499 (gpointer *)
500 &client->priv->user_verifier);
501- g_object_weak_ref (G_OBJECT (client->priv->user_verifier),
502- (GWeakNotify)
503- g_clear_object,
504- &client->priv->manager);
505- g_object_weak_ref (G_OBJECT (client->priv->user_verifier),
506- (GWeakNotify)
507- g_object_unref,
508- client->priv->connection);
509-
510 if (client->priv->enabled_extensions != NULL) {
511 gboolean res;
512
513@@ -847,7 +786,7 @@ gdm_client_get_user_verifier_sync (GdmClient *client,
514 if (strcmp (client->priv->enabled_extensions[i],
515 gdm_user_verifier_choice_list_interface_info ()->name) == 0) {
516 GdmUserVerifierChoiceList *choice_list_interface;
517- choice_list_interface = gdm_user_verifier_choice_list_proxy_new_sync (client->priv->connection,
518+ choice_list_interface = gdm_user_verifier_choice_list_proxy_new_sync (connection,
519 G_DBUS_PROXY_FLAGS_NONE,
520 NULL,
521 SESSION_DBUS_PATH,
522@@ -865,22 +804,25 @@ gdm_client_get_user_verifier_sync (GdmClient *client,
523 }
524
525 static void
526-on_connection_opened_for_user_verifier (GdmClient *client,
527- GAsyncResult *result,
528- GTask *task)
529+on_connection_for_user_verifier (GdmClient *client,
530+ GAsyncResult *result,
531+ GTask *task)
532 {
533+ g_autoptr(GDBusConnection) connection = NULL;
534 GCancellable *cancellable;
535 GError *error;
536
537 error = NULL;
538- if (!gdm_client_open_connection_finish (client, result, &error)) {
539+ connection = gdm_client_get_connection_finish (client, result, &error);
540+
541+ if (connection == NULL) {
542 g_task_return_error (task, error);
543 g_object_unref (task);
544 return;
545 }
546
547 cancellable = g_task_get_cancellable (task);
548- gdm_user_verifier_proxy_new (client->priv->connection,
549+ gdm_user_verifier_proxy_new (connection,
550 G_DBUS_PROXY_FLAGS_NONE,
551 NULL,
552 SESSION_DBUS_PATH,
553@@ -923,10 +865,10 @@ gdm_client_get_user_verifier (GdmClient *client,
554 return;
555 }
556
557- gdm_client_open_connection (client,
558+ gdm_client_get_connection (client,
559 cancellable,
560 (GAsyncReadyCallback)
561- on_connection_opened_for_user_verifier,
562+ on_connection_for_user_verifier,
563 task);
564 }
565
566@@ -948,7 +890,7 @@ gdm_client_get_user_verifier_finish (GdmClient *client,
567 {
568 GdmUserVerifier *user_verifier;
569
570- g_return_val_if_fail (GDM_IS_CLIENT (client), FALSE);
571+ g_return_val_if_fail (GDM_IS_CLIENT (client), NULL);
572
573 if (client->priv->user_verifier != NULL)
574 return g_object_ref (client->priv->user_verifier);
575@@ -963,16 +905,6 @@ gdm_client_get_user_verifier_finish (GdmClient *client,
576 (gpointer *)
577 &client->priv->user_verifier);
578
579- g_object_weak_ref (G_OBJECT (client->priv->user_verifier),
580- (GWeakNotify)
581- g_object_unref,
582- client->priv->connection);
583-
584- g_object_weak_ref (G_OBJECT (client->priv->user_verifier),
585- (GWeakNotify)
586- g_clear_object,
587- &client->priv->manager);
588-
589 return user_verifier;
590 }
591
592@@ -1040,22 +972,25 @@ on_greeter_proxy_created (GObject *source,
593 }
594
595 static void
596-on_connection_opened_for_greeter (GdmClient *client,
597- GAsyncResult *result,
598- GTask *task)
599+on_connection_for_greeter (GdmClient *client,
600+ GAsyncResult *result,
601+ GTask *task)
602 {
603+ g_autoptr(GDBusConnection) connection = NULL;
604 GCancellable *cancellable;
605 GError *error;
606
607 error = NULL;
608- if (!gdm_client_open_connection_finish (client, result, &error)) {
609+ connection = gdm_client_get_connection_finish (client, result, &error);
610+
611+ if (connection == NULL) {
612 g_task_return_error (task, error);
613 g_object_unref (task);
614 return;
615 }
616
617 cancellable = g_task_get_cancellable (task);
618- gdm_greeter_proxy_new (client->priv->connection,
619+ gdm_greeter_proxy_new (connection,
620 G_DBUS_PROXY_FLAGS_NONE,
621 NULL,
622 SESSION_DBUS_PATH,
623@@ -1098,10 +1033,10 @@ gdm_client_get_greeter (GdmClient *client,
624 return;
625 }
626
627- gdm_client_open_connection (client,
628+ gdm_client_get_connection (client,
629 cancellable,
630 (GAsyncReadyCallback)
631- on_connection_opened_for_greeter,
632+ on_connection_for_greeter,
633 task);
634 }
635
636@@ -1123,7 +1058,7 @@ gdm_client_get_greeter_finish (GdmClient *client,
637 {
638 GdmGreeter *greeter;
639
640- g_return_val_if_fail (GDM_IS_CLIENT (client), FALSE);
641+ g_return_val_if_fail (GDM_IS_CLIENT (client), NULL);
642
643 if (client->priv->greeter != NULL)
644 return g_object_ref (client->priv->greeter);
645@@ -1138,16 +1073,6 @@ gdm_client_get_greeter_finish (GdmClient *client,
646 (gpointer *)
647 &client->priv->greeter);
648
649- g_object_weak_ref (G_OBJECT (client->priv->greeter),
650- (GWeakNotify)
651- g_object_unref,
652- client->priv->connection);
653-
654- g_object_weak_ref (G_OBJECT (client->priv->greeter),
655- (GWeakNotify)
656- g_clear_object,
657- &client->priv->manager);
658-
659 return greeter;
660 }
661
662@@ -1169,15 +1094,19 @@ gdm_client_get_greeter_sync (GdmClient *client,
663 GCancellable *cancellable,
664 GError **error)
665 {
666+ g_autoptr(GDBusConnection) connection = NULL;
667+
668 if (client->priv->greeter != NULL) {
669 return g_object_ref (client->priv->greeter);
670 }
671
672- if (!gdm_client_open_connection_sync (client, cancellable, error)) {
673+ connection = gdm_client_get_connection_sync (client, cancellable, error);
674+
675+ if (connection == NULL) {
676 return NULL;
677 }
678
679- client->priv->greeter = gdm_greeter_proxy_new_sync (client->priv->connection,
680+ client->priv->greeter = gdm_greeter_proxy_new_sync (connection,
681 G_DBUS_PROXY_FLAGS_NONE,
682 NULL,
683 SESSION_DBUS_PATH,
684@@ -1188,14 +1117,6 @@ gdm_client_get_greeter_sync (GdmClient *client,
685 g_object_add_weak_pointer (G_OBJECT (client->priv->greeter),
686 (gpointer *)
687 &client->priv->greeter);
688- g_object_weak_ref (G_OBJECT (client->priv->greeter),
689- (GWeakNotify)
690- g_clear_object,
691- &client->priv->manager);
692- g_object_weak_ref (G_OBJECT (client->priv->greeter),
693- (GWeakNotify)
694- g_object_unref,
695- client->priv->connection);
696
697 query_for_timed_login_requested_signal (client->priv->greeter);
698 }
699@@ -1225,22 +1146,25 @@ on_remote_greeter_proxy_created (GObject *object,
700 }
701
702 static void
703-on_connection_opened_for_remote_greeter (GdmClient *client,
704- GAsyncResult *result,
705- GTask *task)
706+on_connection_for_remote_greeter (GdmClient *client,
707+ GAsyncResult *result,
708+ GTask *task)
709 {
710+ g_autoptr(GDBusConnection) connection = NULL;
711 GCancellable *cancellable;
712 GError *error;
713
714 error = NULL;
715- if (!gdm_client_open_connection_finish (client, result, &error)) {
716+ connection = gdm_client_get_connection_finish (client, result, &error);
717+
718+ if (connection == NULL) {
719 g_task_return_error (task, error);
720 g_object_unref (task);
721 return;
722 }
723
724 cancellable = g_task_get_cancellable (task);
725- gdm_remote_greeter_proxy_new (client->priv->connection,
726+ gdm_remote_greeter_proxy_new (connection,
727 G_DBUS_PROXY_FLAGS_NONE,
728 NULL,
729 SESSION_DBUS_PATH,
730@@ -1283,10 +1207,10 @@ gdm_client_get_remote_greeter (GdmClient *client,
731 return;
732 }
733
734- gdm_client_open_connection (client,
735+ gdm_client_get_connection (client,
736 cancellable,
737 (GAsyncReadyCallback)
738- on_connection_opened_for_remote_greeter,
739+ on_connection_for_remote_greeter,
740 task);
741 }
742
743@@ -1308,7 +1232,7 @@ gdm_client_get_remote_greeter_finish (GdmClient *client,
744 {
745 GdmRemoteGreeter *remote_greeter;
746
747- g_return_val_if_fail (GDM_IS_CLIENT (client), FALSE);
748+ g_return_val_if_fail (GDM_IS_CLIENT (client), NULL);
749
750 if (client->priv->remote_greeter != NULL)
751 return g_object_ref (client->priv->remote_greeter);
752@@ -1323,16 +1247,6 @@ gdm_client_get_remote_greeter_finish (GdmClient *client,
753 (gpointer *)
754 &client->priv->remote_greeter);
755
756- g_object_weak_ref (G_OBJECT (client->priv->remote_greeter),
757- (GWeakNotify)
758- g_object_unref,
759- client->priv->connection);
760-
761- g_object_weak_ref (G_OBJECT (client->priv->remote_greeter),
762- (GWeakNotify)
763- g_clear_object,
764- &client->priv->manager);
765-
766 return remote_greeter;
767 }
768
769@@ -1353,15 +1267,19 @@ gdm_client_get_remote_greeter_sync (GdmClient *client,
770 GCancellable *cancellable,
771 GError **error)
772 {
773+ g_autoptr(GDBusConnection) connection = NULL;
774+
775 if (client->priv->remote_greeter != NULL) {
776 return g_object_ref (client->priv->remote_greeter);
777 }
778
779- if (!gdm_client_open_connection_sync (client, cancellable, error)) {
780+ connection = gdm_client_get_connection_sync (client, cancellable, error);
781+
782+ if (connection == NULL) {
783 return NULL;
784 }
785
786- client->priv->remote_greeter = gdm_remote_greeter_proxy_new_sync (client->priv->connection,
787+ client->priv->remote_greeter = gdm_remote_greeter_proxy_new_sync (connection,
788 G_DBUS_PROXY_FLAGS_NONE,
789 NULL,
790 SESSION_DBUS_PATH,
791@@ -1372,14 +1290,6 @@ gdm_client_get_remote_greeter_sync (GdmClient *client,
792 g_object_add_weak_pointer (G_OBJECT (client->priv->remote_greeter),
793 (gpointer *)
794 &client->priv->remote_greeter);
795- g_object_weak_ref (G_OBJECT (client->priv->remote_greeter),
796- (GWeakNotify)
797- g_clear_object,
798- &client->priv->manager);
799- g_object_weak_ref (G_OBJECT (client->priv->remote_greeter),
800- (GWeakNotify)
801- g_object_unref,
802- client->priv->connection);
803 }
804
805 return client->priv->remote_greeter;
806@@ -1407,22 +1317,25 @@ on_chooser_proxy_created (GObject *source,
807 }
808
809 static void
810-on_connection_opened_for_chooser (GdmClient *client,
811- GAsyncResult *result,
812- GTask *task)
813+on_connection_for_chooser (GdmClient *client,
814+ GAsyncResult *result,
815+ GTask *task)
816 {
817+ g_autoptr(GDBusConnection) connection = NULL;
818 GCancellable *cancellable;
819 GError *error;
820
821 error = NULL;
822- if (!gdm_client_open_connection_finish (client, result, &error)) {
823+ connection = gdm_client_get_connection_finish (client, result, &error);
824+
825+ if (connection == NULL) {
826 g_task_return_error (task, error);
827 g_object_unref (task);
828 return;
829 }
830
831 cancellable = g_task_get_cancellable (task);
832- gdm_chooser_proxy_new (client->priv->connection,
833+ gdm_chooser_proxy_new (connection,
834 G_DBUS_PROXY_FLAGS_NONE,
835 NULL,
836 SESSION_DBUS_PATH,
837@@ -1465,10 +1378,10 @@ gdm_client_get_chooser (GdmClient *client,
838 return;
839 }
840
841- gdm_client_open_connection (client,
842+ gdm_client_get_connection (client,
843 cancellable,
844 (GAsyncReadyCallback)
845- on_connection_opened_for_chooser,
846+ on_connection_for_chooser,
847 task);
848 }
849
850@@ -1490,7 +1403,7 @@ gdm_client_get_chooser_finish (GdmClient *client,
851 {
852 GdmChooser *chooser;
853
854- g_return_val_if_fail (GDM_IS_CLIENT (client), FALSE);
855+ g_return_val_if_fail (GDM_IS_CLIENT (client), NULL);
856
857 if (client->priv->chooser != NULL)
858 return g_object_ref (client->priv->chooser);
859@@ -1505,16 +1418,6 @@ gdm_client_get_chooser_finish (GdmClient *client,
860 (gpointer *)
861 &client->priv->chooser);
862
863- g_object_weak_ref (G_OBJECT (client->priv->chooser),
864- (GWeakNotify)
865- g_object_unref,
866- client->priv->connection);
867-
868- g_object_weak_ref (G_OBJECT (client->priv->chooser),
869- (GWeakNotify)
870- g_clear_object,
871- &client->priv->manager);
872-
873 return chooser;
874 }
875
876@@ -1535,16 +1438,19 @@ gdm_client_get_chooser_sync (GdmClient *client,
877 GCancellable *cancellable,
878 GError **error)
879 {
880+ g_autoptr(GDBusConnection) connection = NULL;
881
882 if (client->priv->chooser != NULL) {
883 return g_object_ref (client->priv->chooser);
884 }
885
886- if (!gdm_client_open_connection_sync (client, cancellable, error)) {
887+ connection = gdm_client_get_connection_sync (client, cancellable, error);
888+
889+ if (connection == NULL) {
890 return NULL;
891 }
892
893- client->priv->chooser = gdm_chooser_proxy_new_sync (client->priv->connection,
894+ client->priv->chooser = gdm_chooser_proxy_new_sync (connection,
895 G_DBUS_PROXY_FLAGS_NONE,
896 NULL,
897 SESSION_DBUS_PATH,
898@@ -1555,14 +1461,6 @@ gdm_client_get_chooser_sync (GdmClient *client,
899 g_object_add_weak_pointer (G_OBJECT (client->priv->chooser),
900 (gpointer *)
901 &client->priv->chooser);
902- g_object_weak_ref (G_OBJECT (client->priv->chooser),
903- (GWeakNotify)
904- g_clear_object,
905- &client->priv->manager);
906- g_object_weak_ref (G_OBJECT (client->priv->chooser),
907- (GWeakNotify)
908- g_object_unref,
909- client->priv->connection);
910 }
911
912 return client->priv->chooser;
913@@ -1622,17 +1520,7 @@ gdm_client_finalize (GObject *object)
914 &client->priv->chooser);
915 }
916
917- if (client->priv->connection != NULL) {
918- g_object_remove_weak_pointer (G_OBJECT (client->priv->connection),
919- (gpointer *)
920- &client->priv->connection);
921- }
922-
923- g_clear_object (&client->priv->manager);
924- g_clear_object (&client->priv->connection);
925-
926 g_strfreev (client->priv->enabled_extensions);
927- g_free (client->priv->address);
928
929 G_OBJECT_CLASS (gdm_client_parent_class)->finalize (object);
930 }
931diff --git a/po/af.po b/po/af.po
932index 910db1c..d9e4dde 100644
933--- a/po/af.po
934+++ b/po/af.po
935@@ -4,22 +4,45 @@
936 # Zuza Software Foundation <info@translate.org.za>, 2004
937 # F Wolff <friedel@translate.org.za>, 2009, 2011, 2013, 2014.
938 # Dawid Loubser <dawid.loubser@ibi.co.za>, 2013.
939+# Pieter Schoeman <pieter@sonbesie.co.za>, 2017.
940+#
941 msgid ""
942 msgstr ""
943 "Project-Id-Version: gdm2 2.6-branch\n"
944-"Report-Msgid-Bugs-To: \n"
945-"POT-Creation-Date: 2015-10-27 15:41-0400\n"
946-"PO-Revision-Date: 2014-09-23 17:45+0200\n"
947-"Last-Translator: F Wolff <friedel@translate.org.za>\n"
948-"Language-Team: translate-discuss-af@lists.sourceforge.net\n"
949+"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
950+"product=gdm&keywords=I18N+L10N&component=general\n"
951+"POT-Creation-Date: 2017-12-18 15:02+0000\n"
952+"PO-Revision-Date: 2018-02-06 17:27+0200\n"
953+"Last-Translator: Pieter Schalk Schoeman <pieter@sonbesie.co.za>\n"
954+"Language-Team: Afrikaans <pieter@sonbesie.co.za>\n"
955 "Language: af\n"
956 "MIME-Version: 1.0\n"
957 "Content-Type: text/plain; charset=UTF-8\n"
958 "Content-Transfer-Encoding: 8bit\n"
959 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
960-"X-Generator: Virtaal 0.9.0-beta1\n"
961+"X-Generator: Poedit 2.0.3\n"
962 "X-Project-Style: gnome\n"
963
964+#: ../chooser/gdm-host-chooser-dialog.c:147
965+msgid "Select System"
966+msgstr "Kies stelsel"
967+
968+#: ../chooser/gdm-host-chooser-widget.c:254
969+msgid "XDMCP: Could not create XDMCP buffer!"
970+msgstr "XDMCP: Kon nie XDMCP-buffer skep nie!"
971+
972+#: ../chooser/gdm-host-chooser-widget.c:260
973+msgid "XDMCP: Could not read XDMCP header!"
974+msgstr "XDMCP: Kon nie XDMCP-kopteks lees nie!"
975+
976+#: ../chooser/gdm-host-chooser-widget.c:266
977+msgid "XDMCP: Incorrect XDMCP version!"
978+msgstr "XMDCP: Verkeerde XDMCP-weergawe!"
979+
980+#: ../chooser/gdm-host-chooser-widget.c:272
981+msgid "XDMCP: Unable to parse address"
982+msgstr "XDMCP: Kan nie adres ontleed nie"
983+
984 #: ../common/gdm-common.c:298
985 #, c-format
986 msgid "/dev/urandom is not a character device"
987@@ -51,7 +74,7 @@ msgstr "Die stelsel kon nie 'n nuwe aanmeldskerm begin nie."
988
989 #: ../daemon/gdm-display-access-file.c:300
990 #, c-format
991-msgid "could not find user \"%s\" on system"
992+msgid "could not find user “%s” on system"
993 msgstr "kon nie die gebruiker \"%s\" op die stelsel kry nie"
994
995 #: ../daemon/gdm-legacy-display.c:235
996@@ -63,69 +86,72 @@ msgid ""
997 msgstr ""
998 "Kon nie die X-bediener (die grafiese omgewing) begin nie a.g.v. 'n interne "
999 "fout. Kontak asb. die stelseladministrateur of gaan die syslog na vir "
1000-"diagnose. Intussen sal hierdie vertoon gedeaktiveer word. Herbegin GDM "
1001+"diagnose. Intussen sal hierdie skerm gedeaktiveer word. Herbegin GDM "
1002 "wanneer die probleem reggestel is."
1003
1004-#: ../daemon/gdm-manager.c:766
1005-#, fuzzy
1006+#: ../daemon/gdm-manager.c:777
1007 msgid "No display available"
1008-msgstr "Geen sessie beskikbaar nie"
1009+msgstr "Geen skerm beskikbaar nie"
1010
1011-#: ../daemon/gdm-manager.c:833 ../daemon/gdm-manager.c:1088
1012+#: ../daemon/gdm-manager.c:846 ../daemon/gdm-manager.c:1122
1013 msgid "No session available"
1014 msgstr "Geen sessie beskikbaar nie"
1015
1016-#: ../daemon/gdm-manager.c:844
1017+#: ../daemon/gdm-manager.c:865
1018+msgid "Chooser session unavailable"
1019+msgstr "Geen sessie beskikbaar nie"
1020+
1021+#: ../daemon/gdm-manager.c:877
1022 msgid "Can only be called before user is logged in"
1023 msgstr "Kan slegs geroep word voor gebruiker aangemeld is"
1024
1025-#: ../daemon/gdm-manager.c:854
1026+#: ../daemon/gdm-manager.c:888
1027 msgid "Caller not GDM"
1028 msgstr "Roeper nie GDM nie"
1029
1030-#: ../daemon/gdm-manager.c:864
1031+#: ../daemon/gdm-manager.c:898
1032 msgid "Unable to open private communication channel"
1033-msgstr ""
1034+msgstr "Kon nie 'n privaat Kommunikasie kanaal oopmaak nie"
1035
1036-#: ../daemon/gdm-server.c:378
1037+#: ../daemon/gdm-server.c:383
1038 #, c-format
1039-msgid "Server was to be spawned by user %s but that user doesn't exist"
1040+msgid "Server was to be spawned by user %s but that user doesn’t exist"
1041 msgstr ""
1042 "Bediener sou deur gebruiker %s geskep word, maar daardie gebruiker bestaan "
1043 "nie"
1044
1045-#: ../daemon/gdm-server.c:389 ../daemon/gdm-server.c:409
1046+#: ../daemon/gdm-server.c:394 ../daemon/gdm-server.c:414
1047 #, c-format
1048-msgid "Couldn't set groupid to %d"
1049+msgid "Couldn’t set groupid to %d"
1050 msgstr "Kon nie groep-id instel na %d nie"
1051
1052-#: ../daemon/gdm-server.c:395
1053+#: ../daemon/gdm-server.c:400
1054 #, c-format
1055 msgid "initgroups () failed for %s"
1056 msgstr "initgroups () het misluk vir %s"
1057
1058-#: ../daemon/gdm-server.c:401
1059+#: ../daemon/gdm-server.c:406
1060 #, c-format
1061-msgid "Couldn't set userid to %d"
1062+msgid "Couldn’t set userid to %d"
1063 msgstr "Kon nie gebruiker-id instel na %d nie"
1064
1065-#: ../daemon/gdm-server.c:479
1066+#: ../daemon/gdm-server.c:484
1067 #, c-format
1068 msgid "%s: Could not open log file for display %s!"
1069 msgstr "%s: Kon nie staaflêer vir vertoon %s open nie!"
1070
1071-#: ../daemon/gdm-server.c:500 ../daemon/gdm-server.c:506
1072-#: ../daemon/gdm-server.c:512
1073+#: ../daemon/gdm-server.c:505 ../daemon/gdm-server.c:511
1074+#: ../daemon/gdm-server.c:517
1075 #, c-format
1076 msgid "%s: Error setting %s to %s"
1077 msgstr "%s: Fout met stel van %s na %s"
1078
1079-#: ../daemon/gdm-server.c:532
1080+#: ../daemon/gdm-server.c:537
1081 #, c-format
1082-msgid "%s: Server priority couldn't be set to %d: %s"
1083+msgid "%s: Server priority couldn’t be set to %d: %s"
1084 msgstr "%s: Bedienerprioriteit kon nie gestel word na %d nie: %s"
1085
1086-#: ../daemon/gdm-server.c:684
1087+#: ../daemon/gdm-server.c:689
1088 #, c-format
1089 msgid "%s: Empty server command for display %s"
1090 msgstr "%s: Leë bedieneropdrag vir vertoon %s"
1091@@ -154,57 +180,50 @@ msgstr "Vertoontoestel"
1092 msgid "The display device"
1093 msgstr "Die vertoontoestel"
1094
1095-#: ../daemon/gdm-session.c:1193
1096+#: ../daemon/gdm-session.c:1261
1097 msgid "Could not create authentication helper process"
1098 msgstr "Kon nie verifiëring-hulpproses skep nie"
1099
1100-#: ../daemon/gdm-session-worker.c:642
1101-msgid "Your account was given a time limit that's now passed."
1102+#: ../daemon/gdm-session-worker.c:766
1103+msgid "Your account was given a time limit that’s now passed."
1104 msgstr "U rekening het 'n tydlimiet wat nou verstryk het."
1105
1106-#: ../daemon/gdm-session-worker.c:649
1107-msgid "Sorry, that didn't work. Please try again."
1108+#: ../daemon/gdm-session-worker.c:773
1109+msgid "Sorry, that didn’t work. Please try again."
1110 msgstr "Jammer, dit het nie gewerk nie. Probeer gerus weer."
1111
1112-#: ../daemon/gdm-session-worker.c:1010
1113+#: ../daemon/gdm-session-worker.c:1170
1114 msgid "Username:"
1115 msgstr "Gebruikernaam:"
1116
1117-#: ../daemon/gdm-session-worker.c:1142
1118-msgid "Your password has expired, please change it now."
1119-msgstr "U wagwoord het verval. Verander dit asb. nou."
1120-
1121-#: ../daemon/gdm-session-worker.c:1505 ../daemon/gdm-session-worker.c:1522
1122+#: ../daemon/gdm-session-worker.c:1672 ../daemon/gdm-session-worker.c:1689
1123 #, c-format
1124 msgid "no user account available"
1125 msgstr "geen gebruikerrekening beskikbaar nie"
1126
1127-#: ../daemon/gdm-session-worker.c:1549
1128+#: ../daemon/gdm-session-worker.c:1716
1129 msgid "Unable to change to user"
1130 msgstr "Kan nie na die gebruiker wissel nie"
1131
1132-#: ../daemon/gdm-wayland-session.c:385
1133-#, fuzzy
1134+#: ../daemon/gdm-wayland-session.c:478
1135 msgid "GNOME Display Manager Wayland Session Launcher"
1136-msgstr "GNOME-vertoonbestuurder werkerproses"
1137+msgstr "GNOME-vertoonbestuurder Wayland Sessie"
1138
1139-#: ../daemon/gdm-xdmcp-display-factory.c:609
1140+#: ../daemon/gdm-xdmcp-display-factory.c:612
1141 msgid "Could not create socket!"
1142 msgstr "Kon nie sok skep nie!"
1143
1144-#: ../daemon/gdm-x-session.c:686
1145+#: ../daemon/gdm-x-session.c:826
1146 msgid "Run program through /etc/gdm/Xsession wrapper script"
1147-msgstr ""
1148+msgstr "Voer die program deur die /etc/gdm/Xsession skript uit"
1149
1150-#: ../daemon/gdm-x-session.c:687
1151-#, fuzzy
1152+#: ../daemon/gdm-x-session.c:827
1153 msgid "Listen on TCP socket"
1154-msgstr "Luister op _UDP-poort: "
1155+msgstr "Luister op TCP-poort"
1156
1157-#: ../daemon/gdm-x-session.c:698
1158-#, fuzzy
1159+#: ../daemon/gdm-x-session.c:838
1160 msgid "GNOME Display Manager X Session Launcher"
1161-msgstr "GNOME-vertoonbestuurder werkerproses"
1162+msgstr "GNOME-vertoonbestuurder X-sessie lanseerder"
1163
1164 #: ../daemon/main.c:125 ../daemon/main.c:138
1165 #, c-format
1166@@ -223,8 +242,8 @@ msgstr "Kon nie LogDir-gids %s skep nie: %s"
1167
1168 #: ../daemon/main.c:223
1169 #, c-format
1170-msgid "Can't find the GDM user '%s'. Aborting!"
1171-msgstr "Kan nie GDM-gebruiker '%s' vind nie. Staak!"
1172+msgid "Can’t find the GDM user “%s”. Aborting!"
1173+msgstr "Kan nie GDM-gebruiker \"%s\" vind nie. Staak!"
1174
1175 #: ../daemon/main.c:229
1176 msgid "The GDM user should not be root. Aborting!"
1177@@ -232,50 +251,40 @@ msgstr "Die GDM-gebruiker moet nie root wees nie. Staak!"
1178
1179 #: ../daemon/main.c:235
1180 #, c-format
1181-msgid "Can't find the GDM group '%s'. Aborting!"
1182-msgstr "Kan nie die GDM-groep '%s' vind nie. Staak!"
1183+msgid "Can’t find the GDM group “%s”. Aborting!"
1184+msgstr "Kan nie die GDM-groep \"%s\" vind nie. Staak!"
1185
1186 #: ../daemon/main.c:241
1187 msgid "The GDM group should not be root. Aborting!"
1188 msgstr "Die GDM-groep moet nie root wees nie. Staak!"
1189
1190-#: ../daemon/main.c:318
1191+#: ../daemon/main.c:317
1192 msgid "Make all warnings fatal"
1193 msgstr "Maak alle waarskuwings noodlottig"
1194
1195-#: ../daemon/main.c:319
1196+#: ../daemon/main.c:318
1197 msgid "Exit after a time (for debugging)"
1198 msgstr "Sluit af na 'n tydjie (vir probleemoplossing)"
1199
1200-#: ../daemon/main.c:320
1201+#: ../daemon/main.c:319
1202 msgid "Print GDM version"
1203 msgstr "Druk GDM-weergawe"
1204
1205-#: ../daemon/main.c:333
1206+#: ../daemon/main.c:330
1207 msgid "GNOME Display Manager"
1208 msgstr "GNOME-vertoonbestuurder"
1209
1210 #. make sure the pid file doesn't get wiped
1211-#: ../daemon/main.c:381
1212+#: ../daemon/main.c:351
1213 msgid "Only the root user can run GDM"
1214 msgstr "Slegs root behoort GDM uit te voer"
1215
1216 #. Translators: worker is a helper process that does the work
1217 #. of starting up a session
1218-#: ../daemon/session-worker-main.c:95
1219+#: ../daemon/session-worker-main.c:94
1220 msgid "GNOME Display Manager Session Worker"
1221 msgstr "GNOME-vertoonbestuurder werkerproses"
1222
1223-#: ../data/applications/gnome-shell.desktop.in.h:1
1224-#: ../data/applications/gnome-shell-wayland.desktop.in.h:1
1225-msgid "GNOME Shell"
1226-msgstr "GNOME Shell"
1227-
1228-#: ../data/applications/gnome-shell.desktop.in.h:2
1229-#: ../data/applications/gnome-shell-wayland.desktop.in.h:2
1230-msgid "Window management and compositing"
1231-msgstr "Vensterbestuur en -uitleg"
1232-
1233 #: ../data/org.gnome.login-screen.gschema.xml.in.h:1
1234 msgid "Whether or not to allow fingerprint readers for login"
1235 msgstr "Of vingerafdruklesers toegelaat word vir aanmelding"
1236@@ -319,21 +328,20 @@ msgstr "Pad na klein beeld bo aan gebruikerslys"
1237
1238 #: ../data/org.gnome.login-screen.gschema.xml.in.h:8
1239 msgid ""
1240-"The login screen can optionally show a small image at the top of its user "
1241-"list to provide site administrators and distributions a way to provide "
1242-"branding."
1243+"The login screen can optionally show a small image to provide site "
1244+"administrators and distributions a way to display branding."
1245 msgstr ""
1246 "Die aanmeldskerm kan 'n klein beeld bo aan die gebruikerslys vertoon wat "
1247-"administrateurs kan gebruik om 'n handelsmerk te vertoon."
1248+"administrateurs of verspreidings kan gebruik om 'n handelsmerk te vertoon."
1249
1250 #: ../data/org.gnome.login-screen.gschema.xml.in.h:9
1251 msgid ""
1252-"The fallback login screen can optionally show a small image at the top of "
1253-"its user list to provide site administrators and distributions a way to "
1254-"provide branding."
1255+"The fallback login screen can optionally show a small image to provide site "
1256+"administrators and distributions a way to display branding."
1257 msgstr ""
1258 "Die rugsteun-aanmeldskerm kan 'n klein beeld bo aan die gebruikerslys "
1259-"vertoon wat administrateurs kan gebruik om 'n handelsmerk te vertoon."
1260+"vertoon wat administrateurs of verspreidings kan gebruik om 'n handelsmerk "
1261+"te vertoon."
1262
1263 #: ../data/org.gnome.login-screen.gschema.xml.in.h:10
1264 msgid "Avoid showing user list"
1265@@ -385,26 +393,6 @@ msgstr ""
1266 "Die aantal kere wat 'n gebruiker mag probeer om aan te meld voordat tou "
1267 "opgegooi word en daar teruggekeer word na die gebruikerseleksie."
1268
1269-#: ../gui/simple-chooser/gdm-host-chooser-dialog.c:147
1270-msgid "Select System"
1271-msgstr "Kies stelsel"
1272-
1273-#: ../gui/simple-chooser/gdm-host-chooser-widget.c:215
1274-msgid "XDMCP: Could not create XDMCP buffer!"
1275-msgstr "XDMCP: Kon nie XDMCP-buffer skep nie!"
1276-
1277-#: ../gui/simple-chooser/gdm-host-chooser-widget.c:221
1278-msgid "XDMCP: Could not read XDMCP header!"
1279-msgstr "XDMCP: Kon nie XDMCP-kopteks lees nie!"
1280-
1281-#: ../gui/simple-chooser/gdm-host-chooser-widget.c:227
1282-msgid "XDMCP: Incorrect XDMCP version!"
1283-msgstr "XMDCP: Verkeerde XDMCP-weergawe!"
1284-
1285-#: ../gui/simple-chooser/gdm-host-chooser-widget.c:233
1286-msgid "XDMCP: Unable to parse address"
1287-msgstr "XDMCP: Kan nie adres ontleed nie"
1288-
1289 #: ../libgdm/gdm-user-switching.c:59
1290 msgid "Unable to create transient display: "
1291 msgstr "Kan nie verbygaande vertoonskerm skep nie: "
1292@@ -419,7 +407,7 @@ msgstr "Slegs die 'VERSION' bevel word ondersteun"
1293
1294 #: ../utils/gdmflexiserver.c:45
1295 msgid "COMMAND"
1296-msgstr "COMMAND"
1297+msgstr "BEVEL"
1298
1299 #: ../utils/gdmflexiserver.c:46 ../utils/gdmflexiserver.c:47
1300 #: ../utils/gdmflexiserver.c:49 ../utils/gdmflexiserver.c:50
1301@@ -432,11 +420,11 @@ msgstr "Afvoer vir ontfouting"
1302
1303 #: ../utils/gdmflexiserver.c:52
1304 msgid "Version of this application"
1305-msgstr "Weergawe van hierdie toepassing"
1306+msgstr "Weergawe van hierdie program"
1307
1308 #. Option parsing
1309 #: ../utils/gdmflexiserver.c:137
1310-msgid "- New GDM login"
1311+msgid "— New GDM login"
1312 msgstr "- Nuwe GDM-aanmelding"
1313
1314 #: ../utils/gdm-screenshot.c:212
1315@@ -448,813 +436,11 @@ msgstr "Skermskoot geneem"
1316 msgid "Take a picture of the screen"
1317 msgstr "Neem 'n skermskoot"
1318
1319+#~ msgid "Your password has expired, please change it now."
1320+#~ msgstr "U wagwoord het verval. Verander dit asb. nou."
1321
1322+#~ msgid "GNOME Shell"
1323+#~ msgstr "GNOME Shell"
1324
1325-
1326-
1327-
1328-
1329-
1330-
1331-
1332-
1333-
1334-
1335-
1336-
1337-
1338-#, fuzzy
1339-
1340-
1341-#, fuzzy
1342-
1343-
1344-#, fuzzy
1345-
1346-
1347-
1348-
1349-
1350-
1351-
1352-
1353-
1354-
1355-
1356-
1357-
1358-
1359-
1360-
1361-
1362-
1363-
1364-
1365-
1366-
1367-
1368-
1369-
1370-#, fuzzy
1371-
1372-
1373-
1374-#, fuzzy
1375-
1376-
1377-
1378-
1379-
1380-
1381-
1382-
1383-
1384-
1385-
1386-
1387-
1388-
1389-
1390-
1391-
1392-
1393-
1394-
1395-
1396-
1397-
1398-
1399-
1400-
1401-
1402-
1403-
1404-
1405-
1406-
1407-
1408-
1409-
1410-
1411-
1412-
1413-
1414-
1415-
1416-
1417-
1418-
1419-
1420-
1421-
1422-
1423-
1424-
1425-
1426-
1427-
1428-
1429-
1430-#, fuzzy
1431-
1432-#, fuzzy
1433-
1434-
1435-
1436-#, fuzzy
1437-
1438-
1439-
1440-
1441-
1442-#, fuzzy
1443-
1444-
1445-
1446-
1447-
1448-
1449-
1450-
1451-
1452-
1453-
1454-
1455-
1456-
1457-
1458-#, fuzzy
1459-
1460-
1461-#, fuzzy
1462-
1463-
1464-
1465-
1466-
1467-
1468-
1469-
1470-
1471-
1472-
1473-
1474-
1475-
1476-
1477-
1478-
1479-
1480-
1481-
1482-
1483-
1484-#, fuzzy
1485-
1486-
1487-
1488-
1489-
1490-
1491-#, fuzzy
1492-
1493-#, fuzzy
1494-
1495-
1496-
1497-
1498-
1499-
1500-
1501-
1502-
1503-
1504-
1505-
1506-
1507-
1508-
1509-
1510-
1511-
1512-
1513-
1514-
1515-
1516-
1517-
1518-
1519-
1520-
1521-
1522-
1523-
1524-
1525-
1526-
1527-
1528-
1529-
1530-
1531-#, fuzzy
1532-
1533-
1534-
1535-
1536-
1537-
1538-
1539-
1540-
1541-
1542-
1543-
1544-
1545-
1546-
1547-
1548-
1549-
1550-
1551-
1552-
1553-
1554-
1555-
1556-
1557-
1558-
1559-
1560-
1561-
1562-
1563-
1564-
1565-
1566-
1567-
1568-
1569-
1570-
1571-
1572-
1573-
1574-
1575-
1576-
1577-
1578-
1579-
1580-
1581-
1582-
1583-
1584-
1585-
1586-
1587-
1588-
1589-
1590-
1591-
1592-
1593-
1594-
1595-
1596-
1597-
1598-
1599-
1600-
1601-
1602-
1603-
1604-
1605-
1606-
1607-
1608-
1609-
1610-
1611-
1612-
1613-
1614-
1615-
1616-
1617-
1618-
1619-
1620-
1621-
1622-
1623-
1624-
1625-
1626-
1627-
1628-
1629-
1630-
1631-
1632-
1633-
1634-
1635-
1636-
1637-
1638-
1639-
1640-
1641-
1642-
1643-
1644-
1645-
1646-
1647-
1648-
1649-
1650-
1651-
1652-
1653-
1654-
1655-
1656-
1657-
1658-
1659-
1660-
1661-
1662-
1663-
1664-
1665-
1666-
1667-
1668-
1669-
1670-
1671-
1672-
1673-
1674-
1675-
1676-
1677-
1678-
1679-
1680-
1681-
1682-
1683-
1684-
1685-
1686-
1687-
1688-
1689-
1690-
1691-
1692-
1693-
1694-
1695-
1696-
1697-
1698-
1699-
1700-
1701-
1702-
1703-
1704-
1705-
1706-
1707-
1708-
1709-
1710-
1711-
1712-
1713-
1714-
1715-
1716-
1717-
1718-
1719-
1720-
1721-
1722-
1723-
1724-
1725-
1726-
1727-
1728-
1729-
1730-
1731-
1732-
1733-
1734-
1735-
1736-
1737-
1738-
1739-
1740-
1741-
1742-
1743-
1744-
1745-
1746-
1747-
1748-
1749-
1750-
1751-
1752-
1753-
1754-
1755-
1756-
1757-
1758-
1759-
1760-
1761-
1762-
1763-
1764-
1765-
1766-
1767-
1768-
1769-
1770-
1771-
1772-
1773-
1774-
1775-
1776-
1777-
1778-
1779-
1780-
1781-
1782-
1783-
1784-
1785-
1786-
1787-
1788-
1789-
1790-
1791-
1792-
1793-
1794-
1795-
1796-
1797-
1798-
1799-
1800-
1801-
1802-
1803-
1804-
1805-
1806-
1807-
1808-
1809-
1810-
1811-
1812-
1813-
1814-
1815-
1816-
1817-
1818-
1819-
1820-
1821-
1822-
1823-
1824-
1825-
1826-
1827-
1828-
1829-
1830-
1831-
1832-
1833-
1834-
1835-
1836-
1837-
1838-
1839-
1840-
1841-
1842-
1843-
1844-
1845-
1846-
1847-
1848-
1849-
1850-
1851-
1852-
1853-
1854-
1855-
1856-
1857-
1858-
1859-
1860-
1861-
1862-
1863-
1864-
1865-
1866-
1867-
1868-
1869-
1870-
1871-
1872-
1873-
1874-
1875-
1876-
1877-
1878-
1879-
1880-
1881-
1882-
1883-
1884-
1885-
1886-
1887-
1888-
1889-
1890-
1891-
1892-
1893-
1894-
1895-
1896-
1897-
1898-
1899-
1900-
1901-
1902-
1903-
1904-
1905-
1906-
1907-
1908-
1909-
1910-
1911-
1912-
1913-
1914-
1915-
1916-
1917-
1918-
1919-
1920-
1921-
1922-
1923-
1924-
1925-
1926-
1927-
1928-
1929-
1930-
1931-
1932-
1933-
1934-
1935-
1936-
1937-
1938-
1939-
1940-
1941-
1942-
1943-
1944-
1945-
1946-
1947-
1948-
1949-
1950-
1951-
1952-
1953-
1954-
1955-
1956-
1957-
1958-
1959-
1960-
1961-
1962-
1963-
1964-
1965-
1966-
1967-
1968-
1969-
1970-
1971-
1972-
1973-
1974-
1975-
1976-
1977-
1978-
1979-
1980-
1981-
1982-
1983-
1984-
1985-
1986-
1987-
1988-
1989-
1990-
1991-
1992-
1993-
1994-
1995-
1996-
1997-
1998-
1999-
2000-
2001-
2002-
2003-
2004-
2005-
2006-
2007-
2008-
2009-
2010-
2011-
2012-
2013-
2014-
2015-
2016-
2017-
2018-
2019-
2020-
2021-
2022-
2023-
2024-
2025-
2026-
2027-
2028-
2029-
2030-
2031-
2032-
2033-
2034-
2035-
2036-
2037-
2038-
2039-
2040-
2041-
2042-
2043-
2044-
2045-
2046-
2047-
2048-
2049-
2050-
2051-
2052-
2053-
2054-
2055-
2056-
2057-
2058-
2059-
2060-
2061-
2062-
2063-
2064-
2065-
2066-
2067-
2068-
2069-
2070-
2071-
2072-
2073-
2074-
2075-
2076-
2077-
2078-
2079-
2080-
2081-
2082-
2083-
2084-
2085-
2086-
2087-
2088-
2089-
2090-
2091-
2092-
2093-
2094-
2095-
2096-
2097-
2098-
2099-
2100-
2101-
2102-
2103-
2104-
2105-
2106-
2107-
2108-
2109-
2110-
2111-
2112-
2113-
2114-
2115-
2116-
2117-
2118-
2119-
2120-
2121-
2122-
2123-
2124-
2125-
2126-
2127-
2128-
2129-
2130-
2131-
2132-
2133+#~ msgid "Window management and compositing"
2134+#~ msgstr "Vensterbestuur en -uitleg"
2135diff --git a/po/zh_CN.po b/po/zh_CN.po
2136index 880fea6..69d4cc3 100644
2137--- a/po/zh_CN.po
2138+++ b/po/zh_CN.po
2139@@ -15,49 +15,81 @@
2140 msgid ""
2141 msgstr ""
2142 "Project-Id-Version: gdm master\n"
2143-"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
2144+"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
2145 "product=gdm&keywords=I18N+L10N&component=general\n"
2146-"POT-Creation-Date: 2016-02-04 18:46+0000\n"
2147-"PO-Revision-Date: 2016-01-19 18:47-0700\n"
2148-"Last-Translator: Jeff Bai <jeffbai@aosc.xyz>\n"
2149+"POT-Creation-Date: 2018-01-09 23:24+0000\n"
2150+"PO-Revision-Date: 2018-02-03 23:04+0800\n"
2151+"Last-Translator: Mingcong Bai <jeffbai@aosc.xyz>\n"
2152 "Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
2153 "Language: zh_CN\n"
2154 "MIME-Version: 1.0\n"
2155 "Content-Type: text/plain; charset=UTF-8\n"
2156 "Content-Transfer-Encoding: 8bit\n"
2157 "Plural-Forms: nplurals=1; plural=0;\n"
2158-"X-Generator: Poedit 1.8.6\n"
2159+"X-Generator: Poedit 2.0.2\n"
2160
2161-#: ../common/gdm-common.c:298
2162+#: ../chooser/gdm-host-chooser-dialog.c:140
2163+msgid "_Refresh"
2164+msgstr "刷新(_R)"
2165+
2166+#: ../chooser/gdm-host-chooser-dialog.c:141
2167+msgid "_Cancel"
2168+msgstr "取消(_C)"
2169+
2170+#: ../chooser/gdm-host-chooser-dialog.c:142
2171+msgid "C_onnect"
2172+msgstr "连接(_O)"
2173+
2174+#: ../chooser/gdm-host-chooser-dialog.c:147
2175+msgid "Select System"
2176+msgstr "选择系统"
2177+
2178+#: ../chooser/gdm-host-chooser-widget.c:254
2179+msgid "XDMCP: Could not create XDMCP buffer!"
2180+msgstr "XDMCP:无法创建 XDMCP 缓冲区!"
2181+
2182+#: ../chooser/gdm-host-chooser-widget.c:260
2183+msgid "XDMCP: Could not read XDMCP header!"
2184+msgstr "XDMCP:无法读取 XDMCP 头信息!"
2185+
2186+#: ../chooser/gdm-host-chooser-widget.c:266
2187+msgid "XDMCP: Incorrect XDMCP version!"
2188+msgstr "XMDCP:XDMCP 版本错误!"
2189+
2190+#: ../chooser/gdm-host-chooser-widget.c:272
2191+msgid "XDMCP: Unable to parse address"
2192+msgstr "XMDCP:无法解析地址"
2193+
2194+#: ../common/gdm-common.c:317
2195 #, c-format
2196 msgid "/dev/urandom is not a character device"
2197 msgstr "/dev/urandom 不是字符设备"
2198
2199-#: ../common/gdm-common.c:468 ../libgdm/gdm-user-switching.c:209
2200+#: ../common/gdm-common.c:487 ../libgdm/gdm-user-switching.c:209
2201 #, c-format
2202 msgid "Could not identify the current session."
2203 msgstr "无法识别当前会话。"
2204
2205-#: ../common/gdm-common.c:477 ../libgdm/gdm-user-switching.c:218
2206+#: ../common/gdm-common.c:496 ../libgdm/gdm-user-switching.c:218
2207 #, c-format
2208 msgid "Could not identify the current seat."
2209 msgstr "无法识别当前位置。"
2210
2211-#: ../common/gdm-common.c:487 ../libgdm/gdm-user-switching.c:228
2212+#: ../common/gdm-common.c:506 ../libgdm/gdm-user-switching.c:228
2213 #, c-format
2214 msgid ""
2215 "The system is unable to determine whether to switch to an existing login "
2216 "screen or start up a new login screen."
2217 msgstr "系统无法确定是否应当切换到一个已经登录的屏幕还是启动一个新登录屏幕。"
2218
2219-#: ../common/gdm-common.c:495 ../libgdm/gdm-user-switching.c:236
2220+#: ../common/gdm-common.c:514 ../libgdm/gdm-user-switching.c:236
2221 #, c-format
2222 msgid "The system is unable to start up a new login screen."
2223 msgstr "系统无法启动新登录屏幕。"
2224
2225 #: ../daemon/gdm-display-access-file.c:300
2226 #, c-format
2227-msgid "could not find user \"%s\" on system"
2228+msgid "could not find user “%s” on system"
2229 msgstr "无法在系统中找到用户“%s”"
2230
2231 #: ../daemon/gdm-legacy-display.c:235
2232@@ -70,63 +102,67 @@ msgstr ""
2233 "由于内部错误无法启动 X 服务器(您的图形界面)。请与系统管理员联系或检查系统日志"
2234 "以便进行诊断。在此期间该显示将被禁用。请在问题更正以后重新启动 GDM。"
2235
2236-#: ../daemon/gdm-manager.c:766
2237+#: ../daemon/gdm-manager.c:775
2238 msgid "No display available"
2239 msgstr "无可用的显示"
2240
2241-#: ../daemon/gdm-manager.c:833 ../daemon/gdm-manager.c:1088
2242+#: ../daemon/gdm-manager.c:844 ../daemon/gdm-manager.c:1120
2243 msgid "No session available"
2244 msgstr "无可用的会话"
2245
2246-#: ../daemon/gdm-manager.c:844
2247+#: ../daemon/gdm-manager.c:863
2248+msgid "Chooser session unavailable"
2249+msgstr "选择器会话不可用"
2250+
2251+#: ../daemon/gdm-manager.c:875
2252 msgid "Can only be called before user is logged in"
2253 msgstr "只能在用户登录前被调用"
2254
2255-#: ../daemon/gdm-manager.c:854
2256+#: ../daemon/gdm-manager.c:886
2257 msgid "Caller not GDM"
2258 msgstr "调用者不是 GDM"
2259
2260-#: ../daemon/gdm-manager.c:864
2261+#: ../daemon/gdm-manager.c:896
2262 msgid "Unable to open private communication channel"
2263 msgstr "无法打开专用通信通道"
2264
2265-#: ../daemon/gdm-server.c:391
2266+#: ../daemon/gdm-server.c:383
2267 #, c-format
2268-msgid "Server was to be spawned by user %s but that user doesn't exist"
2269+msgid "Server was to be spawned by user %s but that user doesn’t exist"
2270 msgstr "服务器是以用户 %s 身份创建的,但此用户不存在"
2271
2272-#: ../daemon/gdm-server.c:402 ../daemon/gdm-server.c:422
2273+#: ../daemon/gdm-server.c:394 ../daemon/gdm-server.c:414
2274 #, c-format
2275-msgid "Couldn't set groupid to %d"
2276+msgid "Couldn’t set groupid to %d"
2277 msgstr "无法将组 ID 设置为 %d"
2278
2279-#: ../daemon/gdm-server.c:408
2280+#: ../daemon/gdm-server.c:400
2281 #, c-format
2282 msgid "initgroups () failed for %s"
2283 msgstr "initgroups() 执行 %s 失败"
2284
2285-#: ../daemon/gdm-server.c:414
2286+#: ../daemon/gdm-server.c:406
2287 #, c-format
2288-msgid "Couldn't set userid to %d"
2289+msgid "Couldn’t set userid to %d"
2290 msgstr "无法将用户 ID 设置为 %d"
2291
2292-#: ../daemon/gdm-server.c:492
2293+#: ../daemon/gdm-server.c:484
2294 #, c-format
2295 msgid "%s: Could not open log file for display %s!"
2296 msgstr "%s:无法打开显示屏 %s 的日志文件!"
2297
2298-#: ../daemon/gdm-server.c:513 ../daemon/gdm-server.c:519
2299-#: ../daemon/gdm-server.c:525
2300+#: ../daemon/gdm-server.c:505 ../daemon/gdm-server.c:511
2301+#: ../daemon/gdm-server.c:517
2302 #, c-format
2303 msgid "%s: Error setting %s to %s"
2304 msgstr "%s:将 %s 设为 %s 出错"
2305
2306-#: ../daemon/gdm-server.c:545
2307+#: ../daemon/gdm-server.c:537
2308 #, c-format
2309-msgid "%s: Server priority couldn't be set to %d: %s"
2310+msgid "%s: Server priority couldn’t be set to %d: %s"
2311 msgstr "%s:服务器优先级无法设为 %d:%s"
2312
2313-#: ../daemon/gdm-server.c:697
2314+#: ../daemon/gdm-server.c:689
2315 #, c-format
2316 msgid "%s: Empty server command for display %s"
2317 msgstr "%s:显示画面 %s 的服务器命令为空"
2318@@ -155,48 +191,48 @@ msgstr "显示设备"
2319 msgid "The display device"
2320 msgstr "显示设备"
2321
2322-#: ../daemon/gdm-session.c:1205
2323+#: ../daemon/gdm-session.c:1261
2324 msgid "Could not create authentication helper process"
2325 msgstr "无法建立验证助手进程"
2326
2327-#: ../daemon/gdm-session-worker.c:642
2328-msgid "Your account was given a time limit that's now passed."
2329+#: ../daemon/gdm-session-worker.c:766
2330+msgid "Your account was given a time limit that’s now passed."
2331 msgstr "你的帐号设有时间限制,已超过限定时间。"
2332
2333-#: ../daemon/gdm-session-worker.c:649
2334-msgid "Sorry, that didn't work. Please try again."
2335-msgstr "抱歉,没有奏效,请再试一次。"
2336+#: ../daemon/gdm-session-worker.c:773
2337+msgid "Sorry, that didn’t work. Please try again."
2338+msgstr "抱歉,登录失败,请再试一次。"
2339
2340-#: ../daemon/gdm-session-worker.c:1010
2341+#: ../daemon/gdm-session-worker.c:1170
2342 msgid "Username:"
2343 msgstr "用户名:"
2344
2345-#: ../daemon/gdm-session-worker.c:1504 ../daemon/gdm-session-worker.c:1521
2346+#: ../daemon/gdm-session-worker.c:1672 ../daemon/gdm-session-worker.c:1689
2347 #, c-format
2348 msgid "no user account available"
2349 msgstr "无可用用户帐户"
2350
2351-#: ../daemon/gdm-session-worker.c:1548
2352+#: ../daemon/gdm-session-worker.c:1716
2353 msgid "Unable to change to user"
2354 msgstr "无法切换到用户"
2355
2356-#: ../daemon/gdm-wayland-session.c:385
2357+#: ../daemon/gdm-wayland-session.c:478
2358 msgid "GNOME Display Manager Wayland Session Launcher"
2359 msgstr "GNOME 显示管理器 Wayland 会话启动器"
2360
2361-#: ../daemon/gdm-xdmcp-display-factory.c:609
2362+#: ../daemon/gdm-xdmcp-display-factory.c:612
2363 msgid "Could not create socket!"
2364 msgstr "无法创建套接字!"
2365
2366-#: ../daemon/gdm-x-session.c:734
2367+#: ../daemon/gdm-x-session.c:826
2368 msgid "Run program through /etc/gdm/Xsession wrapper script"
2369 msgstr "通过 /etc/gdm/Xsession 包装脚本运行程序"
2370
2371-#: ../daemon/gdm-x-session.c:735
2372+#: ../daemon/gdm-x-session.c:827
2373 msgid "Listen on TCP socket"
2374 msgstr "监听 TCP 套接字"
2375
2376-#: ../daemon/gdm-x-session.c:746
2377+#: ../daemon/gdm-x-session.c:838
2378 msgid "GNOME Display Manager X Session Launcher"
2379 msgstr "GNOME 显示管理器 X 会话启动器"
2380
2381@@ -217,7 +253,7 @@ msgstr "无法创建 LogDir %s: %s"
2382
2383 #: ../daemon/main.c:223
2384 #, c-format
2385-msgid "Can't find the GDM user '%s'. Aborting!"
2386+msgid "Can’t find the GDM user “%s”. Aborting!"
2387 msgstr "找不到 GDM 用户“%s”。中止!"
2388
2389 #: ../daemon/main.c:229
2390@@ -226,31 +262,31 @@ msgstr "GDM 用户不能为 root。中止!"
2391
2392 #: ../daemon/main.c:235
2393 #, c-format
2394-msgid "Can't find the GDM group '%s'. Aborting!"
2395+msgid "Can’t find the GDM group “%s”. Aborting!"
2396 msgstr "找不到 GDM 组“%s”。中止!"
2397
2398 #: ../daemon/main.c:241
2399 msgid "The GDM group should not be root. Aborting!"
2400 msgstr "GDM 组不能为 root。中止!"
2401
2402-#: ../daemon/main.c:318
2403+#: ../daemon/main.c:317
2404 msgid "Make all warnings fatal"
2405 msgstr "设置所有警告为致命错误"
2406
2407-#: ../daemon/main.c:319
2408+#: ../daemon/main.c:318
2409 msgid "Exit after a time (for debugging)"
2410 msgstr "一段时间后退出(用于调试)"
2411
2412-#: ../daemon/main.c:320
2413+#: ../daemon/main.c:319
2414 msgid "Print GDM version"
2415 msgstr "打印 GDM 版本"
2416
2417-#: ../daemon/main.c:333
2418+#: ../daemon/main.c:330
2419 msgid "GNOME Display Manager"
2420 msgstr "GNOME 显示管理器"
2421
2422 #. make sure the pid file doesn't get wiped
2423-#: ../daemon/main.c:381
2424+#: ../daemon/main.c:351
2425 msgid "Only the root user can run GDM"
2426 msgstr "只有 root 用户才能运行 GDM"
2427
2428@@ -351,26 +387,6 @@ msgid ""
2429 "giving up and going back to user selection."
2430 msgstr "放弃并返回用户选择界面前,允许某个用户尝试认证的次数。"
2431
2432-#: ../gui/simple-chooser/gdm-host-chooser-dialog.c:147
2433-msgid "Select System"
2434-msgstr "选择系统"
2435-
2436-#: ../gui/simple-chooser/gdm-host-chooser-widget.c:215
2437-msgid "XDMCP: Could not create XDMCP buffer!"
2438-msgstr "XDMCP:无法创建 XDMCP 缓冲区!"
2439-
2440-#: ../gui/simple-chooser/gdm-host-chooser-widget.c:221
2441-msgid "XDMCP: Could not read XDMCP header!"
2442-msgstr "XDMCP:无法读取 XDMCP 头信息!"
2443-
2444-#: ../gui/simple-chooser/gdm-host-chooser-widget.c:227
2445-msgid "XDMCP: Incorrect XDMCP version!"
2446-msgstr "XMDCP:XDMCP 版本错误!"
2447-
2448-#: ../gui/simple-chooser/gdm-host-chooser-widget.c:233
2449-msgid "XDMCP: Unable to parse address"
2450-msgstr "XMDCP:无法解析地址"
2451-
2452 #: ../libgdm/gdm-user-switching.c:59
2453 msgid "Unable to create transient display: "
2454 msgstr "无法创建过渡显示界面:"
2455@@ -402,8 +418,8 @@ msgstr "该应用程序版本"
2456
2457 #. Option parsing
2458 #: ../utils/gdmflexiserver.c:137
2459-msgid "- New GDM login"
2460-msgstr "- 新 GDM 登录"
2461+msgid "— New GDM login"
2462+msgstr "— 新 GDM 登录"
2463
2464 #: ../utils/gdm-screenshot.c:212
2465 msgid "Screenshot taken"

Subscribers

People subscribed via source and target branches