mirror of
https://github.com/ostreedev/ostree.git
synced 2025-03-19 22:50:35 +03:00
lib/commit: Check that dirent is a directory before cleaning
I've only noticed this by inspection. But I think it's possible for `cleanup_txn_dir` to get called with the `staging-...-lock` file since it matches the prefix. Make the checking here stronger by verifying that it's a directory. If it's not a directory (lockfile), then follow the default pruning expiry logic so that we still cleanup stray lockfiles eventually.
This commit is contained in:
parent
df065ad766
commit
8ece36c28a
@ -2011,7 +2011,7 @@ cleanup_tmpdir (OstreeRepo *self,
|
||||
continue;
|
||||
|
||||
/* Handle transaction tmpdirs */
|
||||
if (_ostree_repo_has_staging_prefix (dent->d_name))
|
||||
if (_ostree_repo_has_staging_prefix (dent->d_name) && S_ISDIR (stbuf.st_mode))
|
||||
{
|
||||
if (!cleanup_txn_dir (self, dfd_iter.fd, dent->d_name, cancellable, error))
|
||||
return FALSE;
|
||||
|
Loading…
x
Reference in New Issue
Block a user