https://github.com/GNOME/glib

sort by:
Revision Author Date Message Commit Date
0334f98 Meson: Add python implementation of glib-compile-resources When cross compiling GTK with GLib as subproject it is still required to have glib tools installed on the build machine which is not convenient on Windows for example. Implementing those tools in python3 means they are arch independent and can be run from GLib subproject. This is the bare minimum needed by Meson's gnome.compile_resources(), the native implementation supports many more command line arguments. 18 April 2020, 03:10:51 UTC
de8708c Merge branch 'wip/oholy/fast-content-type' into 'master' gfile: Fallback to fast-content-type if content-type is not set See merge request GNOME/glib!1442 14 April 2020, 15:48:43 UTC
fa76bde Merge branch 'tap' into 'master' gio: use TAPTestRunner in the memory monitor tests See merge request GNOME/glib!1443 09 April 2020, 14:33:09 UTC
0f8399f Merge branch 'checks-asserts' into 'master' Meson: Add glib-checks and glib-asserts options See merge request GNOME/glib!1444 09 April 2020, 14:09:13 UTC
1fcd32a gio: use TAPTestRunner in the memory monitor tests There are two memory monitor tests that use Python's unittest module directly, but GLib tests should be outputting TAP. Use the embedded TAPTestRunner to ensure that TAP is output for these tests too. 09 April 2020, 13:55:39 UTC
be3728b Meson: Add glib_checks and glib_asserts options In cases where performance are critical it can be useful to disable checks and asserts. GStreamer has those options too, using the same name and setting them yielding means we can set those options on the main project (e.g. gst-build) and glib will inherit the same value when built as subproject. 09 April 2020, 13:17:35 UTC
12d79a3 Merge branch 'update-gvdb' into 'master' Update gvdb Closes #2 See merge request GNOME/glib!1446 09 April 2020, 12:43:15 UTC
683cf4c Merge remote-tracking branch 'gvdb/master' into update-gvdb Bring in uninitialised memory fixes from https://gitlab.gnome.org/GNOME/gvdb/issues/2. 09 April 2020, 12:10:30 UTC
82a5575 Merge branch '1841-cancellable-race-fix' into 'master' Resolve "Signal handler disconnection race when finalising GCancellableSource" Closes #1841 See merge request GNOME/glib!1400 09 April 2020, 12:00:52 UTC
bd45f71 Merge branch 'override-dependency' into 'master' Meson: Override every dependency glib provides See merge request GNOME/glib!1441 09 April 2020, 11:51:46 UTC
461052f gfile: Fallback to fast-content-type if content-type is not set The G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE attribute doesn't have to be always set. See https://gitlab.gnome.org/GNOME/gvfs/-/merge_requests/68 for more details. In that case, the g_file_query_default_handler function fails with the "No application is registered as handling this file" error. Let's fallback to the "standard::fast-content-type" attribute instead to fix issues when opening such files. https://gitlab.gnome.org/GNOME/nautilus/-/issues/1425 07 April 2020, 12:56:49 UTC
10280de Meson: Override every dependency glib provides Meson 0.54.0 added a new method meson.override_dependency() that must be used to ensure dependency consistency. This patch ensures a project that depends on glib will never link to a mix of system and subproject libraries. It would happen in such cases: The system has glib 2.40 installed, and a project does: dependency('glib-2.0', version: '>=2.60', fallback: ['glib', 'glib_dep']) dependency('gobject-2.0') The first call will configure glib subproject because the system libglib is too old, but the 2nd call will return system libgobject. By overriding 'gobject-2.0' dependency while configuring glib subproject during the first call, meson knows that on the 2nd call it must return the subproject dependency instead of system dependency. This also has the nice side effect that with Meson >0.54.0 an application depending on glib can declare the fallback without knowing the dependency variable name: dependency('glib-2.0', fallback: 'glib'). 05 April 2020, 04:34:04 UTC
1a3a186 Merge branch 'gmarkup-more-unit-tests' into 'master' gmarkup tests: tab character escape/unescape See merge request GNOME/glib!1437 03 April 2020, 19:16:42 UTC
a136776 Merge branch 'wip/oholy/gio-tool-docs' into 'master' docs: Mention new gio tool options See merge request GNOME/glib!1432 03 April 2020, 15:03:05 UTC
50a3064 gmarkup tests: tab character escape/unescape "\t" is not escaped by g_markup_escape_text(), as per its documentation: "Note that this function doesn't protect whitespace and line endings from being processed according to the XML rules for normalization of line endings and attribute values." The relevant portion of the XML specification https://www.w3.org/TR/xml/#AVNormalize "For a character reference, append the referenced character to the normalized value." "For a white space character (#x20, #xD, #xA, #x9), append a space character (#x20) to the normalized value." So the unescape code in GMarkup does the right thing as can be verified by the added valid-17.* data files for the markup-parse unit test. (Note that the valid-13.* data files already tested a plain tab character in an attribute value, among other white space characters). Note that the libxml2's xmlSetProp() function escapes "\t" into the character reference "	". See https://gitlab.gnome.org/GNOME/glib/-/issues/2080 03 April 2020, 14:30:27 UTC
4530aac Merge branch 'sync-valgrind' into 'master' glib: Update internal copy of valgrind.h from Valgrind 3.15 release See merge request GNOME/glib!1436 03 April 2020, 13:12:36 UTC
dde780f Merge branch '2081-dbus-error-messages' into 'master' gdbusmessage: Fix swapped signatures in error messages Closes #2081 See merge request GNOME/glib!1435 03 April 2020, 12:35:58 UTC
5a540c8 Merge branch 'dbus-signal-sender-nullability' into 'master' gdbusconnection: Clarify nullability of SignalInstance.sender See merge request GNOME/glib!1434 03 April 2020, 12:11:58 UTC
f07e5f6 glib: Update internal copy of valgrind.h from Valgrind 3.15 release Update our copy of valgrind.h from the Valgrind 3.15 release tarball, and then re-apply our downstream change af0e0cb9950569828. No other changes made. Signed-off-by: Philip Withnall <withnall@endlessm.com> 03 April 2020, 12:03:31 UTC
87cd6a4 Merge branch 'fix-buildtype-usage' into 'master' meson: Fix buildtype usage See merge request GNOME/glib!1433 03 April 2020, 11:58:56 UTC
8f938eb gdbusmessage: Fix swapped signatures in error messages Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #2081 03 April 2020, 11:42:49 UTC
88d5265 Merge branch 'wip/tintou/gdbussignalcallback' into 'master' gdbusconnection: GDBusSignalCallback can have a NULL sender_name See merge request GNOME/glib!1425 03 April 2020, 11:33:46 UTC
5a74c2f gdbusconnection: Clarify nullability of SignalInstance.sender Following on from !1425. Signed-off-by: Philip Withnall <withnall@endlessm.com> 03 April 2020, 11:16:49 UTC
b462e2c meson: Use the b_vscrt option for selecting the CRT This option has been available since 0.48, and we should use it instead of only guessing based on buildtype. 03 April 2020, 11:09:22 UTC
e7cfe62 meson: Fix check for builtype arguments `get_option('buildtype')` will return `'custom'` for most combinations of `-Doptimization` and `-Ddebug`, but those two will always be set correctly if only `-Dbuildtype` is set. So we should look at those options directly. For the two-way mapping between `buildtype` and `optimization` + `debug`, see this table: https://mesonbuild.com/Builtin-options.html#build-type-options 03 April 2020, 11:09:22 UTC
565ba0d gdbusconnection: GDBusSignalCallback can have a NULL sender_name On a peer GDBusConnection, the returned sender_name can be NULL 03 April 2020, 06:01:44 UTC
5737d06 docs: Mention new gio tool options New features were added for gio tool, but they are not mentioned in man pages as it is not generated from GOptionEntry in contrast to the help output. Let's update the man pages to reflect the recent changes. 02 April 2020, 11:23:09 UTC
b4d6849 Merge branch 'mingw-arch' into 'master' Fix arch detection ifdefs in glib/valgrind.h See merge request GNOME/glib!1429 01 April 2020, 11:58:39 UTC
f62ca93 Merge branch 'fno-common-extern' into 'master' Add missing 'extern' to the dllexport version of GLIB_VAR/GOBJECT_VAR See merge request GNOME/glib!1428 01 April 2020, 11:27:39 UTC
aa5cb26 Merge branch 'gdbusegdoc' into 'master' docs: Fix configuration with gtk_doc=true and installed_tests=false See merge request GNOME/glib!1424 01 April 2020, 11:20:59 UTC
be85e23 Merge branch 'fix-heap-corruption' into 'master' glib-unix.c: fix heap corruption in g_unix_get_passwd_entry See merge request GNOME/glib!1431 01 April 2020, 11:10:12 UTC
473b3b4 glib-unix.c: fix heap corruption in g_unix_get_passwd_entry malloc() was given too small value (size of pointer, rather than struct it points to), and subsequent call getpwnam_r() wrote past the end of allocated block - easily seen with valgrind. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> 01 April 2020, 10:39:52 UTC
af0e0cb Fix arch detection ifdefs in glib/valgrind.h Don't assume that __MINGW32__ implies x86; Windows runs on ARM/ARM64 as well, and there are mingw toolchains that target those architectures. This mirrors how the MSVC part of the same expressions are written, as (defined(_WIN32) && defined(_M_IX86)) and (defined(_WIN64) && defined(_M_X64)) - not relying on _WIN32/_WIN64 or __MINGW32__/__MINGW64__ alone to indicate architecture. 31 March 2020, 20:27:53 UTC
fdfadfc Add missing 'extern' to the dllexport version of GLIB_VAR/GOBJECT_VAR The __declspec(dllexport) attribute in itself doesn't imply 'extern' - thus any intended variable declaration with GLIB_VAR/GOBJECT_VAR would actually be a variable definition. With C compilers defaulting to -fcommon, this isn't an issue, but upcoming compilers (GCC 10 and Clang 11) will default to -fno-common, ending up with duplicate definitions of these variables. 31 March 2020, 20:22:26 UTC
5035536 Merge branch 'icon-docs' into 'master' gicon: Clarify GVariant refcounting in docs See merge request GNOME/glib!1427 31 March 2020, 14:49:53 UTC
2b9f2b7 Merge branch 'unicode-version-docs' into 'master' gunidecomp: Update and reformat Unicode version support history See merge request GNOME/glib!1426 31 March 2020, 14:15:06 UTC
f6ed950 gicon: Clarify GVariant refcounting in docs Slightly unexpectedly, `g_icon_serialize()` doesn’t produce a floating `GVariant`, it produces one with full ownership and returns that. That’s not the convention for `GVariant` return values from functions which build variants, but there’s nothing we can do to change this now as that would be an API break. Signed-off-by: Philip Withnall <withnall@endlessm.com> 31 March 2020, 13:27:00 UTC
0ce0701 gunidecomp: Update and reformat Unicode version support history To aid https://stackoverflow.com/q/60949426/2931197. Signed-off-by: Philip Withnall <withnall@endlessm.com> 31 March 2020, 13:18:32 UTC
eae7b02 Update Hebrew translation (cherry picked from commit 2443c6bb466c8639f357d40183f4d8043509d22c) 30 March 2020, 17:38:47 UTC
84ad802 docs: Fix configuration with gtk_doc=true and installed_tests=false Skip the gdbus-object-manager-example which is generated as part of testing. Program xsltproc found: YES (/usr/bin/xsltproc) Run-time dependency gtk-doc found: YES 1.32 docs/reference/gio/gdbus-object-manager-example/meson.build:1:0: ERROR: Unknown variable "libgdbus_example_objectmanager_dep". 27 March 2020, 19:33:12 UTC
2b741aa Merge branch 'unref-warning' into 'master' gobject: Clarify assertion failure on ref-after-finalize See merge request GNOME/glib!1423 23 March 2020, 12:30:20 UTC
641bbd0 gobject: Clarify assertion failure on ref-after-finalize Rename the variables involved so that people get a slightly more obvious critical warning when they try to ref an object which has already been finalised. Signed-off-by: Philip Withnall <withnall@endlessm.com> 23 March 2020, 11:48:22 UTC
eb0f73a Update Romanian translation (cherry picked from commit e62cd323c32b40e6ba3cf202568638533cb30438) 19 March 2020, 10:54:20 UTC
697905d Merge branch 'unicode13' into 'master' glib: Update Unicode Character Database to version 13.0.0 See merge request GNOME/glib!1422 19 March 2020, 08:08:22 UTC
a19e554 glib: Update Unicode Character Database to version 13.0.0 Using commands: ``` glib/gen-unicode-tables.pl -both 13.0.0 path/to/UCD tests/gen-casefold-txt.py 13.0.0 path/to/UCD/CaseFolding.txt \ > tests/casefold.txt tests/gen-casemap-txt.py 13.0.0 path/to/UCD/UnicodeData.txt \ path/to/UCD/SpecialCasing.txt > tests/casemap.txt ``` Using UCD release https://www.unicode.org/Public/zipped/13.0.0/UCD.zip With some manual additions to `GUnicodeScript` for the 4 new scripts added in 13.0, using the first assigned character in each block in `glib/tests/unicode.c`. Signed-off-by: Philip Withnall <withnall@endlessm.com> 18 March 2020, 14:50:36 UTC
bba5576 Merge branch '480-gdbus-connection-test' into 'master' Race fixes for gdbus-connection unit tests Closes #480 See merge request GNOME/glib!1419 18 March 2020, 10:27:02 UTC
ea64c73 gvdb-builder: Initialise some memory to zero in the bloom filter Until a bloom filter is implemented, we need to ensure that all the memory returned by `file_builder_allocate()` is initialised, since it’s not initialised at allocation time. Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #2 18 March 2020, 09:15:59 UTC
944bcd9 Merge branch 'tests_search-utils_locale_fix' into 'master' gstrutils: Set locale explicitly for search-utils test See merge request GNOME/glib!1414 18 March 2020, 08:58:03 UTC
5466a64 gstrutils: Set locale explicitly for search-utils test The test checks `g_str_match_string()` function, which performs matches based on user's locale. For this reason, some tests may fail, e.g., see issue #868. Now we explicitly set locale for each test, with C locale as a fallback when the locale is not available. 18 March 2020, 08:58:02 UTC
417eb64 Merge branch '2067' into 'master' gmacros.h: avoid using _Static_assert in C++17 mode Closes #2067 See merge request GNOME/glib!1420 17 March 2020, 19:51:51 UTC
0f17659 gmacros.h: avoid using _Static_assert in C++17 mode Closes #2067 17 March 2020, 19:00:54 UTC
721e385 tests: Use atomics for shared data in gdbus-connection test D-Bus filter functions run in a worker thread. The `gdbus-connection` test was sharing a `FilterData` struct between the main thread and the filter function, which was occasionally (on the order of 0.01% of test runs) causing spurious test failures due to racing on reads/writes of `num_handled`. Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #480 17 March 2020, 15:22:04 UTC
0d567c7 tests: Port gdbus-connection to use g_assert_*() rather than g_assert() g_assert() can be compiled out with G_DISABLE_ASSERT, which renders the test rather useless. Signed-off-by: Philip Withnall <withnall@endlessm.com> Helps: #480 17 March 2020, 15:21:51 UTC
9aa3361 Update Ukrainian translation 17 March 2020, 15:10:45 UTC
21a6f04 Merge branch '1154-array-docs' into 'master' garray: Clarify documentation in a few places Closes #1154 See merge request GNOME/glib!1404 17 March 2020, 13:50:06 UTC
2e23b9e Merge branch 'optional_inet_address' into 'master' ginetaddress, ginetsocketaddress: Add missing (nullable) annotations See merge request GNOME/glib!1418 17 March 2020, 13:06:41 UTC
1dfdb75 ginetaddress, ginetsocketaddress: Add missing (nullable) annotations In both modules, new_from_string() may return NULL. 17 March 2020, 11:14:51 UTC
5d6e3d5 Merge branch 'fix-win-assert' into 'master' meson: Don't use assert in test code See merge request GNOME/glib!1415 13 March 2020, 12:22:52 UTC
2744d79 meson: Don't use assert in test code The test code can be built on Windows using Cygwin or MSYS2. Even though it's test code, it might bring assertion dialog box for native Windows while meson configure. 13 March 2020, 11:32:43 UTC
8be96d5 Merge branch 'gapplication-minor-typo' into 'master' gapplication: Fix a minor typo in the documentation See merge request GNOME/glib!1413 11 March 2020, 00:31:37 UTC
c1f8f06 gapplication: Fix a minor typo in the documentation 10 March 2020, 22:40:02 UTC
711de65 Merge branch '1986-socks-version' into 'master' gsocks5proxy: Fix SOCKS5 username/password authentication Closes #1986 See merge request GNOME/glib!1391 10 March 2020, 15:11:09 UTC
047957e Merge branch '1988-socks5-error' into 'master' gsocks5proxy: Always advertise username/password authentication support Closes #1988 See merge request GNOME/glib!1392 10 March 2020, 14:58:25 UTC
267a245 gsocks5proxy: Return G_IO_ERROR_PROXY_NEED_AUTH if anonymous auth fails If a username and password are specified by the caller, `GSocks5Proxy` tells the server that it supports anonymous *and* username/password authentication, and the server can choose which it prefers. Otherwise, `GSocks5Proxy` only says that it supports anonymous authentication. If that’s not acceptable to the server, the code was previously returning `G_IO_ERROR_PROXY_AUTH_FAILED`. That error code doesn’t indicate to the caller that authentication might succeed were they to provide a username and password. Change the error handling to make that clearer. A fuller solution would be to expose more of the method negotiation in the `GSocks5Proxy` API, so that the caller can specify ahead of time which authentication methods they want to use. That can follow in issue #2059 though. Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #1988 10 March 2020, 11:38:43 UTC
24a0bba Update German translation 09 March 2020, 22:53:24 UTC
879f3cd Merge branch '2057-malloc-trim' into 'master' gmemorymonitor: Mention malloc_trim() in the documentation Closes #2057 See merge request GNOME/glib!1410 09 March 2020, 20:37:20 UTC
f818f50 Merge branch 'wip/tingping/gdummytlsconnection-properties' into 'master' gdummytlsconnection: Add missing overrides for ALPN properties See merge request GNOME/glib!1409 09 March 2020, 20:21:43 UTC
16c6028 gmemorymonitor: Mention malloc_trim() in the documentation Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #2057 09 March 2020, 20:07:43 UTC
13d4433 Update Serbian translation (cherry picked from commit 255a5be57b00326149569a0e3942a19d9623bc15) 08 March 2020, 20:49:49 UTC
455e621 gdummytlsconnection: Add missing overrides for ALPN properties 07 March 2020, 03:26:13 UTC
4586bd3 Update Dutch translation (cherry picked from commit 7015b4f9212c729786a1b4f31e30f5e2624be013) 06 March 2020, 15:33:54 UTC
93ece66 Update Italian translation 06 March 2020, 14:35:01 UTC
42c7e89 Merge branch 'w32-fileinfo-mtime-usec' into 'master' Support nanoseconds in stat timestamps on Windows See merge request GNOME/glib!1329 06 March 2020, 12:58:00 UTC
c8ad0aa Merge branch 'wip/tbaederr/clang-warnings' into 'master' tests: Don't compare strings by pointer See merge request GNOME/glib!1408 05 March 2020, 11:32:38 UTC
662059d tests: Don't compare strings by pointer clang complains about this in the form of <source>:6:9: warning: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) if (f == (void *)"a") { ^ ~~~~~~~~~~~ Use variables for the strings instead, which should have the same address. 05 March 2020, 08:39:33 UTC
5892c98 Fix broken markup in Slovak UI translation 04 March 2020, 19:18:49 UTC
f08d81d Fix broken markup in Norwegian Bokmål UI translation 04 March 2020, 19:18:49 UTC
da443b6 Fix broken markup in Malay UI translation 04 March 2020, 19:18:49 UTC
6da07a0 Fix broken markup in Latvian UI translation 04 March 2020, 19:18:49 UTC
c806905 Fix broken markup in Lithuanian UI translation 04 March 2020, 19:18:49 UTC
f7f8315 Fix broken markup in Galician UI translation 04 March 2020, 19:18:49 UTC
cf7c522 Fix broken markup in French UI translation 04 March 2020, 19:18:49 UTC
b7a74c4 Fix broken markup in Catalan UI translations 04 March 2020, 19:18:49 UTC
d149f5e Merge branch 'wip/smcv/show-execution-environment' into 'master' CI: Show execution environment before we start See merge request GNOME/glib!1360 04 March 2020, 17:24:07 UTC
28133fe Merge branch '2051-unix-output-stream-fsync' into 'master' gunix{input|output}stream: Drop custom close_{async|finish}() methods Closes #2051 See merge request GNOME/glib!1401 04 March 2020, 15:35:47 UTC
2510d5a Merge branch 'wip/Jehan/g_param_is_valid_property_name' into 'master' gobject: new g_param_is_valid_property_name() function. See merge request GNOME/glib!1302 04 March 2020, 15:30:38 UTC
dff2e3b CI: Show execution environment before we start This will help to debug CI issues that are related to us running in a container that might have unusual capabilities, mount points, filesystems etc., such as (probably) #2027, #2028, #2029. Signed-off-by: Simon McVittie <smcv@collabora.com> 04 March 2020, 15:25:47 UTC
d49393e gparam: Clarify that parameter names must be non-empty Signed-off-by: Philip Withnall <withnall@endlessm.com> 04 March 2020, 14:46:28 UTC
13d1697 gobject: Add g_{param_spec,signal}_is_valid_name() functions Making this validation code public allows projects to validate a GParamSpec name before creating it. While hard-coded GParamSpec don't need this, we can't afford crashing the main program for dynamically generated GParamSpec from user-created data. In such case, we will need to validate the param names and return errors instead of trying to create a GParamSpec with invalid names. Includes modifications from Philip Withnall and Emmanuele Bassi to rearrange the new function addition and split it into one function for GParamSpecs and one for GSignals. 04 March 2020, 14:46:28 UTC
fb1e416 gversionmacros: Add version macros for GLib 2.66 Signed-off-by: Philip Withnall <withnall@endlessm.com> 04 March 2020, 14:46:28 UTC
6040819 build: Post-release version bump to 2.65.0 Ready for the new unstable release series. Signed-off-by: Philip Withnall <withnall@endlessm.com> 04 March 2020, 14:46:28 UTC
8f16a89 Merge branch '2038-tls-connection-annotations' into 'master' gtlsconnection: Add missing (nullable) annotations Closes #2038 See merge request GNOME/glib!1368 04 March 2020, 14:15:07 UTC
855e1de Merge branch 'wip/tbaederr/fallthrough' into 'master' Replace fallthrough comments with G_GNUC_FALLTHROUGH See merge request GNOME/glib!1406 04 March 2020, 11:10:01 UTC
51953dd Merge branch 'wip/baedert/fallthrough-clang' into 'master' macros: Define G_GNUC_FALLTHROUGH for more compilers See merge request GNOME/glib!1396 04 March 2020, 11:08:26 UTC
e5ab441 Replace fallthrough comments with G_GNUC_FALLTHROUGH It's safer to do it this way and since we have G_GNUC_FALLTHROUGH now, w e might as well replace the fallthrough comments. 04 March 2020, 10:21:17 UTC
b72acc9 Merge branch 'disable_mem-overflow_test_link_warning' into 'master' tests: Disable link-time warning for mem-overflow See merge request GNOME/glib!1405 04 March 2020, 10:17:40 UTC
43dbf98 tests: Disable link-time warning for mem-overflow `mem-overflow` test disables GCC warning `alloc-size-larger-than` via diagnostic pragma, but it's still emitted in the linkage stage when LTO is enabled. This changes explicitly set `link_args` for the test to disable the warning. 03 March 2020, 20:54:21 UTC
46d343e garray: Clarify documentation in a few places Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #1154 03 March 2020, 14:32:37 UTC
66af0d2 Update Italian translation 03 March 2020, 10:40:50 UTC
0a2dc16 gunix{input|output}stream: Drop custom close_{async|finish}() methods They were not actually asynchronous, and hence caused blocking in the main thread. Deleting them means the default implementation of those vfuncs is used, which runs the sync implementation in a thread — which is what is wanted here. Spotted by Benjamin Otte. Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #2051 02 March 2020, 13:55:00 UTC
back to top