Commit Graph

23828 Commits

Author SHA1 Message Date
Jamie Bainbridge
bb40105fe9 gutils: Avoid segfault in g_get_user_database_entry
g_get_user_database_entry() capitalises the first letter of pw_name
with g_ascii_toupper (pw->pw_name[0]).

However, the manpage for getpwnam() and getpwuid() says the result of
those calls "may point to a static area". GLib is then trying to edit
static memory which belongs to a shared library, so segfaults.

The reentrant variants of the above calls are supposed to fill the user
buffer supplied to them, however Michael Catanzaro also found a bug in
systemd where the data is not copied to the user buffer and still points
to static memory, resulting in the same sort of segfault. See:
https://github.com/systemd/systemd/issues/20679

Solve both these cases in GLib by copying pw_name off to a temporary
variable, set uppercase on that variable, and use the variable to join
into the desired string. Free the variable after it is no longer needed.

Signed-off-by: Jamie Bainbridge <jamie.bainbridge@gmail.com>
2021-09-22 11:40:45 +10:00
Anders Jonsson
44666880ad Update Swedish translation 2021-09-07 17:43:09 +00:00
Philip Withnall
73c217dec2 2.69.3
Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
2021-09-07 12:24:07 +01:00
Philip Withnall
573c629bec Merge branch 'readme-release-signing' into 'main'
docs: Add a note about git-evtag to SECURITY.md

See merge request GNOME/glib!2110
2021-09-07 11:21:15 +00:00
Philip Withnall
b8160ce18b docs: Add a note about git-evtag to SECURITY.md 2021-09-07 11:21:12 +00:00
Emmanuele Bassi
21a27f4eb7 Merge branch '2425-settings-schema-range-check' into 'main'
gsettingsschema: Fix docs for g_settings_schema_key_range_check()

Closes #2425

See merge request GNOME/glib!2160
2021-09-07 10:59:09 +00:00
Philip Withnall
c9b1e6654e Merge branch 'gcc-suppress-deprecated-2' into 'main'
Fix false deprecation warnings on old GCC/MSVC

Closes #2472

See merge request GNOME/glib!2234
2021-09-07 10:45:06 +00:00
Evan Miller
508352339a Fix false deprecation warnings on old GCC/MSVC
Closes #2472
2021-09-07 11:21:20 +01:00
Philip Withnall
b52de547cb Merge branch '2481-power-profile-default-value' into 'main'
gpowerprofilemonitorportal: Set property value by default

Closes #2481

See merge request GNOME/glib!2241
2021-09-07 10:16:40 +00:00
Philip Withnall
4f62fdfd29 tests: Fix subsequent tests after first power-profile test failure
If the first power-profile installed test fails (for example, because
xdg-desktop-portal isn’t available), correctly tear down the dbusmock
object, or it will cause setUp() to fail when the next test in the suite
is run.

Signed-off-by: Philip Withnall <pwithnall@endlessos.org>

Helps: #2481
2021-09-06 18:57:06 +01:00
Philip Withnall
d051ef1611 gpowerprofilemonitorportal: Set property value by default
When first creating the monitor, correctly set its property value to the
value from the portal, rather than waiting for the portal value to
change to set it.

Signed-off-by: Philip Withnall <pwithnall@endlessos.org>

Fixes: #2481
2021-09-06 18:56:12 +01:00
Philip Withnall
a37b9d8652 gpowerprofilemonitordbus: Fix a crash if no property is cached
It’s not always guaranteed that a property is cached, so handle the case
when it isn’t.

Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
2021-09-06 18:55:04 +01:00
Philip Withnall
28ad07373a gpowerprofilemonitordbus: Fix a memory leak
get_cached_property() returns a new reference.

Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
2021-09-06 18:54:06 +01:00
Philip Withnall
e99ee3588a Merge branch 'revert-cd93c350' into 'main'
Revert "Merge branch 'fix/gclosure-invoke-type-annotation' into 'main'"

Closes #2477

See merge request GNOME/glib!2237
2021-09-06 15:23:54 +00:00
Philip Withnall
5b90f9d088 Merge branch 'wip/hadess/fix-assert-eventually' into 'main'
gio: Fix conditions in memory-monitor test

See merge request GNOME/glib!2240
2021-09-06 13:07:19 +00:00
Bastien Nocera
e1819c42fb gio: Fix conditions in memory-monitor test
We were lucky that this worked in some cases (the test is racy), but we
should actually run the condition check each loop, rather than when the
function is called.

Spotted by Martin Pitt:
96a8c02d24 (r54773831)
2021-09-06 14:46:15 +02:00
Philip Withnall
93ec31e973 Merge branch 'wip/lantw/ci-Use-C.UTF-8-locale-on-FreeBSD-12' into 'main'
ci: Use C.UTF-8 locale on FreeBSD 12

See merge request GNOME/glib!2238
2021-09-06 11:57:56 +00:00
Philip Withnall
f26555b485 Merge branch 'DarkTrick-main-patch-43422' into 'main'
doc: Explicitly said, that no null term. is needed

See merge request GNOME/glib!2219
2021-09-06 11:23:15 +00:00
DarkTrick
3c459b7fd6 doc: Explicitly said, that no null term. is needed 2021-09-06 11:23:14 +00:00
Daniel Șerbănescu
9f327fac39 Update Romanian translation 2021-09-05 09:46:11 +00:00
Boyuan Yang
758948e210 Update Chinese (China) translation 2021-09-04 17:08:58 +00:00
Changwoo Ryu
07f23b9a84 Update Korean translation 2021-09-04 15:00:01 +00:00
Ting-Wei Lan
8b3506bc81 ci: Use C.UTF-8 locale on FreeBSD 12 2021-09-03 01:29:57 +08:00
Aurimas Černius
80ea11e9a8 Updated Lithuanian translation 2021-09-02 15:55:09 +03:00
Jordi Mas
144f25fd24 Update Catalan translation 2021-08-31 06:31:04 +02:00
Evan Welsh
0de8ec87d2 Revert "Merge branch 'fix/gclosure-invoke-type-annotation' into 'main'"
This reverts merge request !2181
2021-08-29 20:56:08 +00:00
Baurzhan Muftakhidinov
a8d3f2e0cf Update Kazakh translation 2021-08-29 17:05:55 +00:00
Fran Dieguez
eafcdd2eb6 Update Galician translation 2021-08-25 06:20:41 +00:00
Asier Sarasua Garmendia
9f7491af68 Update Basque translation 2021-08-21 08:44:21 +00:00
Philip Withnall
10ba1f30eb 2.69.2
Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
2021-08-19 16:13:40 +01:00
Philip Withnall
6ed35f2847 Merge branch 'wip/pwithnall/2456-thread-pool-fix' into 'main'
tests: Rewrite thread-pool test for freeing queued items

Closes #2456

See merge request GNOME/glib!2229
2021-08-19 15:09:06 +00:00
Philip Withnall
0eadf651fb tests: Rewrite thread-pool test for freeing queued items
The previous test was racy: it assumed that not all queued thread pool
jobs would start to be executed before `g_thread_pool_free()` was
called, whereas actually on some systems (particularly BSD ones), they
would all start (or even finish) being executed, and hence the free
function might never be called.

Rewrite the test to:
 • Synchronise the test function and worker thread functions more
   closely.
 • Not bother about ordering the shared and exclusive variants of the
   test differently. That seems to be a hangover from another test
   above.
 • Limit the number of worker threads to 1, rather than 2, since this
   makes the test easier to control.

This has been tested with `--repeat 10000` on Linux, and it succeeds all
of those runs whereas previously it failed quite reliably.

Signed-off-by: Philip Withnall <pwithnall@endlessos.org>

Fixes: #2456
2021-08-19 14:25:24 +01:00
Philip Withnall
b402f66c07 gthreadpool: Remove a dummy item from the queue before freeing
Now that `g_thread_pool_new_full()` can be used to set a user-provided
free function for queue elements, ensure that the internal dummy item
used to wake up the worker threads is removed from the queue before it’s
called.

Signed-off-by: Philip Withnall <pwithnall@endlessos.org>

Helps: #2456
2021-08-19 14:25:24 +01:00
Philip Withnall
51b0cd3ccc Merge branch '2343-async-result-docs' into 'main'
giotypes: Document refcounting of source object for GAsyncReadyCallback

Closes #2343

See merge request GNOME/glib!1988
2021-08-19 11:38:10 +00:00
Philip Withnall
e31aa76045 Merge branch '2316-dbus-session-hardening-again' into 'main'
Revert "gdbus: Use DBUS_SESSION_BUS_ADDRESS if AT_SECURE but not setuid"

Closes #2316

See merge request GNOME/glib!2212
2021-08-19 09:37:26 +00:00
Philip Withnall
4961c1c3b5 Merge branch 'wip/test-fail-convenience' into 'main'
gtestutils: Add more convenience functions

See merge request GNOME/glib!2215
2021-08-19 09:35:48 +00:00
Simon McVittie
052e335500 tests: Make use of g_test_fail_message()
Signed-off-by: Simon McVittie <smcv@collabora.com>
2021-08-19 09:49:11 +01:00
Simon McVittie
a076dbcb68 gtestutils: Allow failing a test with a printf-style message
This allows a pattern like

    g_test_message ("cannot reticulate splines: %s", error->message);
    g_test_fail ();

to be replaced by the simpler

    g_test_fail_printf ("cannot reticulate splines: %s", error->message);

with the secondary benefit of making the message available to TAP
consumers as part of the "not ok" message.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2021-08-19 09:49:11 +01:00
Simon McVittie
26fbd14954 tests: Use g_test_skip_printf()
Signed-off-by: Simon McVittie <smcv@collabora.com>
2021-08-19 09:41:08 +01:00
Simon McVittie
182d9995ca gtestutils: Allow skipping tests with a printf-style message
Forming the g_test_skip() message from printf-style arguments seems
common enough to deserve a convenience function.

g_test_incomplete() is mechanically almost equivalent to g_test_skip()
(the semantics are different but the implementation is very similar),
so give it a similar mechanism for symmetry.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2021-08-19 09:41:08 +01:00
Philip Withnall
ae486f6dc6 Merge branch 'wip/pwithnall/gdbus-names-livelock' into 'main'
tests: Add missing wakeup calls to gdbus-names test

See merge request GNOME/glib!2157
2021-08-17 13:25:55 +00:00
Daniel Mustieles
592d114c50 Updated Spanish translation 2021-08-17 13:31:19 +02:00
Sebastian Dröge
336c747e59 Merge branch 'string-ctors' into 'main'
Annotate the GString constructors

See merge request GNOME/glib!2226
2021-08-17 07:10:54 +00:00
Philip Withnall
96763eca3f Merge branch 'va_copy-docs' into 'main'
Docs: Mention that G_VA_COPY() must be followed by `va_end()`

See merge request GNOME/glib!2224
2021-08-16 20:05:59 +00:00
Avinash Sonawane
31f793b71a Docs: Mention that G_VA_COPY() must be followed by va_end() 2021-08-16 20:05:59 +00:00
Emmanuele Bassi
d5b6c55cfe Annotate the GString constructors
Otherwise the introspection scanner won't recognise them as
constructors, because the GString get_type function has a different
symbol prefix.

See: https://gitlab.gnome.org/GNOME/gobject-introspection/-/issues/399
2021-08-16 20:58:53 +01:00
Philip Withnall
27daa925b6 Merge branch 'implicit' into 'main'
build: Fix implicit declaration of function errors

See merge request GNOME/glib!2225
2021-08-16 17:19:09 +00:00
Anders Jonsson
88cc3202a5 Update Swedish translation 2021-08-14 11:18:34 +00:00
Ryan Schmidt
971310a92c build: Fix implicit declaration of function errors
Include the correct system headers for each test that meson performs.
This allows system capabilities to be detected correctly even if
implicit declaration of functions is considered an error.
2021-08-14 05:20:11 -05:00
Philip Withnall
d6a0e706f0 Merge branch 'wip/hadess/power-profile-monitor-portal' into 'main'
gio: Add portal version of GPowerProfileMonitor

See merge request GNOME/glib!2222
2021-08-13 08:31:14 +00:00