summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'gdm-client-use-autoptr' into 'master'Ray Strode2018-06-121-153/+111
|\ | | | | | | | | libgdm: use g_autoptr to manage objects lifecycle See merge request GNOME/gdm!3
| * libgdm: use g_autoptr to manage objects lifecycleMarco Trevisan (Treviño)2018-06-121-153/+111
|/ | | | | Using auto pointers allows to manage things in a cleaner way without having to manually unref things before returning.
* Merge branch 'fix_issue_381' into 'master'Ray Strode2018-06-121-0/+4
|\ | | | | | | | | | | | | daemon/gdm-session-record.c: open/close the utmp database Closes #381 See merge request GNOME/gdm!1
| * daemon/gdm-session-record.c: open/close the utmp databaseJason Pleau2018-06-121-0/+4
|/ | | | | | | | | | | | | | pututxline() was used without first opening the utxmp database and without closing it, preventing the logout entry from being fully committed. This caused the number of logged-in users to increment after each login, as logging out did not correctly remove the user login record from utmp. This commit wraps pututxline() between setutxent() and endutxent(), making sure that the login/logout operation are fully flushed. Fixes #381
* Update Estonian translationMadis2018-06-091-18/+17
|
* Merge branch 'gdm-client-single-connection-getter' into 'master'Marco Trevisan2018-06-041-64/+65
|\ | | | | | | | | | | | | Gdm client single connection getter Closes #386 See merge request GNOME/gdm!2
| * libgdm: Return NULL on invalid client instancesMarco Trevisan (Treviño)2018-06-041-8/+8
| |
| * libgdm: Don't save manager addressMarco Trevisan (Treviño)2018-06-021-15/+9
| | | | | | | | | | There's no need to keep the manager connection address around, and use autofree to clean it up
| * libgdb: Try to reuse connections from the available proxiesMarco Trevisan (Treviño)2018-06-021-31/+39
| | | | | | | | | | | | | | | | | | Instead of using the hard-to-maintain shared pointer to the dbus connection to the manager and reset it when the proxies that use it are deleted, just look which proxy is currently available and try to reuse the connection from it. Fixes #386
| * libgdm: Use auto-pointers and cleanup codeMarco Trevisan (Treviño)2018-06-021-8/+5
| |
| * libgdm: Don't leak connection on sync re-authenticationMarco Trevisan (Treviño)2018-06-021-1/+1
| |
| * libgdm: Don't double-ref the connection got from taskMarco Trevisan (Treviño)2018-06-021-2/+2
| | | | | | | | | | | | | | | | Both if we re-use the shared connection in `gdm_client_get_connection` and if we create a new one in `on_connected`, we steal the pointer here by using `g_task_propagate_pointer` and thus we don't have to add an additional reference to this connection when returning, or it won't ever be consumed by function customers.
| * libgdm: Unref the manager propagated from taskMarco Trevisan (Treviño)2018-06-021-1/+3
|/ | | | | | | | | This instance has already been reffed when passed to the task, and since we're stealing it with `g_task_propagate_pointer` it won't be unreffed. We could also do this in the `on_reauthentication_channel_opened` callback but since the new task will ref it anyway, we can just be clean and do it here.
* Update Chinese (China) translationTong Hui2018-05-221-72/+88
|
* data: change cirrus blacklist to use gdm-disable-waylandRay Strode2018-05-213-2/+7
| | | | | | | | | | Now that we have a gdm-disable-wayland binary for disabling wayland at boot, we should use it. This commit changes the cirrus udev rule to use gdm-disable-wayland, rather than running sh and printf. https://bugzilla.gnome.org/show_bug.cgi?id=796315
* utils: add new gdm-disable-wayland binaryRay Strode2018-05-212-0/+67
| | | | | | | | | | | | | We currently disable wayland for cirrus by calling printf from a udev rule. This works, but it's a little too open coded to easily write SELinux policy for. This commit introduces a new program, gdm-disable-wayland, that does the same thing, but in a dedicated binary. A future commit will change the udev rule to use the binary. https://bugzilla.gnome.org/show_bug.cgi?id=796315
* data: correct typo in commentYan Huang2018-05-171-1/+1
| | | | | | | | | | | gdm.conf-custom.in has a comment explaining how to disable wayland and force Xorg. That comment misspells the word "Uncomment". This commit corrects the spelling. https://bugzilla.gnome.org/show_bug.cgi?id=795825
* configure: bump to 3.29.13.29.1Ray Strode2018-05-161-1/+1
|
* NEWS: update for releaseRay Strode2018-05-161-0/+7
|
* display-access-file: drop unused functionRay Strode2018-05-162-82/+0
| | | | | | | | gdm_display_access_file_remove_display is unused. This commit drops it. https://bugzilla.gnome.org/show_bug.cgi?id=796176
* display-access-file: fix early freeRay Strode2018-05-161-3/+3
| | | | | | | | | | | | The unused function gdm_display_access_file_remove_display frees some variables and then tries to use them. For completeness, this commit moves the free() calls to the appropriate place in the code. A subsequent commit will drop the function. https://bugzilla.gnome.org/show_bug.cgi?id=796176
* libgdm: Drop weak refs on the GDBusConnectionIain Lane2018-05-161-47/+0
| | | | | | | | | The GDBusProxies hold a strong reference to the connection themselves, so maintaining separate weak references is unnecessary. This commit drops those extraneous weak references. https://bugzilla.gnome.org/show_bug.cgi?id=795940
* libgdm: get connection explicitlyMarco Trevisan (Treviño)2018-05-161-54/+82
| | | | | | | | | | | At the moment we call gdm_client_open_connection and when it finishes, assume client->priv->connection is implicitly initialized. This commit makes the operation more explicit by changing gdm_client_open_connection to gdm_client_get_connection and returning the GDBusConnection object directly, instead of returning a boolean. https://bugzilla.gnome.org/show_bug.cgi?id=795940
* libgdm: use g_object_unref instead of g_clear_object for weakrefsRay Strode2018-05-161-8/+8
| | | | | | | | | | | At the moment we add a weakref on each proxy to the connection object. For the _sync variant functions, When the weakref fires, they call g_clear_object, clearing the connection, even if other proxies still have a reference. This commit changes that weak ref code to use g_object_unref instead. https://bugzilla.gnome.org/show_bug.cgi?id=795940
* libgdm: don't keep manager proxy around longer than we need itRay Strode2018-05-161-93/+26
| | | | | | | | | | | | Right now we keep the manager proxy alive long after we need it. It doesn't get cleared until one of the other proxies go away. That is not only unnecessary but illogical and confusing. This commit changes the manager proxy to be transient—only alive long enough to get what we need from it. https://bugzilla.gnome.org/show_bug.cgi?id=795940
* libgdm: fix pointer/boolean task confusionRay Strode2018-05-161-2/+6
| | | | | | | | | The manager fetching code in GdmClient treats its task return value as boolean, but it's actually a pointer (the manager) This commit corrects the confusion. https://bugzilla.gnome.org/show_bug.cgi?id=795940
* libgdm: drop support for serializing multiple opensRay Strode2018-05-161-71/+40
| | | | | | | | | | | | | | | | | | Right now libgdm tries to handle multiple simultaneous open calls at the same time by serializing the requests and giving them all the same connection. It's broken, though. - The pending_opens list is never populated, so we end up just doing multiple simultaneous open operations at a time anyway. - The finish code ends up calling g_task_return_error (task, NULL) instead of g_task_return_pointer in the non-error case. Since the feature doesn't work, drop it for now. https://bugzilla.gnome.org/show_bug.cgi?id=795940
* libgdm: add weak pointer for connection objectMarco Trevisan (Treviño)2018-05-161-0/+12
| | | | | | | | | At the moment we fail to nullify GdmClient's connection to GDM when the connection is disposed. This commit adds a weak pointer to correct that mistake. https://bugzilla.gnome.org/show_bug.cgi?id=795940
* libgdm: Don't unref a connection that's in useMarco Trevisan (Treviño)2018-05-161-0/+2
| | | | | | | | | | | | | If an async task tries to reuse an open connection, it erroneously explicitly unrefs it. That is incorrect, because there are weak references in use to handle disposing the connection when its no longer in use. This commit makes sure the local connection object in open_connection is nullified so the connection doesn't get autofree'd. https://bugzilla.gnome.org/show_bug.cgi?id=795940
* launch-environment: Export library and gio pathsMarco Trevisan (Treviño)2018-05-071-0/+2
| | | | | | | If launching gdm from special environments (as jhbuild) these should be forwarded to the children greeter and launched apps too. https://bugzilla.gnome.org/show_bug.cgi?id=795886
* launch-environment: Set PATH via optional_environmentMarco Trevisan (Treviño)2018-05-071-2/+1
| | | | | | There's no need to add a different code path for this global env. https://bugzilla.gnome.org/show_bug.cgi?id=795886
* launch-environment: Order optional environment verticallyMarco Trevisan (Treviño)2018-05-071-6/+20
| | | | | | As per better readability. https://bugzilla.gnome.org/show_bug.cgi?id=795886
* daemon: Don't call g_option_context_set_ignore_unknown_optionsYetoo Happy2018-04-241-1/+0
| | | | | | | | | | | When using unknown command line options with the GDM daemon, the program hangs until explicitly getting killed. This commit addresses that bug by dropping an unnecessary call to g_option_context_set_ignore_unknown_options, so GOptionContext will now give an error when encountering unknown options. https://bugzilla.gnome.org/show_bug.cgi?id=795494
* daemon/gdm-manager.c: quit plymouth when xdmcp is the only allowed connection.Yifan J2018-04-101-0/+7
| | | | | | | | | | | | | | | | | | | | | | | gdm is responsible to kill plymouth by spawning the "plymouth quit" subprocesses in gdm-manager.c. The current code pathes of quiting plymouth can never be reached when xdmcp is the only connection allowed. Consequently in the case of !show_local_greeter && xdmcp_enabled the plymouth-quit-wait.service will never quit and the login prompt will not popup without manual interference. This issue could be more obviously observed when a downstream like openSUSE which allows a customized sysconfig to switch the corresponding two options on a headless server (s390), where the setup is usually: DISPLAYMANAGER_REMOTE_ACCESS="yes" DISPLAYMANAGER_STARTS_XSERVER="no" The proposed patch handles this edge case by quit plymouth immediately when the condition is detected. https://bugzilla.gnome.org/show_bug.cgi?id=795120
* Update Chinese (Taiwan) translationCheng-Chia Tseng2018-03-261-16/+16
| | | | (cherry picked from commit 6b5c3691e4b881ee430b1749971facc92b141855)
* Update Slovak translationDušan Kazik2018-03-161-38/+50
| | | | (cherry picked from commit f2645e8922d6efd8af6e44906d7d91e91b6f6730)
* configure: update to 3.28.03.28.0Ray Strode2018-03-131-1/+1
|
* NEWS: update for releaseRay Strode2018-03-131-0/+5
|
* Update Russian translationStas Solovey2018-03-121-34/+46
|
* Update Icelandic translationSveinn í Felli2018-03-121-43/+45
|
* Updated Danish translationAsk Hjorth Larsen2018-03-071-35/+48
|
* configure: bump to 3.27.923.27.92Ray Strode2018-03-071-1/+1
|
* NEWS: update for 3.27.92Ray Strode2018-03-071-0/+5
|
* Updated Punjabi TranslationA S Alam2018-03-061-64/+65
|
* Update Greek translationEfstathios Iosifidis2018-03-061-32/+44
|
* Update Romanian translationDaniel Șerbănescu2018-03-031-99/+116
|
* Update French translationCharles Monzat2018-03-021-34/+47
|
* Updated Lithuanian translationAurimas Černius2018-02-281-43/+45
|
* Updated Vietnamese translationTrần Ngọc Quân2018-02-271-38/+50
| | | | Signed-off-by: Trần Ngọc Quân <vnwildman@gmail.com>
* libgdm: "Fix" a memory leakFlorian Müllner2018-02-261-1/+11
| | | | | | | | | | The gdm_available_sessions_map hash table is set up with a value-free function that frees the struct itself, but not its contents. Of course elements are never removed from the map, so this fix doesn't matter in practice. https://bugzilla.gnome.org/show_bug.cgi?id=793855