Commit Graph
100 Commits
Author SHA1 Message Date
Colin Walters 6303229c4e Add 2021.3 feature
(We should add doing this as a SOP for ostree releases)
2022-05-06 12:53:56 -04:00
Colin Walters 04a42dff1e Bump versions
The glib 0.14 change is semver incompatible.
2022-05-06 12:53:56 -04:00
Colin Walters 8a5ac02822 Update to glib 0.14
An intimidating spam of compiler errors at the start, but the
biggest was handling the new convention of `ostree_sys::` => `ffi::`.

This will require a semver bump of course.
2022-05-06 12:53:56 -04:00
Colin Walters f276c040bd ci: Fix buildroot to use new official image
Which is maintained and has updated rust.
2022-05-06 12:53:56 -04:00
Colin Walters ae189bec80 Mark src/auto/* as generated 2022-05-06 12:53:56 -04:00
Colin Walters bd843b2eae Bump sys version requirement 2022-05-06 12:53:56 -04:00
Colin Walters 42110ce01b Bump versions 2022-05-06 12:53:56 -04:00
Colin Walters 7d15179670 Update to 2021.2
Sync to https://github.com/ostreedev/ostree/releases/tag/v2021.2
2022-05-06 12:53:56 -04:00
Colin Walters 9bb0dd3c4d ci: Add GH action to build 2022-05-06 12:53:56 -04:00
Colin Walters b5496f70f6 repo: Add concurrency=send
Ultimately a repo is just a file descriptor wrapper with some
cached data, etc.  We can send it between threads, much like how
`gio::File` is `Send`.

Motivated by trying to write to a repo from a separate thread
in https://github.com/cgwalters/ostree-container
2022-05-06 12:53:56 -04:00
Colin Walters 3583143cf0 configure: post-release version bump 2022-05-04 13:51:45 -04:00
Colin Walters 0554beb4c2 Release 2022.3 2022-05-04 13:50:06 -04:00
Colin Walters d3d3e4ea13 Add an ostree-boot-complete.service to propagate staging failures
Quite a while ago we added staged deployments, which solved
a bunch of issues around the `/etc` merge.  However...a persistent
problem since then is that any failures in that process that
happened in the *previous* boot are not very visible.

We ship custom code in `rpm-ostree status` to query the previous
journal.  But that has a few problems - one is that on systems
that have been up a while, that failure message may even get
rotated out.  And second, some systems may not even have a persistent
journal at all.

A general thing we do in e.g. Fedora CoreOS testing is to check
for systemd unit failures.  We do that both in our automated tests,
and we even ship code that displays them on ssh logins.  And beyond
that obviously a lot of other projects do the same; it's easy via
`systemctl --failed`.

So to make failures more visible, change our `ostree-finalize-staged.service`
to have an internal wrapper around the process that "catches" any
errors, and copies the error message into a file in `/boot/ostree`.

Then, a new `ostree-boot-complete.service` looks for this file on
startup and re-emits the error message, and fails.

It also deletes the file.  The rationale is to avoid *continually*
warning.  For example we need to handle the case when an upgrade
process creates a new staged deployment.  Now, we could change the
ostree core code to delete the warning file when that happens instead,
but this is trying to be a conservative change.

This should make failures here much more visible as is.
2022-04-26 13:02:46 -04:00
Colin Walters 98587a72db Merge pull request #2588 from cgwalters/ostree-and-ima
docs: Add new IMA document
2022-04-21 18:13:07 -04:00
Colin WaltersandJonathan Lebon b070e0f54a Update docs/ima.md
Co-authored-by: Jonathan Lebon <jonathan@jlebon.com>
2022-04-21 16:24:57 -04:00
Colin Walters 614d30acf3 docs: Add new IMA document
Now that the fixed code for `ima-sign` landed in
https://github.com/ostreedev/ostree-rs-ext/pull/283
2022-04-21 12:04:33 -04:00
Colin Walters b92dbc49f0 ci: Mask zincati for synthetic update
Our CI started falling over because coreos-assembler checks
for units stuck activating as of https://github.com/coreos/coreos-assembler/pull/2810

Really need to centralize the code for this and fix the root
problem, but...not today.

xref https://github.com/coreos/coreos-assembler/pull/2814
2022-04-20 20:23:10 -04:00
Colin Walters d75b934c59 Merge pull request #2583 from cgwalters/curl-check-setopt
fetcher/curl: Consistently check return value `curl_easy_setopt`
2022-04-20 20:22:12 -04:00
Colin Walters 4fd0d6b4c1 fetcher/curl: Consistently check return value curl_easy_setopt
Static analyzers don't like when we only check it sometimes.

And we definitely want to know if any of these are failing.
2022-04-20 15:16:22 -04:00
Colin Walters 688f0c4eea Merge pull request #2578 from lucab/ups/move-fixture
tests: move fixture to fix installed tests
2022-04-12 11:47:07 -04:00
Colin Walters f21944da1c Merge pull request #2577 from dbnicholson/man-html
Publish man pages
2022-04-09 15:46:25 -04:00
Colin Walters 2346d5f4d5 libarchive: Handle archive_entry_symlink() returning NULL
The `archive_entry_symlink()` API can definitely return `NULL`,
reading through the libarchive sources.

I hit this in the wild when using old ostree-ext to try to unpack
a chunked archive.

I didn't try to characterize this more, and sorry no unit test right
now.
2022-04-04 10:25:35 -04:00
Colin Walters fdfb353f19 Merge pull request #2569 from WOnder93/finalize-deployment-selinux-policy
deploy: Try to rebuild policy in new deployment if needed
2022-03-28 20:55:07 -04:00
Colin Walters c58a4fe661 deploy: Be a bit more verbose about SELinux bits
Let's log when we don't find the expected CLI argument which
will help debug things.
2022-03-28 17:46:59 -04:00
Colin Walters 86741ad18a Merge pull request #2573 from jtojnar/single-bin-coreutils-extensions
tests/test-cli-extensions: Fix with single-binary coreutils
2022-03-28 11:11:55 -04:00
Colin Walters afdc84b97b Update to sh-inline 0.2
Syncing up with the latest.
2022-03-14 09:54:48 -04:00
Colin Walters e6f92f76fa ci: Update docs workflow to use fcos-buildroot
This way we can also use `./ci/installdeps.sh` which avoids yet
another list of dependencies.
2022-03-14 09:27:07 -04:00
Colin Walters 089b821098 ci: Disable Ubuntu LTS
It doesn't have a new enough glib.
2022-03-14 09:21:15 -04:00
Colin Walters 6ba254ab11 Merge pull request #2551 from q66/guri
lib: bump glib requirement to 2.66 and port to GUri
2022-03-14 08:52:51 -04:00
Colin Walters 75ae283f23 Update to rand 0.8
Part of general crate updates.
2022-03-11 15:34:59 -05:00
Colin Walters fba7efb6da Update to ostree-ext 0.6
Part of general crate updates.
2022-03-11 15:33:02 -05:00
Colin Walters 34d1bcc68a Update to nix 0.23
Part of general crate updates.
2022-03-11 15:32:27 -05:00
Colin Walters b6d1119f91 tests: Stop using inventory crate
I was reading this thread
https://internals.rust-lang.org/t/from-life-before-main-to-common-life-in-main/16006/30
and that reminded me about this code, which it turns out actually
doesn't compile with my default local cargo config:
```
$ cat ~/.cargo/config
[target.x86_64-unknown-linux-gnu]
rustflags = ["-Ctarget-cpu=native", "-C", "link-arg=-fuse-ld=lld"]

[profile.release]
incremental = true
$ cargo b
...
error: linking with `cc` failed: exit status: 1
  |
  = note: "cc" "-m64" "/var/srv/walters/src/github/ostreedev/ostree/target/debug/deps/ostree_test-4ca8e730f9dc6ffc.10325uqlhkyr5uol.rcgu.o" "/var/srv/walte"
  = note: ld.lld: error: undefined symbol: __start_linkme_NONDESTRUCTIVE_TESTS
          >>> referenced by 22nn09lfsklfqvyy
          >>>               /var/srv/walters/src/github/ostreedev/ostree/target/debug/deps/ostree_test-4ca8e730f9dc6ffc.22nn09lfsklfqvyy.rcgu.o:(ostree_tes)

```

For now let's just go back to having a static list of functions.
We don't have *too* many of those.
2022-03-11 14:53:29 -05:00
Colin Walters 0d020a7145 tmpfiles: Create /run/ostree
This is referenced by https://github.com/ostreedev/ostree-rs-ext/blob/9645cee4f29786ba51ae9d62a52eeef9230146fd/lib/src/globals.rs#L16
specifically used for the (container image) pull secret in
`/run/ostree/auth.json`.

Let's pre-create the directory so users don't have to.

Motivated by https://github.com/openshift/machine-config-operator/pull/3007#discussion_r824172564
2022-03-11 13:08:23 -05:00
Colin Walters 566fa59753 Merge pull request #2561 from pwithnall/pull-leak
ostree-repo-pull: Take correct out path on error
2022-03-08 11:22:42 -05:00
Colin Walters 775ff6e687 Merge pull request #2560 from smcv/sigpipe
test-prune: Read to the end of cut(1) output
2022-03-08 10:29:11 -05:00
Colin Walters 21a083db69 Merge pull request #2559 from smcv/shebang
Fix shebang in s390x-se-luks-gencpio
2022-03-08 09:46:07 -05:00
Colin Walters d7d1526956 Merge pull request #2557 from lucab/ups/apidoc-includes
apidoc: add missing page includes
2022-03-07 04:10:34 -05:00
Colin Walters 511d02daec Merge pull request #2556 from ostreedev/release-2022.2
Release 2022.2
2022-03-03 19:23:29 -05:00
Colin Walters 4c0f9e0949 configure: post-release version bump 2022-03-03 18:44:30 -05:00
Colin Walters fbc6d21c2f Release 2022.2 2022-03-03 18:44:30 -05:00
Colin Walters 06d13ff16c Merge pull request #2532 from lucab/ups/repo-mode-bare-split-xattrs
lib/core: introduce 'bare-split-xattrs' mode
2022-03-03 09:41:45 -05:00
Colin Walters 999c70346a Merge pull request #2536 from saqibali-2k/pr/prune-commit-only
src/ostree: Add --commit-only option to ostree prune
2022-02-28 08:47:09 -05:00
Colin Walters 4304505af8 Merge pull request #2549 from ostreedev/mwleeds/fix-partial-delta-fetches
Fix marking static delta commits as partial
2022-02-21 14:23:39 -05:00
Colin Walters f36a940ed0 mtree: Load traversed subdirs when creating parents
I'm working on enhancing the ostree-rs-ext test suite and I hit
a bug where walking a mtree and creating a parent would fail to
load lazy intermediate directories, e.g.:

/ -> usr -> bin

If we walked we'd load `/` but keep `usr` lazy, and then invalidation
would crash because it wasn't loaded.

If we're going to mutate a subdir, we need to have all the parents
loaded.

I know this is missing tests, but...it's a bit tedious to do with
the existing C tests.  Eventually soon we'll execute on merging
all 3 repos, and better share test suites.
2022-02-18 10:30:27 -05:00
Colin Walters 929f62c59e mtree: Use declare-and-initialize style
Prep for further work.
2022-02-18 10:22:26 -05:00
Colin Walters 71ae1c35e3 build-sys: Drop -Werror=aggregate-return
This is failing for me as of recently but only when I build
without optimization.  I don't think we've ever written any
code that returned a large structure by value.

Let's just drop this one.
2022-02-17 14:22:27 -05:00
Colin Walters 12cafbcf8d Merge pull request #2545 from dbnicholson/lgtm-deps
.lgtm.yml: Fix gpgme dependency
2022-02-17 12:45:19 -05:00
Colin Walters 188b18795a Merge pull request #2542 from cgwalters/tar-error-prefixing
lib/tar: Add some error prefixing
2022-02-15 18:22:01 -05:00
Colin Walters 48104f76ee lib/tar: Add some error prefixing
We're trying to debug a problem with a tar stream with hardlinks,
and I think this will be helpful.
2022-02-15 15:33:04 -05:00
Colin Walters e6a734ab25 Merge pull request #2541 from melix99/find-remotes-fix-typo
man: Fix typo in ostree-find-remotes
2022-02-13 10:54:30 -05:00
Colin Walters 65f318a80a Merge pull request #2540 from melix99/switch-fix-typo
man: Fix typo in ostree-admin-switch
2022-02-13 10:53:33 -05:00
Colin Walters d61fdc7123 Merge pull request #2539 from chergert/main
lib/bootloader: use ot_journal_print() instead of sd-journal
2022-02-12 09:04:43 -05:00
Colin Walters bea8d9a2b4 Merge pull request #2538 from cgwalters/dirmeta-not-floating
core: Mark `ostree_create_directory_metadata` as `(not nullable)`
2022-02-11 18:01:49 -05:00
Colin Walters 5f2ab097d5 Merge pull request #2491 from nikita-dubrovskii/secure-execution
s390x: add secure-execution support
2022-02-11 15:34:55 -05:00
Colin Walters ea5f7b0f38 core: Mark ostree_create_directory_metadata as (not nullable)
So I can drop an unnecessary use of `unwrap()` in Rust.
2022-02-11 14:09:49 -05:00
Colin Walters d8e33e3a49 Merge pull request #2537 from jlebon/pr/fix-floating
lib/gpg-verify-result: Add missing floating annotation
2022-02-09 17:15:26 -05:00
Colin Walters 0eaad8762b Merge pull request #2535 from dbnicholson/summary-commit-version
lib/repo: Add commit version metadata to summary metadata
2022-02-04 17:51:02 -05:00
Colin Walters a10669dc4a Merge pull request #2530 from smcv/update-libglnx-2525
Update libglnx submodule
2022-01-29 10:19:24 -05:00
Colin Walters 2903ffac60 Merge pull request #2529 from smcv/static-delta-error-unwind
libotutil: Avoid infinite recursion during error unwinding
2022-01-28 09:22:27 -05:00
Colin Walters bcc7f62ed7 Merge pull request #2526 from lucab/ups/openat-load-xattrs
lib/repo: open file only if required
2022-01-25 05:59:58 -05:00
Colin Walters 8c58195cc4 deploy: Also log to journal if we time out global sync()
We do implicitly have this data because we log timings via structured
metadata in a later journal entry, but it's quite common to lose
the structured metadata because a lot of tooling just grabs the default
syslog-compatible text from `journalctl`.

Let's be louder when we hit this case as a general rule too; I think
most people shipping ostree systems want to see if it's happening.
2022-01-20 10:52:04 -05:00
Colin Walters 51361f62af Merge pull request #2520 from lucab/ups/builtin-commit-reject-empty-metadata
lib/commit: reject empty metadata keys
2022-01-20 09:04:34 -05:00
Colin Walters a05b02fa9c Merge pull request #2519 from cgwalters/syncfs-only
deploy: Add a 5s max timeout on global filesystem `sync()`
2022-01-18 12:39:32 -05:00
Colin Walters cb73129483 deploy: Add a 5s max timeout on global filesystem sync()
https://bugzilla.redhat.com/show_bug.cgi?id=2003532

Basically there's a systemd bug where it's losing the `_netdev`
aspect of Ceph filesystem mounts.  This means the network is taken
down before Ceph is unmounted.  In turn, our invocation of `sync()`
blocks on Ceph, which won't succeed.

And this in turn manifests as a failure to transition to the new
deployment.

I initially did this patch to just rip out the global `sync()`.  I
am pretty sure we don't need it anymore.  We've been doing individual
`syncfs()` on `/sysroot` and `/boot` for a while now, and those
are the only filesystems we should be touching.  But *proving* that
is a whole other thing of course.

To be conservative, let's instead just add a timeout of 5s on
our invocation of `sync()`.  It doesn't return any information on
success/error anyways.

To allow testing without the `sync()` invocation, we also support
a new `OSTREE_SYSROOT_OPT_SKIP_SYNC=1` environment variable.  For
staged deployments, this needs to be injected via e.g. systemd unit
overrides into `ostree-finalize-staged.service`.

Implementing this is a bit hairy - we need to spawn a thread.  I
debated blocking in arecursive mainloop, but I think `g_cond_wait_until()`
is also fine here.
2022-01-18 09:19:20 -05:00
Colin Walters 0095f7c472 Merge pull request #2517 from dbnicholson/ubuntu-seccomp
github: Workaround glib/seccomp issue on Ubuntu impish
2022-01-13 09:50:19 -05:00
Colin Walters 0ff4bee743 sysroot: Add a public #define OSTREE_PATH_BOOTED
This is public API.  Motivated by
https://github.com/coreos/rpm-ostree/pull/3325/files#diff-56528694f6f3213d6fb88d872f77291412dceec263b57166519843b13eca9a4dR30
2022-01-12 12:47:11 -05:00
Colin Walters 8aeceb9b88 Merge pull request #2514 from lucab/ups/drop-setenv
libostree/sepolicy: get rid of a g_setenv() call
2022-01-12 06:51:14 -05:00
Colin Walters 998154f8ff main: Also support CLI extensions in /usr/libexec/libostree/ext
In fixing https://github.com/coreos/rpm-ostree/pull/3323
I felt that it was a bit ugly we're installing `/usr/bin/ostree-container`.

It's kind of an implementation detail.  We want users to use
`ostree container`.

Let's support values outside of $PATH too.

For example, this also ensures that TAB completion for `ost` expands
to `ostree ` with a space.
2022-01-11 20:13:33 -05:00
Colin Walters 4d47733f98 Merge pull request #2505 from lucab/ups/bsdiff-error-throw
lib/static-delta: throw a proper error on bspatch failure
2022-01-03 16:57:52 -05:00
Colin Walters 371c2f12a6 Merge pull request #2504 from lucab/ups/bsdiff-CVE-2014-9862
bsdiff: bump submodule, pick up fix for CVE-2014-9862
2022-01-03 13:20:55 -05:00
Colin Walters a27ccc96fd Merge pull request #2503 from lucab/ups/libostree-content-writer-header
lib: use ostree-content-writer header
2022-01-03 10:14:48 -05:00
Colin Walters d2f5a0476f tests: Fix clang-analyzer not seeing through g_error()
Basically due to the glib structured logging rework we lost the
`noreturn` attribute on `g_error()`.
This is fixed in glib as of https://gitlab.gnome.org/GNOME/glib/-/commit/f97ff20adf4eb7b952dd83e2c13046fe9e282f50

But we might as well just throw an error here.
2021-12-21 15:14:34 -05:00
Colin Walters 27c14f2be6 soup-uri: Fix clang-analyzer warning by dropping dead code
Fixes `Argument with 'nonnull' attribute passed null` by making
the code not exist at all anymore.

In upstream libsoup this code is gone too; it uses `GUri` from glib
which we probably could now too, but one thing at a time.
2021-12-21 15:13:56 -05:00
Colin Walters 7c6719995d Merge pull request #2500 from lucab/ups/cli-extensions
main: add support for CLI extensions via external binaries
2021-12-20 13:47:31 -05:00
Colin Walters 365559eaa8 Merge pull request #2498 from lucab/ups/test-assert-strings
tests: assert mandatory values are present
2021-12-10 13:25:03 -05:00
Colin Walters b56786c415 Merge pull request #2496 from lucab/ups/repo-asserts
lib/repo: fix problematic invariant checks
2021-12-07 19:58:23 -05:00
Colin Walters 490f515e18 Merge pull request #2494 from jmarrero/fsf-address
Update FSF license notices to use URL instead of address
2021-12-07 15:51:48 -05:00
Colin Walters a07b8d6c00 Merge pull request #2493 from cgwalters/summary-lock-shared
repo: Change locking for summary regeneration to be shared
2021-12-06 08:19:12 -05:00
Colin Walters 2c39bd88a9 repo: Change locking for summary regeneration to be shared
This is trying to address:
https://pagure.io/fedora-iot/issue/48

Basically we changed rpm-ostree to start doing a shared lock during
commit by default, but this broke because pungi is starting a process
doing a commit for each architecture, and then trying to regenerate
the summary after each one.

This patch is deleting a big comment with a rationale for why
summary regeneration should be exclusive.  Point by point:

> This makes sure the commits and deltas don't get
> deleted while generating the summary.

But prune operations require an exclusive lock, which means that
data still can't be deleted when the summary grabs a shared lock.

> It also means we can be sure refs
> won't be created/updated/deleted during the operation, without having to
> add exclusive locks to those operations which would prevent concurrent
> commits from working.

First: The status quo *has* prevented concurrent commits from working!

There is no real locking solution to this problem. What we really
need to do here is regenerate the summary after each commit *or*
when the caller decides to do it and e.g. include deltas at the same
time.

It's OK if multiple threads race to regenerate the summary;
last-one-wins behavior here is totally fine.
2021-12-03 14:42:03 -05:00
Colin Walters 2dc6ec70ec Merge pull request #2489 from ostreedev/release-2021.6
Release 2021.6
2021-11-23 09:01:57 -05:00
Colin Walters 48dfff2754 Merge pull request #2486 from jlebon/pr/remount-ostree
app: Only remount /sysroot if needed
2021-11-22 13:35:28 -05:00
Colin Walters f552e30c0b Merge pull request #2484 from dbnicholson/prune-serialize
lib/prune: Avoid unnecessary object serialization
2021-11-18 14:49:15 -05:00
Colin Walters e39280ff21 Merge pull request #2479 from cgwalters/ci-capsh
ci: Require `libcap2-bin` for `capsh`
2021-11-09 10:44:08 -05:00
Colin Walters dff36697cd Merge pull request #2477 from ratajs/patch-1
Add Fedora Kinoite link
2021-11-09 09:32:02 -05:00
Colin Walters 1a86517d65 Merge pull request #2476 from valentindavid/valentindavid/glib-fix
lib: Fix a bad call to g_file_get_child
2021-11-09 09:27:18 -05:00
Colin Walters 3b338df956 ci: Require libcap2-bin for capsh
This was previously pulled in indirectly, but it looks like we need
to require it explicitly in newer Ubuntu.
2021-11-09 09:22:43 -05:00
Colin Walters e580eca214 Merge pull request #2187 from cgwalters/sysroot-ro-initramfs
prepare-root: Set up sysroot readonly in initramfs
2021-11-04 10:37:18 -04:00
Colin Walters c553b5c69a prepare-root: Set up sysroot readonly in initramfs
Let's ensure things are right from the start in the initramfs;
this closes off various race conditions.  Followup to
https://github.com/ostreedev/ostree/pull/2113/commits/35642259175973617da937f3cab6ce5f13c95077

Closes: https://github.com/ostreedev/ostree/issues/2115
2021-11-03 16:37:20 +00:00
Colin Walters 800289a8db Merge pull request #2475 from lucab/ups/prepare-root-check-first
prepare-root: check for read-only sysroot status early on
2021-11-01 09:58:06 -04:00
Colin Walters 1e6077af03 Merge pull request #2471 from lucab/ups/prepare-root-silent-mounts
prepare-root: make all mount operations silent
2021-10-26 10:06:52 -04:00
Colin Walters 58dc6a08b4 tests/rollsum: Use g_malloc not malloc
To pacify gcc's `-fanalyzer`.
2021-10-18 11:44:44 -04:00
Colin Walters fda41e8d24 ci: Enable -fanalyzer
Followup to https://github.com/ostreedev/ostree/pull/2463

One thing I noticed here is we lost usage of `build-check.sh`
which also invokes `clang`, which doesn't speak `-fanalyzer`
and would be broken by this if we try to enable `build-check.sh`
again.  But that can come later.
2021-10-15 15:44:04 -04:00
Colin Walters baa57ffe0d libglnx: Bump to ef502aabf7d3a0d37f9c4d228f870ac93404447b
Various fixes there, including one for `gcc -fanalyzer`.

Update submodule: libglnx
2021-10-14 12:41:02 -04:00
Colin Walters 7ba8dbf0cc Attempt to update packit flow to build in COPR
No idea if this will really work, but at least `packit srpm`
does work now.
2021-10-14 12:36:38 -04:00
Colin Walters 029a9d56c3 variantutil: Fix gcc -fanalyzer warnin
Add some not-NULL assertions for return values from glib,
and upgrade some `g_return_if_fail` to `g_assert`.
2021-10-13 17:13:14 -04:00
Colin Walters 54bf42c3e5 utils: Fix unreachable NULL deref by adding assertion
Again this one is just in theory, but let's add an assertion.
2021-10-13 17:13:14 -04:00
Colin Walters f355482e1f static-delta: Fix probably not actually possible NULL deref
Flagged by `gcc -fanalyzer`.  I didn't study this really deeply
but I think it's not actually reachable.  Anyways, let's catch
it on general principle.
2021-10-13 17:13:14 -04:00
Colin Walters 3159e04980 fetcher/soup: Fix gcc -fanalyzer warning
In general, we're probably going to need to change most of our
`g_return_if_fail` to `g_assert`.  The analyzer flags that
the function can return `NULL`, but the caller isn't prepared for
this.

In practice, let's abort.
2021-10-13 17:13:14 -04:00
Colin Walters 520b45afdd sysroot: Fix gcc -fanalyzer warning
In general, we're probably going to need to change most of our
`g_return_if_fail` to `g_assert`.  The analyzer flags that
the function can return `NULL`, but the caller isn't prepared for
this.

In practice, let's abort.
2021-10-13 17:13:14 -04:00