From f11e6a4ae0ae5ed4e5c0bd466620f8947b8ee2b3 Mon Sep 17 00:00:00 2001 From: Colin Walters Date: Thu, 10 Oct 2024 12:54:33 +0000 Subject: [PATCH] commit: Give a better error message for unhandled file type xref https://github.com/ostreedev/ostree/issues/3319 It'd be useful to know what file type is being hit here; I believe this code path should be unreachable. --- src/libostree/ostree-repo-commit.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/libostree/ostree-repo-commit.c b/src/libostree/ostree-repo-commit.c index 0ee97288d7..17b8a97f4e 100644 --- a/src/libostree/ostree-repo-commit.c +++ b/src/libostree/ostree-repo-commit.c @@ -3173,7 +3173,8 @@ _ostree_repo_commit_modifier_apply (OstreeRepo *self, OstreeRepoCommitModifier * if (canonicalize_perms) { guint mode = g_file_info_get_attribute_uint32 (modified_info, "unix::mode"); - switch (g_file_info_get_file_type (file_info)) + GFileType ty = g_file_info_get_file_type (file_info); + switch (ty) { case G_FILE_TYPE_REGULAR: /* In particular, we want to squash the s{ug}id bits, but this also @@ -3188,7 +3189,7 @@ _ostree_repo_commit_modifier_apply (OstreeRepo *self, OstreeRepoCommitModifier * case G_FILE_TYPE_SYMBOLIC_LINK: break; default: - g_assert_not_reached (); + g_error ("unexpected file type %u", (unsigned)ty); } g_file_info_set_attribute_uint32 (modified_info, "unix::uid", 0); g_file_info_set_attribute_uint32 (modified_info, "unix::gid", 0);