summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* WIP: Replicate gnome-desktop wallclock bugwip/hadess/gdatetime-hebrew-monthBastien Nocera2019-01-292-1/+3
| | | | | | | The gnome-desktop CI hasn't been working for a while because of changes in gnome-desktop, or the Fedora system underneath. Try to replicate this bug.
* Merge branch 'wip/oholy/gappinfo-async' into 'master'Philip Withnall2019-01-287-164/+605
|\ | | | | | | | | | | | | Make `g_app_info_launch_uris_async()` really asynchronous Closes #1249 and #1347 See merge request GNOME/glib!609
| * gio-tool-open: Use g_app_info_launch_default_for_uri_async()Ondrej Holy2019-01-281-94/+26
| | | | | | | | | | | | | | | | | | The recent changes of the g_app_info_launch_default_for_uri_async() function ensures that the callback is not called before DBus-activated applications start. Let's use g_app_info_launch_default_for_uri_async() and remove the workarounds for DBus-activated applications. Closes: https://gitlab.gnome.org/GNOME/glib/issues/1249
| * gappinfo: Use g_app_info_launch_uris_async() for async callsOndrej Holy2019-01-281-60/+183
| | | | | | | | | | | | | | | | | | | | Currently, the g_app_info_launch_default_for_uri_async() function uses g_app_info_launch_uris(), which is not fully asynchronous and may cause for example Nautilus freezes. Let's use the g_app_info_launch_uris_async() function to prevent the freezes. Closes: https://gitlab.gnome.org/GNOME/glib/issues/1347 https://gitlab.gnome.org/GNOME/glib/issues/1249
| * gappinfo: Add launch_uris_async() and launch_uris_finish() vfuncsOndrej Holy2019-01-285-11/+259
| | | | | | | | | | | | | | | | | | | | | | | | The g_app_info_launch_uris_async() and g_app_info_launch_uris_finish() functions are crucial to fix g_app_info_launch_default_for_uri_async() to be really asynchronous. This patch also adds GDesktopAppInfo implementation of that vfuncs. The implementation may still use some synchronous calls to local MIME DB. https://gitlab.gnome.org/GNOME/glib/issues/1347 https://gitlab.gnome.org/GNOME/glib/issues/1249
| * gfile: Add g_file_query_default_handler_async()Ondrej Holy2019-01-283-0/+136
| | | | | | | | | | | | | | | | | | | | | | | | | | This is needed as a first step to fix the g_app_info_launch_default_for_uri_async() function to be really asynchronous. It still uses the g_app_info_get_default_for_uri_scheme() and g_app_info_get_default_for_type() functions, which may use synchronous calls to local MIME DB. https://gitlab.gnome.org/GNOME/glib/issues/1347 https://gitlab.gnome.org/GNOME/glib/issues/1249
| * gfile: Fix leak in g_file_query_default_handler()Ondrej Holy2019-01-281-0/+2
| | | | | | | | | | Add missing `g_free (uri_scheme)` to fix leak when `uri_scheme[0]` is equal to `\0`.
* | Merge branch '1642-message-blob-size' into 'master'Simon McVittie2019-01-282-2/+72
|\ \ | |/ |/| | | | | | | | | gdbusmessage: Fix check on upper limit of message size Closes #1642 See merge request GNOME/glib!623
| * gdbusmessage: Fix check on upper limit of message sizePhilip Withnall2019-01-282-2/+72
| | | | | | | | | | | | | | | | There was a typo in the figure checked against. Add a unit test. Signed-off-by: Philip Withnall <withnall@endlessm.com> https://gitlab.gnome.org/GNOME/glib/issues/1642
* | Merge branch 'trash-mount-points-master' into 'master'Philip Withnall2019-01-281-1/+41
|\ \ | | | | | | | | | | | | Don't fail trash test if ~/.local doesn't exist or mount points can't be determined (master) See merge request GNOME/glib!593
| * | trash test: Don't rely on being able to determine mount pointsSimon McVittie2019-01-171-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | If we can't find the mount point for target or tmp (as currently happens on Launchpad autobuilders, and perhaps relatedly, on a development system that uses btrfs), that's probably not great but is not really the point of this test. Signed-off-by: Simon McVittie <smcv@collabora.com>
| * | trash test: Don't assume that ~/.local existsSimon McVittie2019-01-171-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In a minimal autobuilder environment, this test could conceivably be the first thing to refer to ~/.local. Modified by Iain Lane <laney@debian.org>: Don't try to create ~/.local from tests, but skip if it doesn't exist. Signed-off-by: Simon McVittie <smcv@collabora.com>
* | | Merge branch 'portals-no-o-path' into 'master'Philip Withnall2019-01-283-82/+10
|\ \ \ | |_|/ |/| | | | | | | | gio: do not pass O_PATH file descriptors to portal APIs See merge request GNOME/glib!585
| * | gio: make g_document_portal_add_documents() fall back to read-only accessJames Henstridge2019-01-252-73/+7
| | |
| * | gio: don't pass O_PATH descriptors to the document portalJames Henstridge2019-01-151-5/+2
| | | | | | | | | | | | | | | | | | Like for the OpenURI portal, O_PATH file descriptors do not prove access to the underlying file data. I've used O_RDWR file descriptors here to mirror the requested read/write permissions.
| * | gio: don't use O_PATH file descriptors with OpenURI portalJames Henstridge2019-01-151-5/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change relates to https://github.com/flatpak/xdg-desktop-portal/issues/167 The OpenURI portal requires the caller to pass a file descriptor as proof of access for local files. Old versions required this file descriptor to use the O_PATH mode. However, this does not prove access since you can create O_PATH descriptors for files that you can't read. Since xdg-desktop-portal 1.0.1, regular file descriptors are also accepted with O_PATH descriptors restricted to flatpaks for the transition.
* | | Merge branch 'docs' into 'master'Philip Withnall2019-01-281-1/+1
|\ \ \ | | | | | | | | | | | | | | | | gvariant: Fix a mistake in docs See merge request GNOME/glib!619
| * | | gvariant: Fix a mistake in docsKrzesimir Nowak2019-01-261-1/+1
| | | | | | | | | | | | | | | | So now the docs actually match what the code does.
* | | | Updated Spanish translationDaniel Mustieles2019-01-281-135/+119
| | | |
* | | | Update Galician translationFran Dieguez2019-01-271-635/+667
| | | |
* | | | Update Hungarian translationBalázs Úr2019-01-271-500/+573
|/ / /
* | | 2.59.12.59.1Philip Withnall2019-01-262-1/+86
| | | | | | | | | | | | Signed-off-by: Philip Withnall <withnall@endlessm.com>
* | | tests: Ensure GCancellable is cancelled before operation is startedPhilip Withnall2019-01-261-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the writev() tests, the handling of cancellation is tested. However, the GCancellable was cancelled after the writev_async() call was started. Depending on the implementation of the writev() vfunc, the operation could be done in a thread or in callbacks on the current thread’s main loop. If done in a separate thread, there’s a chance that enough of the write could happen before cancellation reaches that thread that the overall operation returns success with a short write. That would cause the test to fail, sometimes. Avoid that by cancelling the GCancellable before starting the writev() operation. Signed-off-by: Philip Withnall <withnall@endlessm.com> Reviewed-by: nobody
* | | Update Swedish translationAnders Jonsson2019-01-251-75/+83
| | |
* | | Merge branch '424-gdbus-proxy-debugging' into 'master'Philip Withnall2019-01-253-9/+25
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | gdbusproxy: Add G_DBUS_DEBUG=proxy support Closes #424 See merge request GNOME/glib!618
| * | | gdbusproxy: Add G_DBUS_DEBUG=proxy supportRichard Hughes2019-01-253-9/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | (Turned into a merge request by Philip Withnall; unmodified from original patch on https://bugzilla.gnome.org/show_bug.cgi?id=654905.) https://gitlab.gnome.org/GNOME/glib/issues/424
* | | | Merge branch 'gdbus-proxy-test-fixes' into 'master'Philip Withnall2019-01-251-5/+18
|\ \ \ \ | |/ / / |/| | | | | | | | | | | gdbus-proxy test fails with GLib-GIO:ERROR:glib/gio/tests/gdbus-proxy.c:832:fail_test: code should not be reached See merge request GNOME/glib!598
| * | | gio/tests/gdbus-proxy: test_proxy: check the server is properly killedIain Lane2019-01-181-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | We kill the test service at the end of this test. Let's also ensure that the name on the bus goes away and that we are notified about this happening.
| * | | gio/tests/gdbus-proxy: Make `proxy_ready` test start the server after the proxyIain Lane2019-01-181-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There's a race here, as revealed by Debian's buildds. We call g_dbus_proxy_new() to create a proxy for the test server, with callback proxy_ready() Then we call g_spawn_command_line_async() to start the test server, and then start the main loop. proxy_ready() assumes that the test server hasn't been started when it is called. But there is no guarantee that these asynchronous operations involving spawning a process won't happen in a different order that mean the bus name *does* have an owner. What we can do is move starting the server inside of proxy_ready(), so we know that the test server isn't started until after the proxy is created. We also add an assertion to check that it is indeed not running before we execute it.
* | | | Merge branch 'wip/chergert/fix-network-address-crash' into 'master'Philip Withnall2019-01-251-0/+5
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | gnetworkaddress: fix use-after-free for network address See merge request GNOME/glib!611
| * | | | gnetworkaddress: fix use-after-free for network addressChristian Hergert2019-01-251-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | This fixes an error where addr_enum can be used after finalization during complete_queued_task().
* | | | | Merge branch '1666-typemodule-casts' into 'master'Emmanuele Bassi2019-01-251-4/+4
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gtypemodule: Cast *_init functions to void(*)(void) first Closes #1666 See merge request GNOME/glib!617
| * | | | | gtypemodule: Cast *_init functions to void(*)(void) firstPhilip Withnall2019-01-251-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is an analogous commit to c1f5e528. The original fix only touched gtype.h and not gtypemodule.h. The *_init() functions have prototypes incompatible with *InitFunc types they are being cast to. This upsets GCC 8's -Wcast-function-type that's enabled by default with -Wextra. Let's not have the public header files emit a warning and neutralize it by doing a void(*)(void) cast first. Signed-off-by: Philip Withnall <withnall@endlessm.com> https://gitlab.gnome.org/GNOME/glib/issues/1666
* | | | | | Merge branch 'compiler-warnings' into 'master'Sebastian Dröge2019-01-242-5/+9
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix a couple of wrong compiler warnings See merge request GNOME/glib!615
| * | | | | | Fix compiler warning about uninitialized variable in desktop-app-info testSebastian Dröge2019-01-241-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It would always be initialized but initialize it to NULL to silence the compiler, and also check that it is not NULL anymore when we expect it to contain a valid value. ../gio/tests/desktop-app-info.c: In function ‘test_fallback’: ../gio/tests/desktop-app-info.c:191:18: warning: ‘app’ may be used uninitialized in this function [-Wmaybe-uninitialized] g_assert_true (g_app_info_equal (info1, app)); ^~~~~~~~~~~~~~~~
| * | | | | | Fix compiler warning about uninitialized variable in giomoduleSebastian Dröge2019-01-241-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It could've never been uninitialized in this code but the code flow is not obvious to the compiler. Initialize it to NULL and for clarity also add an assertion that it is not NULL anymore on usage. In file included from ../glib/glib.h:62, from ../gobject/gbinding.h:28, from ../glib/glib-object.h:23, from ../gio/gioenums.h:28, from ../gio/giotypes.h:28, from ../gio/giomodule.h:28, from ../gio/giomodule.c:25: ../gio/giomodule.c: In function ‘_g_io_module_get_default’: ../glib/gmessages.h:343:25: warning: ‘extension’ may be used uninitialized in this function [-Wmaybe-uninitialized] #define g_debug(...) g_log (G_LOG_DOMAIN, \ ^~~~~ ../gio/giomodule.c:912:17: note: ‘extension’ was declared here GIOExtension *extension, *preferred; ^~~~~~~~~
* | | | | | | Merge branch 'writev' into 'master'Philip Withnall2019-01-2417-146/+3212
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | Add writev() API to GOutputStream and GPollableOutputStream See merge request GNOME/glib!333
| * | | | | | Add test for blocking and non-blocking and async read/write(v) on UNIX streamsSebastian Dröge2019-01-241-0/+489
| | | | | | |
| * | | | | | Add test for blocking read/write/writev on GSocket*StreamsSebastian Dröge2019-01-242-2/+154
| | | | | | |
| * | | | | | Add test for async read/write(v)/close on GSocketConnectionsSebastian Dröge2019-01-241-0/+312
| | | | | | |
| * | | | | | Add some tests for g_output_stream_writev() and its async variantSebastian Dröge2019-01-242-0/+657
| | | | | | |
| * | | | | | Implement GOutputStream::writev_fn() and ↵Sebastian Dröge2019-01-241-2/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | GPollableOutputStream::writev_nonblocking() for GSocketOutputStream
| * | | | | | Rename timeout variables in gsocket.[ch] to include the unit as suffixSebastian Dröge2019-01-242-74/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Makes it clearer which unit we work with. We have timeouts in seconds, milliseconds and microseconds in here.
| * | | | | | Add (type GSocketMsgFlags) to int-typed flags parameters in GSocketSebastian Dröge2019-01-241-5/+5
| | | | | | |
| * | | | | | Add g_socket_send_message_with_timeout()Sebastian Dröge2019-01-242-53/+113
| | | | | | |
| * | | | | | Simplify some code in GUnixOutputStreamSebastian Dröge2019-01-241-4/+3
| | | | | | |
| * | | | | | Implement GOutputStream::writev() and ↵Sebastian Dröge2019-01-241-0/+191
| | | | | | | | | | | | | | | | | | | | | | | | | | | | GPollableOutputStream::writev_nonblocking() GUnixOutputStream
| * | | | | | Implement GOutputStream::writev_fn() for GLocalFileOutputStream on UNIXSebastian Dröge2019-01-241-0/+95
| | | | | | |
| * | | | | | Change to g_warning() into assertions in GOutputStreamSebastian Dröge2019-01-241-5/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These would only happen if the API contract of the write() and writev() functions was broken by subclasses.
| * | | | | | Add writev() / writev_all() API to GOutputStream and GPollableOutputStreamSebastian Dröge2019-01-246-12/+1043
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This comes with default implementations around the normal write functions and async variants. Fixes https://gitlab.gnome.org/GNOME/glib/issues/1431