Commit Graph

20395 Commits

Author SHA1 Message Date
Kalev Lember
e4bd6dd515 Add autoptr support for GRWLock 2019-05-10 12:48:20 +02:00
Rafal Luzynski
93d8482384 build: Fix a typo in the test whether _NL_ABALTMON_n is supported
The correct spelling is "_NL_ABALTMON_n" rather than "_NL_ALTMON_n".
The typo made Meson build think that _NL_ABALTMON_n constants are
not supported which was totally wrong. This made g_date_time_format()
output incorrect abbreviated month names in some languages.
The old configure.ac script was correct here.

Bug introduced in commit be4f96b650.

Closes: #1759
2019-05-10 01:19:42 +02:00
Philip Withnall
305d850902 Merge branch 'wip/desrt/gsocketclient-leak' into 'master'
gsocketclient: Fix a leak in the connection code

Closes #1774

See merge request GNOME/glib!824
2019-05-09 16:53:22 +00:00
Allison Karlitskaya
bdefe5f9e1 gsocketclient: Fix a leak in the connection code
We miss releasing the async operation's reference on a state object in
one of the error cases.

The call to connection_attempt_remove() (although it calls unref
internally) is not sufficient because this is releasing the reference
that the list owns.

Closes #1774
2019-05-09 12:57:00 +02:00
Philip Withnall
a1d5395f10 Merge branch 'autoptr-assertions' into 'master'
Various minor cleanups to autoptrs

See merge request GNOME/glib!821
2019-05-08 20:51:58 +00:00
Sebastian Dröge
6ce96382d3 Merge branch 'unicode-12.1' into 'master'
glib: Update Unicode Character Database to version 12.1.0

See merge request GNOME/glib!822
2019-05-08 20:48:41 +00:00
Philip Withnall
5a30f852d6 docs: Improve formatting of g_autoptr() documentation
Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-08 21:21:39 +01:00
Philip Withnall
62be3d5d3e tests: Use g_assert_*() in autoptr tests rather than g_assert()
It gives clearer failure messages, and won’t get compiled out when
building with G_DISABLE_ASSERT.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-08 21:21:39 +01:00
Philip Withnall
ae47f0d156 Merge branch 'more-auto-macros' into 'master'
Add g_autoqueue

See merge request GNOME/glib!474
2019-05-08 20:19:43 +00:00
Marco Trevisan (Treviño)
1d96e94070 gmacros: Add g_autoqueue to automatically free queues
This works as g_auto(s)list already does, and allows to create queues that are
fully auto free'd on destruction.
2019-05-08 14:25:24 -05:00
Philip Withnall
babe5cdf5e Merge branch 'g_unichar_isxdigit_full_width' into 'master'
Getting fullwidth unichar for g_unichar_xdigit(_value)

Closes #58

See merge request GNOME/glib!771
2019-05-08 12:19:30 +00:00
Philip Withnall
64ddd32b79 glib: Update Unicode Character Database to version 12.1.0
Using commands:
```
glib/gen-unicode-tables.pl -both 12.1.0 path/to/UCD
tests/gen-casefold-txt.py 12.1.0 path/to/UCD/CaseFolding.txt \
   > tests/casefold.txt
tests/gen-casemap-txt.py 12.1.0 path/to/UCD/UnicodeData.txt \
   path/to/UCD/SpecialCasing.txt > tests/casemap.txt
```

Using UCD release https://www.unicode.org/Public/zipped/12.1.0/UCD.zip.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-08 13:07:55 +01:00
Emmanuele Bassi
47bcc6d852 Merge branch 'ci-report-debian-stable' into 'master'
ci: Keep JUnit report script working on Debian stable

See merge request GNOME/glib!820
2019-05-08 11:56:09 +00:00
Emmanuele Bassi
db849efc2a ci: Keep JUnit report script working on Debian stable
The current Debian stable CI image ships with Python 3.5, so the Meson
log to JUnit report script is failing because it's using an API addition
present in Python 3.6 or later.

Since it's just a cosmetic option for the time stamp, we can get rid of
it.
2019-05-08 12:40:45 +01:00
Philip Withnall
f666502dd2 gdate: Officially mark GTime as deprecated
The documentation has marked it as deprecated for a long time, but not
in a structured way. Use the gtk-doc ‘Deprecated’ tag to mark it as
deprecated.

Signed-off-by: Philip Withnall <withnall@endlessm.com>

Helps: #1438
2019-05-08 12:09:54 +01:00
Emmanuel Fleury
17fb60c165 Improving code coverage of glib/guniprop.c 2019-05-07 18:31:04 +02:00
Emmanuel Fleury
ae4eea7a39 Formating test cases to the new standards
- Added comments at the begin of each test case
- Changed 'g_assert()' into 'g_assert_xxx()'
- Sorted the 'g_test_add_func()' entries
2019-05-07 18:31:04 +02:00
Emmanuel Fleury
d8cc47831d Getting fullwidth for g_unichar_xdigit(_value)
Fix issue #58.
2019-05-07 18:31:04 +02:00
Philip Withnall
76966e6b28 Merge branch 'wip/ernestask/dtd-fix' into 'master'
gschema.dtd: Add target attribute to alias

See merge request GNOME/glib!814
2019-05-07 10:31:53 +00:00
Philip Withnall
0ff97045b8 Merge branch '1739-freebsd-too' into 'master'
tests: Don’t check for libdl on FreeBSD or NetBSD either

Closes #1739

See merge request GNOME/glib!810
2019-05-07 10:26:57 +00:00
Michael Catanzaro
b17436d952 Merge branch 'wip/tingping/socketclient-cancel-2' into 'master'
gsocketclient: Fix potential critical when cancelling connect

Closes #1747

See merge request GNOME/glib!783
2019-05-06 21:50:25 +00:00
Ernestas Kulik
3d9a896f2b gschema.dtd: Add target attribute to alias
The implementation requires it, but the DTD doesn’t even mention it.
2019-05-06 16:26:53 +02:00
Emmanuele Bassi
8811790653 Merge branch 'wip/carlosg/appinfo-environment-preconditions' into 'master'
gappinfo: Add precondition checks to GAppLaunchContext env methods

See merge request GNOME/glib!813
2019-05-06 11:29:30 +00:00
Carlos Garnacho
133ad1d390 gappinfo: Add precondition checks to GAppLaunchContext env methods
Spotted in https://gitlab.gnome.org/GNOME/mutter/issues/586. Bad input
on GAppLaunchContext environment manipulation functions is caught by
inner code, but the warning is not seemingly related.

Add precondition checks to these functions so it's clear where does the
bad input come from.
2019-05-06 13:05:24 +02:00
Sebastian Dröge
5bb2366a49 Merge branch '106-boxed-documentation' into 'master'
docs: Expand introduction to boxed types

Closes #106

See merge request GNOME/glib!798
2019-05-02 14:59:35 +00:00
Sebastian Dröge
9be2ce31d5 Merge branch '1768-strlcat-test-fix' into 'master'
tests: Increase buffer size for g_strlcat() tests

Closes #1768

See merge request GNOME/glib!811
2019-05-02 14:55:36 +00:00
Sebastian Dröge
d5f9b5327a Merge branch 'queue-tests' into 'master'
Get to 100% coverage on GQueue tests

See merge request GNOME/glib!806
2019-05-02 14:51:24 +00:00
Philip Withnall
15aaaeaa50 docs: Expand introduction to boxed types
Signed-off-by: Philip Withnall <withnall@endlessm.com>

Fixes: #106
2019-05-02 14:31:31 +01:00
Sebastian Dröge
d16a7b26eb Merge branch 'socket-docs-trivial' into 'master'
gsocket: Clarify in docs that `flags` arguments can be platform specific

See merge request GNOME/glib!732
2019-05-02 12:54:18 +00:00
Philip Withnall
d5093350f3 gqueue: Remove a redundant branch
queue->tail->next cannot be non-NULL, as pushing onto the end of the
queue is handled by the call to g_queue_push_tail_link() above.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-02 13:53:09 +01:00
Philip Withnall
4f38620b13 tests: Add unit tests for g_queue_push_nth_link()
This should get its branch coverage up to 100%. For completeness’ sake.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-02 13:53:09 +01:00
Philip Withnall
f033948998 tests: Add a test for calling g_queue_clear_full() with a NULL free_func
This improves the branch coverage of gqueue.c a little.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-02 13:53:09 +01:00
Philip Withnall
2aa71ab63b tests: Rearrange assertions in the g_queue_clear_full() test
This makes it a bit clearer that we expect the queue to be empty as a
result of calling g_queue_clear_full(), rather than as a result of any
of the later cleanup.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-02 13:50:38 +01:00
Sebastian Dröge
aaf0a7c943 Merge branch '1713-ucd-12' into 'master'
glib: Update Unicode Character Database to version 12.0.0

Closes #1713

See merge request GNOME/glib!804
2019-05-02 12:49:16 +00:00
Philip Withnall
81ba6e54fe tests: Remove redundant non-NULL checks in g_strlcat() test
The buffer is a local array, not a pointer, so can never be NULL.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-02 13:28:55 +01:00
Philip Withnall
777a6030a6 tests: Add checks for buffer sizing in g_strlcat() tests
Just to ensure we’re passing a valid value for dest_size.

Signed-off-by: Philip Withnall <withnall@endlessm.com>

Helps: #1768
2019-05-02 13:28:27 +01:00
Philip Withnall
7541085589 tests: Increase buffer size for g_strlcat() tests
There was a buffer overflow on the last g_strlcat() call in the test.

Signed-off-by: Philip Withnall <withnall@endlessm.com>

Fixes: #1768
2019-05-02 13:27:53 +01:00
Sebastian Dröge
0095056008 Merge branch '1755-revert-gstrfunc' into 'master'
Revert "macros: Try to use the standard __func__ first in G_STRFUNC"

Closes #1755

See merge request GNOME/glib!799
2019-05-02 12:24:15 +00:00
Philip Withnall
c6342b975d tests: Don’t check for libdl on FreeBSD or NetBSD either
As with commit c14ac90ed2, it isn’t needed
and doesn’t exist.

Signed-off-by: Philip Withnall <withnall@endlessm.com>

Fixes: #1739
2019-05-02 13:00:48 +01:00
Philip Withnall
22d4a44cd6 Merge branch 'emmanuel.fleury/glib-g_strcanon_documentation_fix' into 'master'
Modified version of !784 — Adding tests cases for a better coverage of glib/tests/strfuncs.c

See merge request GNOME/glib!809
2019-05-01 23:30:07 +00:00
Emmanuel Fleury
4afab02376 Adding tests cases for a better coverage of glib/tests/strfuncs.c 2019-05-02 00:13:25 +01:00
Philip Withnall
375fa65b24 Merge branch 'wip/chergert/insertbeforelink' into 'master'
Add pre-allocated link helpers for GList and GQueue

See merge request GNOME/glib!476
2019-05-01 22:47:15 +00:00
Christian Hergert
b3925ff5e4 glist: code style cleanup for g_list_insert_before()
This makes the g_list_insert_before() follow more closely the guidelines
for GLib, which is to avoid implicit pointer boolean value and to prefer
for over while to improve readability.
2019-05-01 13:01:14 -07:00
Christian Hergert
a4c3feb835 queue: add g_queue_insert_before_link() and g_queue_insert_after_link()
This adds two new helpers that allow for inserting pre-allocated GList
elements to the queue similar to existing helpers. This may be advantagous
in some situations such as statically allocated GList elements.
2019-05-01 13:01:14 -07:00
Christian Hergert
b0132bb64f list: add g_list_insert_before_link()
This adds a new insertion helper using a pre-allocated link which may be
advantagous in some situations such as statically linked GList elements.
2019-05-01 13:01:14 -07:00
Philip Withnall
d23a8bd6e4 ci: Add scan-build job in a new ‘analysis’ pipeline stage
Use Meson’s support for running scan-build (Clang’s static analyser)
against the build, so that we get static analysis of each pipeline. Add
it in a new pipeline stage, after code coverage, so that we don’t waste
resources on it unless the unit tests pass — a static analysis build
takes perhaps 10× as long as a normal GCC build.

https://mesonbuild.com/howtox.html#use-clang-static-analyzer

Currently, the static analysis results are uploaded as artifacts, but
the job will always succeed (regardless of whether there are any bugs
found in the analysis).

Currently, a large number of reports are outputted by the analyser,
which need to be fixed before we can gate the pipeline on it.
Furthermore, in order to get scan-build to exit with a non-zero status
if any bugs are found, we need to depend on Meson ≥ 0.49.0, which
contains the fix https://github.com/mesonbuild/meson/issues/4334,
allowing us to add the following to .gitlab-ci.yml:
```
variables:
  # Exit with a non-zero status if any bugs are found
  SCANBUILD: "scan-build --status-bugs"
```

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-01 12:48:08 +01:00
Philip Withnall
48b037fc3a Merge branch 'ci-update' into 'master'
Update the Docker images used for CI

See merge request GNOME/glib!808
2019-05-01 10:12:02 +00:00
Emmanuele Bassi
0b609b53fa ci: Add a debian-stable job
So we can test ancient toolchains.
2019-04-30 18:26:15 +01:00
Emmanuele Bassi
992e7cee34 ci: Move to per-job images
We don't use a global Docker image any more.
2019-04-30 18:26:15 +01:00
Emmanuele Bassi
397e44fc8a ci: Update the Android NDK image to Fedora 28
Fedora 27 was EOL'ed on November 2018.

We move to Fedora 28 because the Android NDK requires Python 2 and
probably other things, and bumping to Fedora 29 is going to be more
painful.
2019-04-30 18:26:15 +01:00