glib/gio/tests
Philip Withnall 5b12608157 tests: Fix intermittent failure in GCancellableSource test
It seems that allowing the GCancellable to be finalised in either the
main thread or the worker thread sometimes leads to crashes when running
on CI.

I cannot reproduce these crashes locally, and various analyses with
memcheck, drd and helgrind have failed to give any clues.

Fix this for this particular test case by deferring destruction of the
`GCancellable` instances until after the worker thread has joined.
That’s OK because this test is specifically checking a race between
`g_cancellable_cancel()` and disposal of a `GCancellableSource`.

The underlying bug remains unfixed, though, and I can only hope that we
eventually find a reliable way of reproducing it so it can be analysed
and fixed.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2020-06-25 13:12:51 +01:00
..
cert-tests gtlscertificate: Allow any type of private key in PEM files 2018-12-18 11:43:08 +01:00
de/LC_MESSAGES meson add missing gio/tests subdirectory/file 2017-07-13 19:03:39 -04:00
desktop-files Remove unnecessary +x permissions 2018-09-23 17:01:04 +01:00
gdbus-object-manager-example gdbus-object-manager-example: Fix build on Visual Studio 2020-05-28 17:20:22 +08:00
modules build: Drop autotools support 2019-01-15 15:11:43 +00:00
schema-tests Don't skip invalid enum values in schemas 2017-10-11 10:22:23 +01:00
services gio/tests: add a fake implementation of the document portal 2019-12-17 20:56:49 +08:00
static-link CI: Test static build on installed glib 2018-10-23 09:45:12 -04:00
thumbnails tests: Add tests for the thumbnail verification code in GIO 2013-10-24 13:55:33 -04:00
x-content Add tests for x-content type sniffing 2014-01-01 17:59:20 -05:00
.gitignore gdbus, tests: rename gdbus-unix-addresses test to gdbus-address-get-session 2019-03-12 21:53:43 +03:00
111_digit_test.gresource.xml glib-compile-resources: Fixes #1675 2019-02-20 10:38:29 +00:00
actions.c tests: Speed up the GIO actions test 2019-12-18 16:51:11 +00:00
appinfo-test2.desktop.in tests: Avoid chdir() call at the start of appinfo tests 2018-12-17 17:16:03 +00:00
appinfo-test-actions.desktop Add missing file 2013-07-11 13:49:20 -04:00
appinfo-test-gnome.desktop.in tests: Avoid chdir() call at the start of appinfo tests 2018-12-17 17:16:03 +00:00
appinfo-test-notgnome.desktop.in tests: Avoid chdir() call at the start of appinfo tests 2018-12-17 17:16:03 +00:00
appinfo-test-static.desktop tests: Use static appinfo .desktop file when not launching 2018-12-17 17:16:04 +00:00
appinfo-test.c Normalize C source files to end with exactly one newline 2020-06-10 09:48:02 +01:00
appinfo-test.desktop.in tests: Don’t spawn test processes via the terminal in the appinfo test 2019-06-28 13:05:07 +01:00
appinfo.c Normalize C source files to end with exactly one newline 2020-06-10 09:48:02 +01:00
appmonitor.c tests: Isolate directories in appmonitor test 2018-12-17 17:16:04 +00:00
apps.c apps test: add new "monitor" subcommand 2014-09-09 14:11:38 -04:00
async-close-output-stream.c gtestutils: add g_assert_cmpmem() 2015-08-31 13:59:48 -04:00
async-splice-output-stream.c tests: Add testcases for g_output_stream_splice_async() 2013-09-29 17:48:40 -04:00
autoptr.c autoptr test: Use OS-dependent path separator 2019-02-13 08:49:42 +00:00
basic-application.c Avoid a compiler warning 2014-01-01 22:01:15 -05:00
buffered-input-stream.c
buffered-output-stream.c Update tests for new truncate behavior 2013-12-15 21:07:12 -05:00
cancellable.c tests: Fix intermittent failure in GCancellableSource test 2020-06-25 13:12:51 +01:00
codegen.py gdbus-codegen: Add --glib-max-allowed argument 2020-01-27 10:42:26 +00:00
contenttype.c tests: Add a test for g_content_type_guess() with no arguments 2019-06-03 12:16:50 +01:00
contexts.c GContextSpecificGroup: add testcase 2016-04-26 15:20:16 +02:00
converter-stream.c gtestutils: add g_assert_cmpmem() 2015-08-31 13:59:48 -04:00
credentials.c gio: add gcredential support for macOS 2020-05-07 14:19:16 +01:00
data-input-stream.c tests: data-input-stream: fix -Wduplicated-branches 2018-02-16 17:38:26 +00:00
data-output-stream.c Use G_GNUC_FALLTHROUGH where appropriate 2018-09-04 20:24:25 +02:00
dbus-appinfo.c gio: do not cache document portal D-Bus proxy 2019-12-17 21:03:03 +08:00
dbus-launch.c gdbus, tests: rename gdbus-unix-addresses test to gdbus-address-get-session 2019-03-12 21:53:43 +03:00
de.po
defaultvalue.c tests: Do not init the default value 2019-10-26 14:06:31 +01:00
desktop-app-info.c docs: Use ‘look up’ as a verb, rather than the noun ‘lookup’ 2019-04-26 12:12:31 +01:00
echo-server.c
enums.xml.template
fake-document-portal.c tests: Fix callback arguments in fake-document-portal 2020-01-07 11:20:45 +00:00
file.c tests: Speed up the file test and make it more reliable 2020-05-22 11:05:27 +01:00
fileattributematcher.c Fix various const-correctness issues 2018-04-26 15:19:17 +01:00
filter-cat.c gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
filter-streams.c gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
g-file-info-filesystem-readonly.c tests: Skip g-file-info-filesystem-readonly test if bindfs fails 2020-02-24 09:08:20 +00:00
g-file-info.c W32: add a test for setting file mtime 2020-01-30 01:33:09 +00:00
g-file.c tests: replace most g_print() with g_printerr() 2015-05-11 20:24:56 +01:00
g-icon.c Fix g_icon_to_string() regression (doc inconsistency). 2018-09-13 13:16:40 +02:00
gapplication-example-actions.c
gapplication-example-cmdline2.c
gapplication-example-cmdline3.c
gapplication-example-cmdline4.c Bug-790839 GApplication command line --help enhancements 2018-01-03 11:08:37 +00:00
gapplication-example-cmdline.c
gapplication-example-dbushooks.c
gapplication-example-open.c
gapplication.c general: Remove a few unhelpful references to ‘master’ 2019-04-25 09:25:49 +01:00
gdbus-address-get-session.c gdbus, tests, win32: test session dbus autolaunch 2019-03-12 21:54:47 +03:00
gdbus-addresses.c tree: Fix various typos and outdated terminology 2020-06-12 15:01:08 +01:00
gdbus-auth.c Normalize C source files to end with exactly one newline 2020-06-10 09:48:02 +01:00
gdbus-bz627724.c gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
gdbus-close-pending.c gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
gdbus-connection-flush-helper.c gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
gdbus-connection-flush.c tests: Enable GDBus debug for a number of unreliable tests 2019-12-11 11:04:10 +01:00
gdbus-connection-loss.c tests: Take explicit connection and context when ensuring testserver up 2020-02-24 07:46:22 +00:00
gdbus-connection-slow.c all: Remove trailing newlines from g_message()/g_warning()/g_error()s 2018-04-27 16:46:19 +01:00
gdbus-connection.c tests: Fix remaining race in gdbus-connection filter test 2020-05-05 13:29:29 +01:00
gdbus-daemon.c
gdbus-error.c gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
gdbus-example-export.c Drop trailing semi-colon from G_DEFINE_ macro 2017-04-10 10:38:31 +01:00
gdbus-example-objectmanager-client.c build: work around meson issue with too long filenames on Windows. Fixes #1556 2018-10-04 10:45:45 +02:00
gdbus-example-objectmanager-server.c build: work around meson issue with too long filenames on Windows. Fixes #1556 2018-10-04 10:45:45 +02:00
gdbus-example-own-name.c
gdbus-example-peer.c gdbus-example-peer: Provide an example GDBusAuthObserver 2019-06-11 11:06:36 +01:00
gdbus-example-proxy-subclass.c Drop trailing semi-colon from G_DEFINE_ macro 2017-04-10 10:38:31 +01:00
gdbus-example-server.c
gdbus-example-subtree.c Use 'dumb quotes' rather than `really dumb quotes' 2013-05-21 11:23:22 -03:00
gdbus-example-unix-fd-client.c glib: Don’t use time(NULL) to get current time 2018-07-09 13:28:02 +02:00
gdbus-example-watch-name.c
gdbus-example-watch-proxy.c
gdbus-exit-on-close.c gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
gdbus-export.c tree: Fix various typos and outdated terminology 2020-06-12 15:01:08 +01:00
gdbus-introspection.c gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
gdbus-message.c Normalize C source files to end with exactly one newline 2020-06-10 09:48:02 +01:00
gdbus-names.c gdbusnameowning: Subscribe to NameLost before calling RequestName 2020-02-16 10:00:31 +00:00
gdbus-non-socket.c gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
gdbus-overflow.c gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
gdbus-peer-object-manager.c tests: Various minor leak fixes in the GIO tests 2018-06-29 12:13:32 +01:00
gdbus-peer.c tree: Fix various typos and outdated terminology 2020-06-12 15:01:08 +01:00
gdbus-proxy-threads.c tree: Fix various typos and outdated terminology 2020-06-12 15:01:08 +01:00
gdbus-proxy-unique-name.c gdbusproxy: make g-name-owner property useful with unique names 2018-11-10 03:53:32 +00:00
gdbus-proxy-well-known-name.c gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
gdbus-proxy.c tree: Fix various typos and outdated terminology 2020-06-12 15:01:08 +01:00
gdbus-serialization.c Normalize C source files to end with exactly one newline 2020-06-10 09:48:02 +01:00
gdbus-server-auth.c gio: add gcredential support for macOS 2020-05-07 14:19:16 +01:00
gdbus-sessionbus.c gio/tests: add a fake implementation of the document portal 2019-12-17 20:56:49 +08:00
gdbus-sessionbus.h gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
gdbus-test-codegen.c tree: Fix various typos and outdated terminology 2020-06-12 15:01:08 +01:00
gdbus-test-fixture.c gio/tests: add a fake implementation of the document portal 2019-12-17 20:56:49 +08:00
gdbus-tests.c tests: Wait until unwatching the gdbus-testserver name has completed 2020-02-24 09:01:03 +00:00
gdbus-tests.h tests: Take explicit connection and context when ensuring testserver up 2020-02-24 07:46:22 +00:00
gdbus-testserver.c tests: Fix some larger memory leaks in gdbus-proxy 2019-03-07 13:57:38 +00:00
gdbus-threading.c tree: Fix various typos and outdated terminology 2020-06-12 15:01:08 +01:00
gen-big-test-resource.py gresources: Add a test with resources > 64kb 2018-12-05 18:27:16 +08:00
gengiotypefuncs.py gengiotypefuncs.py: Read and parse files in binary mode 2018-05-22 14:34:17 +05:30
gio-du.c win32: Replace usage of __wgetmainargs() 2015-07-23 04:22:59 -04:00
giomodule.c Fix test failures for static builds 2019-07-15 11:01:04 +00:00
glistmodel.c gliststore: Add item lookup functions 2019-09-25 08:37:22 +02:00
gmenumodel.c tests: Fix data race in gmenumodel test 2019-03-05 15:14:58 +01:00
gnotification-server.c gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
gnotification-server.h gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
gnotification.c tests: fix gnotification tests broken due to the recent icon name fallback changes 2018-08-19 20:04:41 +02:00
gschema-compile.c glib: Update various code comments to mention Meson 2019-01-15 15:11:43 +00:00
gsettings.c gsettings: Add missing changed() call to delayed settings backend 2019-08-21 20:08:04 +03:00
gsocketclient-slow.c Normalize C source files to end with exactly one newline 2020-06-10 09:48:02 +01:00
gsubprocess-testprog.c Revert "tests: Fix GOptionContext leak in GSubprocess tests" 2018-12-19 14:54:27 +00:00
gsubprocess.c tree: Fix various typos and outdated terminology 2020-06-12 15:01:08 +01:00
gtesttlsbackend.c Revert "gtlscertificate: Add support for PKCS #11 backed certificates" 2020-01-30 04:19:22 -06:00
gtesttlsbackend.h gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
gtlsconsoleinteraction.c tree: Fix various typos and outdated terminology 2020-06-12 15:01:08 +01:00
gtlsconsoleinteraction.h gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
httpd.c Avoid setting unused variables (-Wself-assign) 2017-09-11 22:14:18 +01:00
inet-address.c Fix gio/tests/inet-address on OS X 2016-07-11 17:42:41 -04:00
io-stream.c tests: add GSimpleIOStream async close tests 2015-02-17 16:27:46 -05:00
live-g-file.c tests: Cope with having CAP_DAC_OVERRIDE, even if not euid 0 2020-02-13 17:33:45 +00:00
live-g-file.txt tree: Fix various typos and outdated terminology 2020-06-12 15:01:08 +01:00
memory-input-stream.c Improve GMemoryInputStream test coverage 2013-06-02 01:44:49 -04:00
memory-monitor-dbus.py.in gio/tests/memory-monitor-*.py.in: skip if 3rd party modules not available 2020-04-23 15:01:25 +01:00
memory-monitor-portal.py.in gio/tests/memory-monitor-*.py.in: skip if 3rd party modules not available 2020-04-23 15:01:25 +01:00
memory-monitor.c gio: Add stub test program for GMemoryMonitor 2019-12-11 11:44:42 +00:00
memory-output-stream.c Add some tests for g_output_stream_writev() and its async variant 2019-01-24 16:25:56 +02:00
meson.build gio: use TAPTestRunner in the memory monitor tests 2020-04-09 14:55:39 +01:00
mimeapps.c tests: Isolate directories in mimeapps test 2018-12-17 17:16:04 +00:00
mock-resolver.c Always resolve localhost to loopback address 2019-10-10 14:32:18 +01:00
mock-resolver.h gnetworkaddress: Implement parallel ipv4 and ipv6 dns lookups 2018-12-11 16:09:29 -05:00
mount-operation.c Add support for TCRYPT volumes to GMountOperation 2018-06-21 15:32:04 +02:00
network-address.c Always resolve localhost to loopback address 2019-10-10 14:32:18 +01:00
network-monitor-race.c network-monitor-race test: Have the subprocess inherit stdout and stderr 2018-09-13 11:44:16 +01:00
network-monitor.c tests/network-monitor: Always use the dummy proxy resolver 2018-04-10 10:35:45 +01:00
org.gtk.schemasourcecheck.gschema.xml
org.gtk.test.dbusappinfo.desktop Make a test desktop file a little less invalid 2013-07-14 11:36:45 -04:00
org.gtk.test.dbusappinfo.flatpak.desktop gio/tests: add a test for document portal use when launching flatpaks 2019-12-17 20:59:22 +08:00
org.gtk.test.gschema.override.orig Add a test for per-desktop overrides 2018-06-22 22:02:31 +03:00
org.gtk.test.gschema.xml.orig Add a test for per-desktop overrides 2018-06-22 22:02:31 +03:00
permission.c
pollable.c Normalize C source files to end with exactly one newline 2020-06-10 09:48:02 +01:00
proxy-test.c Normalize C source files to end with exactly one newline 2020-06-10 09:48:02 +01:00
proxy.c gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
readwrite.c Enable GIO tests on Windows 2018-09-12 15:42:11 +00:00
resolver.c docs: Use ‘look up’ as a verb, rather than the noun ‘lookup’ 2019-04-26 12:12:31 +01:00
resourceplugin.c tree: Fix various typos and outdated terminology 2020-06-12 15:01:08 +01:00
resources.c tree: Fix various typos and outdated terminology 2020-06-12 15:01:08 +01:00
send-data.c tests: Stop using deprecated g_get_current_time() 2019-07-29 12:27:29 +01:00
simple-async-result.c gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
simple-proxy.c tests: Various minor leak fixes in the GIO tests 2018-06-29 12:13:32 +01:00
sleepy-stream.c Use G_GNUC_FALLTHROUGH where appropriate 2018-09-04 20:24:25 +02:00
slow-connect-preload.c tests: Add gsocketclient test for slow connections 2018-12-11 16:12:48 -05:00
socket-address.c gsocketconnectable: Add a to_string() virtual method 2015-10-13 15:42:14 +01:00
socket-client.c general: Remove a few unhelpful references to ‘master’ 2019-04-25 09:25:49 +01:00
socket-common.c
socket-listener.c Normalize C source files to end with exactly one newline 2020-06-10 09:48:02 +01:00
socket-server.c general: Remove a few unhelpful references to ‘master’ 2019-04-25 09:25:49 +01:00
socket-service.c tree: Fix various typos and outdated terminology 2020-06-12 15:01:08 +01:00
socket.c Normalize C source files to end with exactly one newline 2020-06-10 09:48:02 +01:00
srvtarget.c
static-link.py tests: Correct static-link.py skipped status 2019-12-04 14:06:23 +01:00
stream-rw_all.c gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
taptestrunner.py tests: Add tests for the gdbus-codegen executable 2019-12-02 14:27:11 +00:00
task.c task: Add return/propagate API for GValue 2019-11-15 10:37:42 +00:00
test1.overlay Add a test for resource overlays 2019-01-10 13:50:26 -05:00
test1.txt
test2.gresource.xml tree: Fix various typos and outdated terminology 2020-06-12 15:01:08 +01:00
test2.txt
test3.gresource.xml
test3.txt
test4.gresource.xml
test5.gresource.xml glib-compile-resources: Add external data option 2018-12-19 16:43:21 +00:00
test-codegen.xml gdbus-codegen: emit GUnixFDLists if an arg has type 'h' 2019-09-02 20:47:20 +01:00
test-io-stream.c gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
test-io-stream.h gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
test-pipe-unix.c docs: Drop unnecessary <!-- -->s from gtk-doc comments 2017-11-29 17:50:27 +00:00
test-pipe-unix.h gio/tests/: LGPLv2+ -> LGPLv2.1+ 2017-05-29 19:53:34 +02:00
test.gresource.xml glib-compile-resources: correct resource compiler dependency for generated files 2016-06-04 08:24:22 -04:00
testenum.h
testfilemonitor.c testfilemonitor: Fix a trivial leak in the test 2019-10-18 17:02:57 +01:00
thumbnail-verification.c W32 GLocalFileStat: remove compatibility time fields 2020-01-30 01:56:56 +00:00
tls-certificate.c tree: Fix various typos and outdated terminology 2020-06-12 15:01:08 +01:00
tls-database.c gtlsbackend: add support for setting the default TLS database 2018-09-03 13:55:57 +10:00
tls-interaction.c tests: Use g_object_assert_last_unref() in various tests 2019-07-25 15:23:21 +01:00
trash.c Normalize C source files to end with exactly one newline 2020-06-10 09:48:02 +01:00
unix-fd.c
unix-mounts.c gunixmounts: Stop considering cifs/nfs as system file systems 2018-06-20 12:16:34 +01:00
unix-streams.c tests: Fix a compiler warning about string+int arithmetic 2020-02-24 16:18:58 +00:00
vfs.c vfs: Fix return value of get_supported_uri_schemes() 2016-06-28 15:57:49 +02:00
volumemonitor.c Normalize C source files to end with exactly one newline 2020-06-10 09:48:02 +01:00
win32-appinfo.c Normalize C source files to end with exactly one newline 2020-06-10 09:48:02 +01:00
win32-streams.c Fix tests to compile again - add missing headers to W32, call correct process-id-getting function 2014-08-02 12:41:14 +00:00