https://github.com/GNOME/glib

sort by:
Revision Author Date Message Commit Date
120e643 genviron: Message if g_setenv()/g_unsetenv() are used after threads spawned g_setenv() and g_unsetenv() can never be thread-safe, so emit a message if they are used after any threads have been spawned. This can’t catch interactions between setenv() and g_thread_new(), or between g_setenv() and pthread_create(), but it’ll catch most misbehaviour in GLib-centric code. Currently, the message is a `g_debug()` call. Eventually, I’d like to upgrade it to a `g_warning()`, but there are a number of GLib tests which call g_setenv() after threads have been created, and they need to be fixed first. Emitting a `g_debug()` message gives people an opportunity to start fixing their code. Signed-off-by: Philip Withnall <withnall@endlessm.com> Helps: #715 21 January 2020, 12:07:17 UTC
6271b5e gthread: Count how many threads have been started This will be used in a following commit to warn if setenv() is used after another thread has been created. Signed-off-by: Philip Withnall <withnall@endlessm.com> Helps: #715 21 January 2020, 11:56:34 UTC
5d32b99 Merge branch '604-dbus-name-watching-simplification' into 'master' gdbusnamewatching: Check cancellation of a watch before calling back Closes #604 See merge request GNOME/glib!1336 21 January 2020, 11:15:36 UTC
5c7a88e Merge branch '978-dbus-signal-emission-race' into 'master' Fix race between D-Bus signal emission and unsubscription Closes #978 See merge request GNOME/glib!1332 21 January 2020, 10:43:39 UTC
73a33e5 gdbusnamewatching: Check cancellation of a watch before calling back It’s possible for `g_bus_unwatch_name()` to be called after a name-appeared or name-vanished handler has been scheduled to be called in another thread, but before that callback is actually invoked. If so, the subscribing thread will receive a callback after it’s called `g_bus_unwatch_name()`, which is unexpected and could cause bugs. Double-check `client->cancelled` in the target thread before actually invoking the callback. Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #604 20 January 2020, 19:19:30 UTC
7979257 gdbusnamewatching: Remove a redundant function argument It was always set to `FALSE`. This introduces no functional changes. Signed-off-by: Philip Withnall <withnall@endlessm.com> Helps: #604 20 January 2020, 19:19:30 UTC
33ee190 Merge branch 'wip/pwithnall/thread-settings-fixes' into 'master' gthread: Ensure GThreadSchedulerSettings is always defined See merge request GNOME/glib!1334 20 January 2020, 19:06:28 UTC
df0610a ci: Use --wrap-mode=default on macOS CI runner (only) This is a partial revert of commit 595e12b5fb for macOS only, since we can’t run a VM image on that CI runner, and hence can’t easily pre-populate it with cached dependencies. Signed-off-by: Philip Withnall <withnall@endlessm.com> 20 January 2020, 15:30:44 UTC
03380a4 tests: Fix header inclusion in win32-appinfo.c This fixes the following build failure on FreeBSD: ``` In file included from ../gio/tests/win32-appinfo.c:24: /usr/include/malloc.h:3:2: error: "<malloc.h> has been replaced by <stdlib.h>" #error "<malloc.h> has been replaced by <stdlib.h>" ``` Hopefully it doesn’t break Windows. Signed-off-by: Philip Withnall <withnall@endlessm.com> 20 January 2020, 15:22:03 UTC
37b1acd gdbusconnection: Document threading and refcounting for signals This is essentially a mini writeup of #978. Signed-off-by: Philip Withnall <withnall@endlessm.com> Helps: #978 20 January 2020, 15:13:52 UTC
a434bfb gdbusnameowning: Fix race between connection shutdown and NameLost As with all D-Bus signal subscriptions, it’s possible for a signal callback to be invoked in one thread (T1) while another thread (T2) is unsubscribing from that signal. In this case, T1 is the main thread, and T2 is the D-Bus connection worker thread which is unsubscribing all signals as it’s in the process of closing. Due to this possibility, all `user_data` for signal callbacks needs to be referenced outside the lifecycle of the code which subscribes/unsubscribes the signal. In other words, it’s not safe to subscribe to a signal, store the subscription ID in a struct, unsubscribe from the signal when freeing the struct, and dereference the struct in the signal callback. The data passed to the signal callback has to have its own strong reference. Instead, it’s safe to subscribe to a signal and add a strong reference to the struct, store the subscription ID in that struct, and unsubscribe from the signal when the last external reference to your struct is dropped. That unsubscription should break the refcount cycle between the signal connection and the struct, and allow the struct to be completely freed. Only with that approach is it safe to dereference the struct in the signal callback, if there’s any possibility that the signal might be unsubscribed from a separate thread. The tests need specific additional main loop cycles to completely emit the NameLost signal callback. Ideally they need refactoring, but this will do (1000 test cycles passed). Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #978 20 January 2020, 15:13:52 UTC
4ec2175 gdbusconnection: Tidy up unsubscription code This just removes a now-redundant intermediate array. This means that the `SignalSubscriber` instances are now potentially freed a little sooner, inside the locked segment, but they are already careful to only call their `user_data_free_func` in the right thread. So that should not deadlock. Signed-off-by: Philip Withnall <withnall@endlessm.com> Helps: #978 20 January 2020, 15:13:52 UTC
30c8eb8 gthread: Ensure GThreadSchedulerSettings is always defined It’s now used unconditionally for `shared_thread_scheduler_settings` in `gthreadpool.c`, so it actually needs to have a storage definition. Fixes a build failure on FreeBSD. Signed-off-by: Philip Withnall <withnall@endlessm.com> 20 January 2020, 14:39:52 UTC
130455b gdbusconnection: Fix race when emitting D-Bus signal callbacks Instead of storing a copy of the `callback` and `user_data` from a `SignalSubscriber` in a `SignalInstance` struct (which is the closure for signal callback data as it’s sent from the D-Bus worker thread to the thread which originally subscribed to a signal), store a strong reference to the `SignalSubscriber` struct itself. This keeps the `SignalSubscriber` alive until the emission is complete, which ensures that the `user_data` is not freed prematurely. It also slightly reduces the allocation size of `SignalInstance` (not that it matters). This is threadsafe because the fields in `SignalSubscriber` are all immutable after construction. Signed-off-by: Philip Withnall <withnall@endlessm.com> Helps: #978 20 January 2020, 14:30:39 UTC
bee27dd gdbusconnection: Tidy up destroy notification for signal subscriptions Tie the destruction of the `user_data` to the destruction of the `SignalSubscriber` struct. This is tidier, and ensures that the fields in `SignalSubscriber` are all immutable after being set, so the structure can safely be used across threads without locking. It doesn’t matter which thread we call `call_destroy_notify()` in, since it always defers calling `user_data_free_func` to the user-provided `GMainContext`. Signed-off-by: Philip Withnall <withnall@endlessm.com> Helps: #978 20 January 2020, 14:30:39 UTC
9b1c8d7 gdbusconnection: Allocate SignalSubscriber structs individually The `SignalSubscriber` structs contain the callback and `user_data` of each subscriber to a signal, along with the `guint id` token held by that subscriber to identify their subscription. There are one or more `SignalSubscriber` structs for a given signal match rule, which is represented as a `SignalData` struct. Previously, the `SignalSubscriber` structs were stored in a `GArray` in the `SignalData` struct, to reduce the number of allocations needed when subscribing to a signal. However, this means that a `SignalSubscriber` struct cannot have a lifetime which exceeds the `SignalData` which contains it. In order to fix the race in #978, one thread needs to be able to unsubscribe from a signal (destroying the `SignalData` struct) while zero or more other threads are in the process of calling the callbacks from a previous emission of that signal (using the callback and `user_data` from zero or more `SignalSubscriber` structs). Multiple threads could be calling callbacks because callbacks are invoked in the `GMainContext` which originally made a subscription, and GDBus supports subscribing to a signal from multiple threads. In that case, the callbacks are dispatched to multiple threads. In order to allow the `SignalSubscriber` structs to outlive the `SignalData` which contained their old match rule, store them in a `GPtrArray` in the `SignalData` struct, and refcount them individually. This commit in itself should make no functional changes to how GDBus works, but will allow following commits to do so. Signed-off-by: Philip Withnall <withnall@endlessm.com> Helps: #978 20 January 2020, 14:30:39 UTC
e1cf40a glib.supp: Ignore the one-off GTask thread pool allocation Signed-off-by: Philip Withnall <withnall@endlessm.com> 20 January 2020, 11:24:15 UTC
fda1c65 Merge branch 'w32-gstat-ino-master' into 'master' W32: Correctly set st_ino when doing private stat() See merge request GNOME/glib!1330 20 January 2020, 10:49:23 UTC
adee3b3 Merge branch 'appinfo-rundll32' into 'master' Add rundll32 support to GAppInfo Closes #1932 See merge request GNOME/glib!1259 20 January 2020, 10:36:29 UTC
2a0b1d8 Merge branch 'threadpool-sched-getattr-runtime-check' into 'master' Add runtime checks and a fallback if we can't get the thread scheduler settings Closes #2007 See merge request GNOME/glib!1327 20 January 2020, 10:14:11 UTC
3fd0699 Update Catalan translation 19 January 2020, 21:20:27 UTC
9b232fa W32: Correctly set st_ino when doing private stat() 19 January 2020, 16:57:39 UTC
d1a3be5 Remove trailing comma from SYS_sched_getattr meson check 19 January 2020, 08:48:33 UTC
012660b Add runtime checks and a fallback if we can't get the thread scheduler settings On Linux the sched_getattr syscall might be available at compile-time but not actually work at runtime (e.g. because an older kernel is running or valgrind is used). Instead of killing the process, return FALSE and handle this gracefully at runtime with some fallback code. Fixes https://gitlab.gnome.org/GNOME/glib/issues/2007 19 January 2020, 08:47:52 UTC
457ea97 Merge branch 'threadpool-sched-getattr' into 'master' Check for SYS_sched_getattr before using it unconditionally See merge request GNOME/glib!1325 17 January 2020, 07:40:38 UTC
60dc7e6 Merge branch 'style-check-docs' into 'master' ci: Add some documentation to the style check CI test See merge request GNOME/glib!1324 16 January 2020, 14:19:27 UTC
8b1f24f Check for SYS_sched_getattr before using it unconditionally Really old versions of Linux don't have yet. In that case fall back to the fallback code. See https://gitlab.gnome.org/GNOME/glib/commit/8aeca4fa647bfd0f35c4a86b1e6ca6e955519ca5#note_686823 16 January 2020, 14:02:39 UTC
bc77510 Merge branch 'ci-nodownload' into 'master' ci: Avoid downloading subprojects for each job See merge request GNOME/glib!388 16 January 2020, 13:54:24 UTC
65541f1 ci: Add some documentation to the style check CI test Signed-off-by: Philip Withnall <withnall@endlessm.com> 16 January 2020, 13:48:56 UTC
3499bd7 Merge branch 'issue-1998-gsettings-schema-dir-env-var-multiple-dirs' into 'master' Support multiple directories in GSETTINGS_SCHEMA_DIR Closes #1998 See merge request GNOME/glib!1315 16 January 2020, 11:16:13 UTC
809a921 Support multiple directories in GSETTINGS_SCHEMA_DIR This adds support for specifying multiple directories in the GSETTINGS_SCHEMA_DIR environment variable by separating the values using G_SEARCHPATH_SEPARATOR_S (colon on UNIX-like systems). While programs could already register multiple custom GSettings schema directories, it was not possible to achieve the same without writing custom code, e.g. when using the gsettings command line tool. Fixes #1998. 16 January 2020, 10:20:34 UTC
321fea1 Merge branch 'wip/muktupavels/notifications' into 'master' gfdonotificationbackend: remove notifications when bus name vanishes See merge request GNOME/glib!1317 16 January 2020, 06:52:16 UTC
595e12b ci: Pass --wrap-mode=nodownload to every task The CI should not waste resources in downloading subprojects for each task. It should also not rely on external hosts to be available. Windows case will be handled in MR #402 by migrating to docker. 16 January 2020, 02:36:57 UTC
5f99781 ci: Update all docker images 16 January 2020, 02:36:57 UTC
b077c14 ci: Cache subprojects in docker images 16 January 2020, 02:36:57 UTC
8661d94 ci: Install some missing packages in fedora docker image 16 January 2020, 02:36:57 UTC
5daad37 ci: Use variables for docker images 16 January 2020, 02:36:57 UTC
c0a019c Merge branch 'threadpool-inherit-prio' into 'master' GThreadPool - Don't inherit thread priorities when creating new threads Closes #1834 See merge request GNOME/glib!1113 15 January 2020, 21:56:26 UTC
8aeca4f GThreadPool - Don't inherit thread priorities when creating new threads By default (on POSIX) we would be inheriting thread priorities from the thread that pushed a new task on non-exclusive thread pools and causes a new thread to be created. This can cause any non-exclusive thread pool to accidentally contain threads of different priorities, or e.g. threads with real-time priority. To prevent this, custom handling for setting the scheduler settings for Linux and Windows is added and as a fallback for other platforms a new thread is added that is responsible for spawning threads for non-exclusive thread pools. Fixes https://gitlab.gnome.org/GNOME/glib/issues/1834 15 January 2020, 21:18:33 UTC
8e82d54 Merge branch 'gutils-crash' into 'master' Fix crash in gutils when application is prevented access to passwd file See merge request GNOME/glib!1309 15 January 2020, 18:14:00 UTC
9d4d5df GWin32AppInfo: fix a potential memory leak Make sure that hndexe_fc_basename is only allocated before it is actually used. 15 January 2020, 18:04:14 UTC
9f070db GWin32AppInfo: Support rundll32-using applications 1) When parsing the executable name out of the command line, see if the executable is rundll32.exe. If that is the case, use the DLL name from its first argument as the "executable" (this is used only for matching, and Windows Registry matches these programs by their DLLs, so this is correct; for running the application GLib would still use the command line, with rundll32). 2) If an app runs with rundll32, ensure that rundll32 arguments can be safely quoted. Otherwise GLib will break them with its protective quotation. 15 January 2020, 18:04:14 UTC
93784fb Merge branch 'codegen-allow-interactive-auth' into 'master' gdbus-codegen: Add a GDBusCallFlags arg to method calls See merge request GNOME/glib!1286 15 January 2020, 18:01:52 UTC
a711d59 Merge branch 'tz' into 'master' gtimezone: fix parsing of Julian day in POSIX TZ format Closes #1999 See merge request GNOME/glib!1314 15 January 2020, 17:57:16 UTC
2a605f6 gdbus-codegen: Add call_flags and timeout_msec args Currently the code generated by gdbus-codegen uses G_DBUS_CALL_FLAGS_NONE in its D-Bus calls, which occur for each method defined by the input XML, and for proxy_set_property functions. This means that if the daemon which implements the methods checks for G_DBUS_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION and only does interactive authorization if that flag is present, users of the generated code have no way to cause the daemon to use interactive authorization (e.g. polkit dialogs). If we simply changed the generated code to always use G_DBUS_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION, its users would have no way to disallow interactive authorization (except for manually calling the D-Bus method themselves). So instead, this commit adds a GDBusCallFlags argument to method call functions. Since this is an API break which will require changes in projects using gdbus-codegen code, the change is conditional on the command line argument --glib-min-version having the value 2.64 or higher. The impetus for this change is that I'm changing accountsservice to properly respect G_DBUS_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION, and libaccountsservice uses generated code for D-Bus method calls. So these changes will allow libaccountsservice to continue allowing interactive authorization, and avoid breaking any users of it which expect that. See https://gitlab.freedesktop.org/accountsservice/accountsservice/merge_requests/46 It might make sense to also let GDBusCallFlags be specified for property set operations, but that is not needed in the case of accountsservice, and would require significant work and breaking API in multiple places. Similarly, the generated code currently hard codes -1 as the timeout value when calling g_dbus_proxy_call*(). Add a timeout_msec argument so the user of the generated code can specify the timeout as well. Also, test this new API. In gio/tests/codegen.py we test that the new arguments are generated if and only of --glib-min-version is used with a value greater than or equal to 2.64, and in gio/tests/meson.build we test that the generated code with the new API can be linked against. The test_unix_fd_list() test also needed modification to continue working now that we're using gdbus-test-codegen.c with code generated with --glib-min-version=2.64 in one test. Finally, update the docs for gdbus-codegen to explain the effect of using --glib-min-version 2.64, both from this commit and from "gdbus-codegen: Emit GUnixFDLists if an arg has type `h` w/ min-version". 15 January 2020, 17:37:41 UTC
5d79135 gfdonotificationbackend: remove notifications when bus name vanishes Notification id (notify_id) is generated by notification daemon and is valid only while daemon is running. If notification backend will resend/reuse existing notification id (replace_id) after notification daemon has been restarted it could replace wrong notification as same id now can be used by different notification. 15 January 2020, 14:38:52 UTC
6f34e84 Merge branch 'thread-win32-inherit-prio' into 'master' GThread - Inherit parent thread priority by default for new Win32 threads See merge request GNOME/glib!1301 15 January 2020, 14:19:36 UTC
7b24e21 Merge branch '1997-base64-wrapping-docs' into 'master' gbase64: Fix documentation for line wrapping lengths Closes #1997 See merge request GNOME/glib!1321 15 January 2020, 14:12:25 UTC
3c0685e gtimezone: fix parsing of Julian day in POSIX TZ format The timezone(3) man page on Fedora 31 describes the start/end field in the POSIX TZ format as follows: [quote] The start field specifies when daylight saving time goes into effect and the end field specifies when the change is made back to standard time. These fields may have the fol‐ lowing formats: Jn This specifies the Julian day with n between 1 and 365. Leap days are not counted. In this format, February 29 can't be represented; February 28 is day 59, and March 1 is always day 60. n This specifies the zero-based Julian day with n between 0 and 365. February 29 is counted in leap years. Mm.w.d This specifies day d (0 <= d <= 6) of week w (1 <= w <= 5) of month m (1 <= m <= 12). Week 1 is the first week in which day d occurs and week 5 is the last week in which day d occurs. Day 0 is a Sunday. [/quote] The GTimeZone code does not correctly parse the 'n' syntax, treating it as having the range 1-365, the same as the 'Jn' syntax. This is semantically broken as it makes it impossible to represent the 366th day, which is the purpose of the 'n' syntax. There is a code comment saying this was done because the Linux semantics are different from zOS and BSD. This is not correct, as GLibC does indeed use the same 0-365 range as other operating systems. It is believed that the original author was mislead by a bug in old versions of the Linux libc timezone(3) man pages which was fixed in commit 5a554f8e525faa98354c1b95bfe4aca7125a3657 Author: Peter Schiffer <pschiffe@redhat.com> Date: Sat Mar 24 16:08:10 2012 +1300 tzset.3: Correct description for Julian 'n' date format The Julian 'n' date format counts atrting from 0, not 1. Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com> Fixes: #1999 Signed-off-by: Daniel P. Berrange <berrange@redhat.com> 15 January 2020, 14:11:59 UTC
6cd263f gtimezone: fix inverted ignore_leap param parsing julian day The callers of parse_tz_boundary inverted the value passed for the ignore_leap parameter. Fortunately the method impl also had an inverted test cancelling out the first bug. Signed-off-by: Daniel P. Berrange <berrange@redhat.com> 15 January 2020, 14:11:59 UTC
be537d8 GThread - Inherit parent thread priority by default for new Win32 threads This is the default behaviour on POSIX and having different behaviour between the two GThread implementations could lead to subtle problems. 15 January 2020, 13:23:20 UTC
8d3c502 gbase64: Fix documentation for line wrapping lengths The implementation has always wrapped at 76 characters, rather than 72, ever since it was introduced in commit 5cf8f1d4a8 in 2006. At this stage, it’s probably best to fix the documentation rather than the implementation. The likely bug in the implementation is the comparison ``` (++already) >= 19 ``` 19 × 4 = 76, so it seems like an off-by-one error in the comparison. What was actually wanted was 18 × 4 = 72. Thanks to Simon McVittie for the investigation and diagnosis. Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #1997 15 January 2020, 13:15:54 UTC
d2107c1 Reproducer for the null pw_name returned from getpwuid() Signed-off-by: Jakub Jelen <jjelen@redhat.com> 15 January 2020, 13:07:20 UTC
17d6fc4 gutils: Avoid null dereference if getpwuid fails to acquire some information about user Signed-off-by: Jakub Jelen <jjelen@redhat.com> 15 January 2020, 13:07:20 UTC
9ed4b81 Merge branch 'wrapdb-workaround' into 'master' subprojects: Temporarily avoid using wrapdb while it’s down See merge request GNOME/glib!1320 15 January 2020, 12:53:19 UTC
cab5772 subprojects: Temporarily avoid using wrapdb while it’s down This should fix our CI, which is currently failing on any system which requires using the zlib subproject (typically VS systems) as wrapdb is down. Work around that by pointing our wrap file at the underlying github hosting instead. See https://github.com/mesonbuild/meson/issues/6446#issuecomment-574241715 This can be reverted when wrapdb is working again. Signed-off-by: Philip Withnall <withnall@endlessm.com> 15 January 2020, 10:53:47 UTC
547f531 Merge branch '1416-macos-ci' into 'master' ci: Add macOS CI runner Closes #1416 See merge request GNOME/glib!1273 14 January 2020, 21:09:48 UTC
9765ce8 Merge branch 'mcatanzaro/rehandshake' into 'master' Fully deprecate TLS rehandshakes See merge request GNOME/glib!1305 07 January 2020, 21:14:38 UTC
bbbaae9 Fully deprecate TLS rehandshakes Previously, the documentation indicated that it was possible to call g_tls_connection_handshake() after an initial handshake to trigger a rehandshake, but only if TLS 1.2 or older is in use. However, there is no documented way to ensure TLS 1.2 gets used. Nowadays, TLS 1.3 is used by default. I'm removing support for rehandshaking from glib-networking, as part of a large refactoring where keeping rehandshakes would have entailed significant additional complexity. So let's update the documentation to indicate this is no longer ever supported. Applications should not notice any difference. Also, sync some previous handshake and rehandshake changes from GTlsConnection to GDtlsConnection that were missed by mistake. I try to remember to always update GDtlsConnection when touching GTlsConnection documentation, but it's easy to forget. 07 January 2020, 20:52:20 UTC
e706cc9 Merge branch 'wip/hadess/fix-gmemory-monitor-example' into 'master' GMemoryMonitor docs fixes See merge request GNOME/glib!1294 07 January 2020, 17:51:51 UTC
2394bc7 docs: Add full code example for GMemoryMonitor 07 January 2020, 17:29:53 UTC
b04be9e docs: Fix markup that led to unreadable example We used XML to markup when we should have used our own brand of markdown instead. This fixes the example being unreadable unless we trimmed the XML away from it. 07 January 2020, 17:29:53 UTC
4151dfe Merge branch 'wip/hadess/test-fixes' into 'master' gio: Fix socket test See merge request GNOME/glib!1295 07 January 2020, 16:21:20 UTC
a7880d8 Merge branch 'wip/smcv/gvariant-memcpy0' into 'master' gvariant-core: Don't pass NULL second argument to memcpy See merge request GNOME/glib!1303 07 January 2020, 16:16:35 UTC
9761eca Merge branch 'mcatanzaro/gsocketclient-improvement' into 'master' gsocketclient: run timeout source on the task's main context See merge request GNOME/glib!1308 07 January 2020, 15:37:50 UTC
076fd5a WIP: ci: Add macOS CI runner We had one before, but the runner machine was too flaky to be useful. Re-add it now that the Foundation have sorted out a more reliable machine. (Thanks!) Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #1416 07 January 2020, 15:32:46 UTC
e537716 tests: Fix error path not setting an error This failure path should have set the GError but did not. 07 January 2020, 15:07:37 UTC
b3197f2 tests: Fix incomplete failure check in socket test For the check "if (error != NULL)" to work as expected, the create_server() (and create_server_full()) functions need to make sure to return an error for all the possible failures, but this might not always be the case. Catch all the failures by testing for a non-NULL return value if there was no error. 07 January 2020, 15:07:37 UTC
e9337a9 gvariant-core: Don't pass NULL second argument to memcpy Similar to 3837b83f, glibc memcpy is declared with the first two arguments annotated as non-null via an attribute, which results in the undefined behaviour sanitizer considering it to be UB to pass a null pointer there (even if we are copying no bytes, and hence not actually dereferencing the pointer). Signed-off-by: Simon McVittie <smcv@collabora.com> 07 January 2020, 15:06:51 UTC
cc3cf6b gsocketclient: run timeout source on the task's main context This shouldn't make any difference, because this code should only ever be running in the main context that was thread-default at the time the task was created, so it should already match the task's context. But let's make sure, just in case. 07 January 2020, 15:05:22 UTC
027c3f8 Merge branch '1983-fix-fake-document-portal' into 'master' tests: Fix callback arguments in fake-document-portal Closes #1983 See merge request GNOME/glib!1312 07 January 2020, 14:38:05 UTC
7d0a1c5 tests: Fix callback arguments in fake-document-portal They didn’t match the prototype generated by `gdbus-codegen`, which meant that the FD list was being iterated incorrectly. Secondly, the document ID list returned by the method was not NULL terminated, which could lead to reading off the end of the list. Somehow, neither of these bugs caused problems on Linux, but they did cause problems on FreeBSD. Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #1983 07 January 2020, 11:20:45 UTC
85c19a7 Sync GDtlsConnection handshake docs with GTlsConnection Sadly, I forgot to update the documentation of g_dtls_connection_handshake() last time I touched g_tls_connection_handshake(). Let's also drop mention of STARTTLS, since that would use normal TLS, not DTLS. 03 January 2020, 02:26:09 UTC
7ff3875 Update Indonesian translation 02 January 2020, 00:58:06 UTC
3e2f443 Update Hungarian translation 30 December 2019, 18:10:59 UTC
8f3e553 Updated Spanish translation 30 December 2019, 11:48:18 UTC
b9227e6 Update Galician translation 25 December 2019, 03:05:56 UTC
cafb0e6 Update Brazilian Portuguese translation (cherry picked from commit e1899a4196b03f9326dd98cc1d50be526af74372) 24 December 2019, 10:13:58 UTC
338203e Merge branch '198-fopen-docs' into 'master' docs: Improve g_fopen description for Win32 Closes #198 See merge request GNOME/glib!1292 23 December 2019, 10:07:08 UTC
135c046 Update Polish translation 19 December 2019, 17:05:39 UTC
f4ff348 Merge branch 'fix-prop-set-error' into 'master' tests: Fix an error message set by foo_set_property() See merge request GNOME/glib!1279 18 December 2019, 16:39:56 UTC
a28c34b tests: Fix an error message set by foo_set_property() The property name and value were mistakenly swapped. 18 December 2019, 16:39:56 UTC
51c3921 Merge branch 'appinfo-doc-portal-test' into 'master' gio: test that launch_uris() exports files with the document portal when launching a flatpak See merge request GNOME/glib!1111 17 December 2019, 15:30:11 UTC
78fa941 Merge branch '833-gobject-set-docs' into 'master' docs: Clarify handling of 64-bit integer literals with g_object_new() Closes #833 See merge request GNOME/glib!1293 17 December 2019, 13:16:29 UTC
e24db62 gio: do not cache document portal D-Bus proxy By removing the cached global proxy in gdocumentportal.c, we can re-enable the checks for proper shutdown of the session bus connection in the dbus-appinfo.c test. 17 December 2019, 13:03:03 UTC
926ff8c gio/tests: add a test for document portal use when launching flatpaks We can't use session_bus_down() in the test since gdocumentportal.c holds a reference to the session bus connection, preventing it from being finalised. 17 December 2019, 12:59:22 UTC
27db702 gio/tests: add a fake implementation of the document portal 17 December 2019, 12:56:49 UTC
457d4c9 gio: update dbus interfaces from xdg-desktop-portal tree This removes the need to manually specify org.gtk.GDBus.C.UnixFD annotations in the gdbus-codegen invocations. 17 December 2019, 12:48:22 UTC
2474c65 docs: Clarify handling of 64-bit integer literals with g_object_new() As with `g_variant_new()` (or any varargs function which takes integer literals of differing widths), callers need to be careful to ensure their integer literals have the right width. Tweak the documentation for `g_object_new()`, `g_object_set()` and `g_object_get()` to clarify this. The documentation for `g_object_get()` shows that it is not subject to the same caveats, since it operates on pointers. Signed-off-by: Philip Withnall <withnall@endlessm.com> Closes: #833 17 December 2019, 12:23:19 UTC
78be7f5 docs: Improve documentation formatting for g_fopen() Signed-off-by: Philip Withnall <withnall@endlessm.com> Helps: #198 17 December 2019, 11:37:09 UTC
6d3f67d docs: Improve g_fopen description for Win32 Tweaked by Philip Withnall. Closes: #198 17 December 2019, 11:36:06 UTC
c597b0e Merge branch 'wip/oholy/gio-tool-list-display-names' into 'master' gio-tool-list: Add an option to print display names See merge request GNOME/glib!1291 17 December 2019, 10:56:33 UTC
e6f5b9b gio-tool-list: Add an option to print display names There are some GVfs locations (i.e. google-drive://, recent://), where G_FILE_ATTRIBUTE_STANDARD_NAME is something tottaly different than G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME. Thus it would be nice to have an easy way to show the display names. The only way currently to show the display names is to use --attributes option, which is a bit cumbersome. Let's add new --show-display-names option. https://gitlab.gnome.org/GNOME/gvfs/issues/402 17 December 2019, 10:07:10 UTC
5bae85e Merge branch 'ossfuzz-14870-dbus-message-variant-nesting' into 'master' gdbusmessage: Limit recursion of variants in D-Bus messages See merge request GNOME/glib!1201 16 December 2019, 19:50:38 UTC
de7d7db 2.63.3 Signed-off-by: Philip Withnall <withnall@endlessm.com> 16 December 2019, 13:57:28 UTC
eda0962 docs: Add g_source_set_dispose_function() to documentation Signed-off-by: Philip Withnall <withnall@endlessm.com> 16 December 2019, 13:57:28 UTC
467b4d6 docs: Update GMemoryMonitor listings in docs Fix a few things missed in code review. Signed-off-by: Philip Withnall <withnall@endlessm.com> 16 December 2019, 13:57:28 UTC
988dd6a Merge branch 'ci-docker-fun-times' into 'master' ci: Build Docker images rather than OCI images if using podman See merge request GNOME/glib!1255 16 December 2019, 12:44:16 UTC
b3981e9 Merge branch 'format-diff-many-files-better-than-one' into 'master' clang-format-diff: Output diff for multiple files, not just one See merge request GNOME/glib!1280 16 December 2019, 12:41:55 UTC
829ec97 Merge branch '650-signal-lookup-warnings' into 'master' gsignal: Drop unnecessary warnings from g_signal_lookup() Closes #650 See merge request GNOME/glib!1247 16 December 2019, 12:41:31 UTC
back to top