Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update subtree: libglnx 2024-12-06 #6043

Merged
merged 7 commits into from
Jan 2, 2025
Merged

Conversation

smcv
Copy link
Collaborator

@smcv smcv commented Dec 22, 2024

  • Fix an assertion failure attempting to create a directory that exists
    as a dangling symlink (GNOME/libglnx#1)
  • Fix a Meson deprecation warning (GNOME/libglnx!60)

smcv and others added 7 commits December 5, 2024 11:35
Meson 1.1.0 officially deprecates string defaults for boolean options,
but boolean defaults worked in many older Meson versions, going back to
at least 0.49.x.

Signed-off-by: Simon McVittie <[email protected]>
build: Use a boolean default for a boolean option, rather than a string

See merge request GNOME/libglnx!60
Otherwise it could potentially race with tests in other executables that
also want to create `./test`, or interfere with other test-cases in the
same executable that expect `./test` to be nonexistent or empty.

Signed-off-by: Simon McVittie <[email protected]>
If we try to create `link/content` where `link` is a dangling symlink,
recursing to create `link` will succeed (mkdirat fails with EEXIST,
which is explicitly ignored), but then mkdirat for `link/content` will
still fail. Fail gracefully instead of crashing out with an assertion
failure.

Resolves: GNOME/libglnx#1
Signed-off-by: Simon McVittie <[email protected]>
This is a slight generalization of the reproducer contributed by Will
Thompson: as well as exercising the case where the parent is a dangling
symlink (reproducing GNOME/libglnx#1), this also exercises the case where
the parent is a non-directory non-symlink (in this case a regular file).

Reproduces: GNOME/libglnx#1
Co-authored-by: Will Thompson <[email protected]>
Signed-off-by: Simon McVittie <[email protected]>
glnx-shutil: Cope with ENOENT even after recursing to create parents

Closes #1

See merge request GNOME/libglnx!62
* Fix an assertion failure attempting to create a directory that exists
  as a dangling symlink[1]
* Fix a Meson deprecation warning[2]

[1] https://gitlab.gnome.org/GNOME/libglnx/-/issues/1
[2] https://gitlab.gnome.org/GNOME/libglnx/-/merge_requests/60

Signed-off-by: Simon McVittie <[email protected]>
Copy link
Member

@GeorgesStavracas GeorgesStavracas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. I'll leave it up to you @smcv whether to merge this or not before 1.16.0 is out

@smcv
Copy link
Collaborator Author

smcv commented Jan 2, 2025

Normally I only update libglnx on the development branch, but this is a simple bugfix-only change which I would have been happy to land into 1.16.x, so I think it's equally OK as a minor fix between release-candidate and stable release.

@smcv smcv merged commit 8882a7f into flatpak:main Jan 2, 2025
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants