Commit Graph

27696 Commits

Author SHA1 Message Date
Philip Withnall
5bc6c2035a gio: Rename GTK_USE_PORTAL to GIO_USE_PORTALS
The `GTK_USE_PORTAL` environment variable has started to be misused by
users, which is causing deployment issues (such as portal services
themselves ending up being forced to use portals, which is never going
to work).

Try and sidestep users’ broken configurations by renaming the
environment variable, and also separating it from the old GTK
environment variable, since the GLib one affects a lot more processes.
This environment variable is meant to be used for
debugging and development, and never in production.

GTK already renamed their environment variable in
https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4829, so keeping the
`GTK_USE_PORTAL` name in GLib doesn’t make sense anyway.

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

Fixes: #3107
2023-10-02 15:00:23 +01:00
Emmanuele Bassi
722dba7ccf Merge branch 'ebassi/fundamental-max-value' into 'main'
Add value annotation to G_TYPE_FUNDAMENTAL_MAX

See merge request GNOME/glib!3596
2023-10-02 01:12:11 +00:00
Emmanuele Bassi
70585f9a48 Add value annotation to G_TYPE_FUNDAMENTAL_MAX
The introspection parser isn't good enough to expand the shift symbol,
which means G_TYPE_FUNDAMENTAL_MAX is evaluated as (255 << 0).

We can use the `(value)` annotation to force the symbol value in the
introspection data.

See: GNOME/gobject-introspection#473
2023-10-02 01:29:50 +01:00
Emmanuele Bassi
7ed14113e7 Merge branch 'fix-gutils-user-database-test-on-macos' into 'main'
Fix gutils-user-database test on macOS

See merge request GNOME/glib!3594
2023-10-02 00:23:34 +00:00
Sabri Ünal
6f9abcdeef Update Turkish translation 2023-10-01 18:29:58 +00:00
Luca Bacci
991cb9ef8c tests/gutils-user-database: Fix test on macOS
Use DYLD interposing on macOS
2023-09-27 16:19:44 +02:00
Luca Bacci
91b41f5234 tests/gutils-user-database: do not hardcode library name
Use build_tgt.full_path() and import('fs').name()
2023-09-26 12:10:47 +02:00
Kristjan SCHMIDT
41c9c51080 Update Esperanto translation 2023-09-19 21:57:32 +00:00
Rūdolfs Mazurs
5a67a8f6c5 Update Latvian translation 2023-09-18 14:10:08 +00:00
Rafael Fontenelle
af912ba017 Update Brazilian Portuguese translation
(cherry picked from commit 13bc82d016)
2023-09-18 01:28:01 +00:00
Daniel Rusek
9e36642bbb Update Czech translation 2023-09-17 12:58:56 +00:00
Artur S0
508dba1ed8 Update Russian translation 2023-09-16 09:29:27 +00:00
Boyuan Yang
fb7a5eee97 Update Chinese (China) translation 2023-09-15 08:28:12 +00:00
Philip Withnall
f51f40c440 Merge branch 'find-test-program-freebsd' into 'main'
Fix test_find_program on FreeBSD

See merge request GNOME/glib!3580
2023-09-13 11:21:07 +00:00
Philip Withnall
1f9aafe5d5 Merge branch 'cheri-int-cast-warning-fix' into 'main'
Fixes for integer cast warnings when targeting CHERI

See merge request GNOME/glib!3579
2023-09-13 11:19:30 +00:00
Milo Casagrande
771b4ed865 Update Italian translation 2023-09-13 07:25:53 +00:00
Alex Richardson
25ae9f59e8 Fix test_find_program on FreeBSD
On FreeBSD /home is generally a symlink to /usr/home, so the relative
resolves to /usr/bin instead of /bin and `sh` can only be found in /bin
on FreeBSD. Fix this by resolving symlinks in the CWD first.
2023-09-12 21:51:15 -07:00
Alexandre Franke
d1ba2b421f Update French translation 2023-09-12 20:11:16 +00:00
Alex Richardson
2787e59a77 CHERI: silence two pedantic warnings
When building for CHERI with additional warning flags, implicitly
converting uintptr_t to an integer type that can't store a pointer
results in a compiler warnings. Silence two of these by adding
explicit casts.
2023-09-12 10:23:20 -07:00
Alex Richardson
403f7a10dc GSIZE_TO_POINTER(): appease stricter compilers
Some compilers (e.g. CHERI LLVM) warn when casting a non-intptr_t integer
type to a pointer. The GSIZE_TO_POINTER() macro thus triggers warnings
which can be silence by casting to guintptr before gpointer.

NB: This macro must not be used to create valid pointers from a integer.
2023-09-12 10:23:20 -07:00
Philip Withnall
8af4f494b1 Merge branch 'avoid-temporarily-oob-pointer' into 'main'
guniprop.c: Avoid creating (temporarily) out-of-bounds pointers

See merge request GNOME/glib!3576
2023-09-12 10:36:15 +00:00
Philip Withnall
0398518d5e Merge branch '3105-threaded-resolver-refs' into 'main'
gthreadedresolver: Fix race between source callbacks and finalize

Closes #3105

See merge request GNOME/glib!3575
2023-09-12 10:25:13 +00:00
Alex Richardson
ed6cc1ddb2 guniprop.c: Avoid creating (temporarily) out-of-bounds pointers
This is detected by UBSan on CHERI systems (e.g. Arm Morello) and could
result in non-derefenceable pointers when compiled without optimizations.
2023-09-11 22:50:05 -07:00
Philip Withnall
82c764ce2e gthreadedresolver: Fix race between source callbacks and finalize
I had thought that because `g_source_destroy()` was called for the two
sources (cancel and timeout) in the `GTask` finalize function for a
threaded resolver operation, that it would be fine to use a plain
pointer in the source callbacks to point to the `GTask`.

That turns out to not be true: because the source callbacks are executed
in the GLib worker thread, and the `GTask` can be finalized in another
thread, it’s possible for a source callback (e.g. `cancelled_cb()`) to
be scheduled in the worker thread, then for the `GTask` to be finalized,
and then the source callback to continue execution and find itself
doing a use-after-free.

Fix that by using a weak ref to the `GTask` in the source callbacks,
rather than a plain pointer.

Signed-off-by: Philip Withnall <philip@tecnocode.co.uk>

Fixes: #3105
2023-09-11 16:02:15 +01:00
Matej Urbančič
cfab7d1d48 Update Slovenian translation 2023-09-11 13:47:39 +00:00
Daniel Mustieles
a4a356e137 Updated Spanish translation 2023-09-11 10:16:42 +02:00
Jordi Mas i Hernandez
28e6e27acf Update Catalan translation 2023-09-11 06:51:39 +00:00
Philip Withnall
3c543ef69f
2.78.0
Signed-off-by: Philip Withnall <philip@tecnocode.co.uk>
2023-09-08 14:42:18 +01:00
Ekaterine Papava
e1ea1c549a Update Georgian translation 2023-09-08 12:09:06 +00:00
Asier Sarasua Garmendia
69e2007f68 Update Basque translation 2023-09-07 15:32:54 +00:00
Ekaterine Papava
d1660d06bd Update Georgian translation 2023-09-07 01:22:10 +00:00
Anders Jonsson
0cc4109dc8 Update Swedish translation 2023-09-06 23:09:36 +00:00
Michael Catanzaro
a366189062 Merge branch 'keyfile-invalid-escapes' into 'main'
gkeyfile: Temporarily re-allow invalid escapes when parsing strings

Closes #3095

See merge request GNOME/glib!3565
2023-09-06 14:02:58 +00:00
Philip Withnall
a2a5d91354 Merge branch 'fix-gutils-user-database' into 'main'
Fix gutils-user-database unit test

See merge request GNOME/glib!3564
2023-09-06 12:11:49 +00:00
Sebastian Wilhelmi
f7d930a58b Fix gutils-user-database unit test
The gutils-user-database.c is broken in two ways and currently doesn't test anything:

* It only overrides getpwuid, where the implementation used getpwnam_r if it exist, which should be every system for at least 20 years.
* It only partly cargo-culted setting the environment for the local and installed tests, but failed to actually set the environment for either.
2023-09-06 12:11:49 +00:00
Bruce Cowan
9e979ce749 Update British English translation
(cherry picked from commit 3cc56a0e8e)
2023-09-06 11:33:45 +00:00
Philip Withnall
4a96727642 gkeyfile: Temporarily re-allow invalid escapes when parsing strings
Before commit 71b7efd08a, `GKeyFile`
incorrectly allowed invalid escape sequences: it would treat the
sequence as a literal, set a `GError`, but not return failure from the
function. So if a caller was explicitly checking for returned `GError`s,
they could detect the invalid escape; but if they were just checking the
function’s return value, they’d miss it.

This is not correct use of `GError`, and the [Desktop Entry
Spec](https://specifications.freedesktop.org/desktop-entry-spec/latest/ar01s04.html)
doesn’t allow for invalid escape sequences to be accepted. So it’s wrong
in both ways.

However, the commit above changed this behaviour without realising it,
quite close to the 2.78 stable release deadline. There are numerous key
files in the wild which use invalid escape sequences, and it’s too late
in the cycle to ‘break’ parsing of all of them.

So, for now, revert to the old behaviour for invalid escape sequences,
and give people another cycle to adapt to the changes. This will likely
mean they end up calling `g_key_file_get_value()` rather than
`g_key_file_get_string()`. See
https://gitlab.gnome.org/GNOME/glib/-/issues/3098 for tracking
re-enabling the error handling for invalid escape sequences.

Signed-off-by: Philip Withnall <philip@tecnocode.co.uk>

Fixes: #3095
See: #3098
2023-09-06 12:08:56 +01:00
Andika Triwidada
efc74ca36c Update Indonesian translation 2023-09-06 06:35:00 +00:00
Changwoo Ryu
346196e6aa Update Korean translation 2023-09-06 04:17:39 +00:00
Balázs Úr
e2c37bd78b Update Hungarian translation 2023-09-05 18:35:27 +00:00
Michael Catanzaro
fcba22cfb9 Merge branch 'pr/fix_install_tags' into 'main'
meson: fix `gnetworking.h` install tag

See merge request GNOME/glib!3561
2023-09-04 12:58:59 +00:00
Philip Withnall
37309f165e Merge branch 'gdbplugin' into 'main'
gdb: Workaround optimized out quark_seq_id

See merge request GNOME/glib!3559
2023-09-04 11:29:57 +00:00
Thibault Saunier
033b472432 gdb: Workaround optimized out quark_seq_id 2023-09-04 11:29:57 +00:00
Philip Withnall
2885999394 Merge branch 'gthread-exit-noreturn' into 'main'
gthread: Annotate g_thread_exit() with G_NORETURN

See merge request GNOME/glib!3562
2023-09-04 11:07:56 +00:00
Alan Mortensen
792682be9c Update Danish translation 2023-09-04 05:43:29 +00:00
Vojtěch Perník
8bbcdb03e5 Update Czech translation 2023-09-03 12:38:40 +00:00
Danial Behzadi
8f9b8c9fa2 Update Persian translation 2023-09-02 20:49:36 +00:00
Yosef Or Boczko
3df4782d92 Update Hebrew translation 2023-09-02 18:04:43 +00:00
Piotr Drąg
3f2bf81ca0 Update Polish translation 2023-09-02 13:39:13 +00:00
Emin Tufan Çetin
3fda0de211 Update Turkish translation 2023-09-02 11:57:48 +00:00