Commit Graph

26944 Commits

Author SHA1 Message Date
Philip Withnall
bd2ccc2f69 Merge branch 'fix-windows-spawn-non-english' into 'main'
spawn-test: Fix running on non-English Windows

See merge request GNOME/glib!3288
2023-02-21 17:49:31 +00:00
Philip Withnall
339aaa3719 Merge branch 'cloexec-audit' into 'main'
Make sure new file descriptors have close-on-exec flag set on them in a race-free way

See merge request GNOME/glib!3283
2023-02-21 12:58:01 +00:00
Maciej S. Szmigiero
0e7bf99ec2 Use "e" mode flag in fopen () calls for race-free setting of the close-on-exec flag
All Unix CRTs examined: glibc, musl, BSDs, Apple libc, Android bionic
ignore unknown fopen () mode flags, so this flag can be added
unconditionally for Unix builds.

Only Windows CRT is intolerant of these, so the single case in
g_dbus_address_connect () where the fopen () call is shared between Unix
and Windows needs appropriate platform-specific handling.

Skipped the call sites in libcharset and xdgmime copylibs.
2023-02-21 12:42:55 +00:00
Maciej S. Szmigiero
3f2e18b07c Use O_CLOEXEC in {g_,}open () calls for race-free setting of the close-on-exec flag
The remaining call sites are either Windows-only, between fork () and
exec () or in xdgmime copylib.

Hope I haven't missed any site.
2023-02-21 12:42:55 +00:00
Maciej S. Szmigiero
0f5d274871 gtestutils: Document that g_test_trap_fork () won't get close-on-exec fix
We don't want to update this function in case some crusty old third party
code might be relying on its current behavior.
Also, it is deprecated anyway and no code should be using it.
2023-02-21 12:42:55 +00:00
Maciej S. Szmigiero
dd36ee0abf gtestdbus: Use g_unix_open_pipe_internal () for creating pipes
This attempts to create the pipes with race-free setting of the
close-on-exec flag.
2023-02-21 12:42:55 +00:00
Maciej S. Szmigiero
05d2a1d097 gbacktrace: Use g_unix_open_pipe_internal () for creating pipes
This attempts to create the pipes with race-free setting of the
close-on-exec flag.
2023-02-21 12:42:55 +00:00
Maciej S. Szmigiero
14b5207bfa Add g_unix_open_pipe_internal () for pipes with the close-on-exec flag
Based on the existing g_unix_open_pipe () but for internal use where
returning a raw errno is needed, not a GError.
2023-02-21 12:42:55 +00:00
Daniel
ea87d78c7f Updated Spanish translation 2023-02-21 11:52:42 +01:00
Chun-wei Fan
601fce37cb spawn-test: Fix running on non-English Windows
Use SetThreadUILocale() to set the UI locale to English (United States)
(en-US), and use SetConsoleOutputCP() to set the code page to en-US (codepage
437) so that g_win32_error_message() will always return the error messages in
English and ensure that the program runs in English as well, so that we
can ensure that the expected error message string can match up
regardless of the languge version of Windows that is running.
2023-02-21 16:34:31 +08:00
Philip Withnall
a8e8b742e7 Merge branch 'list-store-find-with-equal-func-null-item' into 'main'
Allow passing a `NULL` item to `g_list_store_find_with_equal_func()`

See merge request GNOME/glib!3284
2023-02-20 12:37:25 +00:00
Sebastian Dröge
7c5e930170 Allow passing a NULL item to g_list_store_find_with_equal_func()
The `equal_func` closure can already have all required information
available without the item, and passing the item via the closure instead
of an explicit parameter is more natural for languages that have a
concept of closures that can capture variables.
2023-02-20 10:16:11 +02:00
Aurimas Černius
5202d1daa9 Update Lithuanian translation 2023-02-19 19:13:55 +00:00
Maciej S. Szmigiero
3dc77fef24 gsocket: Use accept4 () for race-free setting of the close-on-exec flag
The code was already setting the close-on-exec flag for the new socket,
just in a racy way.
2023-02-19 16:47:13 +01:00
Tim Sabsch
1c305c4fb0 Update German translation
(cherry picked from commit 290c4b7709)
2023-02-18 14:48:25 +00:00
Sabri Ünal
8e8b90bcf8 Update Turkish translation 2023-02-18 09:53:40 +00:00
Philip Withnall
02a00a831c Merge branch 'fix-spawn-test-on-windows' into 'main'
spawn-test: Use an absolute path to the system sort.exe on Windows

See merge request GNOME/glib!3282
2023-02-17 18:04:02 +00:00
Luca Bacci
5631a6b9eb spawn-test: Remove the can_fail attribute 2023-02-17 15:57:49 +01:00
Luca Bacci
390dcc92d8 spawn-test: Use an absolute path to the system sort.exe on Windows
This way we avoid executing other kinds of sort.exe which are
available in PATH. This is useful especially on MSYS2 which
provides coreutils sort.
2023-02-17 15:29:00 +01:00
Yaron Shahrabani
f4e323dd40 Update Hebrew translation 2023-02-17 09:52:11 +00:00
Hugo Carvalho
30202e9b59 Update Portuguese translation 2023-02-16 18:34:44 +00:00
Fran Dieguez
6ed23087b5 Update Galician translation 2023-02-16 12:07:58 +00:00
Philip Withnall
39eea23825 Merge branch 'implicit_conversion' into 'main'
g_string_append_len_inline: fix implicit conversion changes signedness

Closes #2919

See merge request GNOME/glib!3274
2023-02-16 11:19:38 +00:00
Aleš Matěj
f6d6800962 g_string_append_len_inline: fix implicit conversion changes signedness
For: https://gitlab.gnome.org/GNOME/glib/-/issues/2919
2023-02-16 10:57:48 +00:00
Philip Withnall
e784bedd40 Merge branch 'gitlab-ci-enable-python-utf8-mode-for-windows' into 'main'
Enable Python UTF-8 mode for Windows CI jobs

Closes #2915

See merge request GNOME/glib!3278
2023-02-16 10:55:47 +00:00
Марко Костић
8376928c6a Update Serbian translation 2023-02-16 09:59:25 +00:00
Kukuh Syafaat
12df145382 Update Indonesian translation 2023-02-16 03:30:05 +00:00
Luca Bacci
c31eeb0b64 Enable Python UTF-8 mode for Windows CI jobs
It will become the default in Python 3.15 and makes things
more consistent across Unix and Windows platforms.

Fixes https://gitlab.gnome.org/GNOME/glib/-/issues/2915
2023-02-15 19:28:46 +01:00
Yuri Chornoivan
ffbcba1f63 Update Ukrainian translation 2023-02-15 17:37:36 +00:00
Philip Withnall
40fc22f81f Merge branch 'no-buffered-reads-during-server-auth' into 'main'
gdbus: Never buffer reads during server authentication

Closes #2916

See merge request GNOME/glib!3272
2023-02-15 16:29:38 +00:00
Marius Vollmer
8f02681f6e gdbus: Never buffer reads during server authentication
Otherwise, the content of the buffer is thrown away when switching
from reading via a GDataInputStream to unbuffered reads when waiting
for the "BEGIN" line.

(The code already tried to protect against over-reading like this by
using unbuffered reads for the last few lines of the auth protocol,
but it might already be too late at that point.  The buffer of the
GDataInputStream might already contain the "BEGIN" line for example.)

This matters when connecting a sd-bus client directly to a GDBus
client.  A sd-bus client optimistically sends the whole auth
conversation in one go without waiting for intermediate replies.  This
is done to improve performance for the many short-lived connections
that are typically made.
2023-02-15 14:33:15 +00:00
Simon McVittie
c83fd0bce7 Merge branch 'revert-revert-revert-i-hate-ci' into 'main'
Revert "Revert "tests: Temporarily disable socket test due to a kernel bug""

See merge request GNOME/glib!3273
2023-02-15 13:59:25 +00:00
Philip Withnall
bde724e5ac Revert "Revert "tests: Temporarily disable socket test due to a kernel bug""
This reverts commit 27bee8fe5d.

Inevitably, despite testing the CI multiple times before merging commit
27bee8fe, the CI is now failing again in the `socket` test due to (what
I continue to assume is) the kernel regression:

https://gitlab.gnome.org/martinpitt/glib/-/jobs/2585332

In order to unblock development on `main` expediently, I guess I’ll just
revert the revert.

Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
Reopens: #2879
2023-02-15 13:23:13 +00:00
Philip Withnall
0816156cfe Merge branch 'wip/smcv/garray-endian' into 'main'
array-test: Don't rely on endianness of multi-byte numbers

Closes #2918

See merge request GNOME/glib!3270
2023-02-15 13:02:48 +00:00
Fran Dieguez
66b1f4e99a Update Galician translation 2023-02-14 20:05:09 +00:00
Philip Withnall
5af1e3d8c2 Merge branch 'wip/pwithnall/revert-disabling-socket-test-maybe' into 'main'
Revert "tests: Temporarily disable socket test due to a kernel bug"

Closes #2879 and Infrastructure/Infrastructure#981

See merge request GNOME/glib!3269
2023-02-14 13:19:58 +00:00
Hugo Carvalho
edb5df31e8 Update Portuguese translation 2023-02-14 11:58:49 +00:00
Simon McVittie
854fd11422 array-test: Don't rely on endianness of multi-byte numbers
The array is an array of bytes in this part of the test, so we need to
append a single byte. Previously we were reusing val (a size_t variable)
from earlier in the test, but because g_array_append_val passes the value
by reference, appending a multi-byte number to an array of bytes will
take the first byte of the number's memory representation, which has the
desired value on little-endian CPUs but is zero on big-endian, leading
to a test failure.

Resolves: https://gitlab.gnome.org/GNOME/glib/-/issues/2918
Bug-Debian: https://bugs.debian.org/1031271
Signed-off-by: Simon McVittie <smcv@collabora.com>
2023-02-14 10:42:08 +00:00
Ekaterine Papava
23a839159a Update Georgian translation 2023-02-14 07:33:25 +00:00
Kukuh Syafaat
bda564d68c Update Indonesian translation 2023-02-14 02:35:10 +00:00
Aurimas Černius
25cc5bc6ff Update Lithuanian translation 2023-02-13 20:46:17 +00:00
Emin Tufan Çetin
10c8149c23 Update Turkish translation 2023-02-13 19:38:41 +00:00
Philip Withnall
27bee8fe5d Revert "tests: Temporarily disable socket test due to a kernel bug"
This reverts commit 1507585869.

Maybe it works now? It will work as soon as the CI host kernel is
updated.

Fixes: #2879
2023-02-13 19:35:30 +00:00
Yuri Chornoivan
6fec7720da Update Ukrainian translation 2023-02-13 19:30:44 +00:00
Philip Withnall
b65044c52b
2.75.3
Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
2023-02-13 19:02:58 +00:00
Philip Withnall
b135c1b1c1 Merge branch 'wip/pwithnall/test' into 'main'
po: Add missing header file to POTFILES.in

See merge request GNOME/glib!3268
2023-02-13 18:29:35 +00:00
Philip Withnall
1c60821897 po: Add missing header file to POTFILES.in
Change originally by Piotr in !3257, but the CI has problems with
his name in the author field. Since this change is blocking a release,
I have decided to merge it under my name instead, so that it lands sooner.

In parallel, we are trying to figure out what is broken with the CI so
this does not happen again.

Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
2023-02-13 17:40:09 +00:00
Philip Withnall
f5b2aeaf39 Merge branch '2876-api-public-or-internal' into 'main'
gutils: Make g_find_program_for_path() a proper private API

Closes #2876

See merge request GNOME/glib!3267
2023-02-13 17:31:28 +00:00
Philip Withnall
a359e56f58 gutils: Remove public API decorator from g_set_user_dirs()
It’s a private API, and is not meant to be exposed in the public API.
Since it’s only used internally within libglib, we don’t have to expose
it in the public symbol table, so drop the decorator.

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

Helps: #2876
2023-02-13 16:14:10 +00:00
Philip Withnall
438bd5cfa1 gutils: Make g_find_program_for_path() a proper private API
It’s not meant to be exposed publicly yet (we’re not ready to stabilise
it), but it was incorrectly decorated with `GLIB_AVAILABLE_IN_2_76`.

We can’t remove the decorator and use it that way, as it’s called in
libgio, so we have to expose it using `GLIB_PRIVATE_CALL()`.

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

Fixes: #2876
2023-02-13 16:12:07 +00:00