prune: Don't fail if a to-be-pruned object doesn't exist

Previously, if a prune was interrupted, further attempts would fail.
It's just better to silently continue here.
This commit is contained in:
Colin Walters 2013-07-16 10:01:58 -04:00
parent 62a896350b
commit 272274f0af
1 changed files with 9 additions and 7 deletions

View File

@ -56,15 +56,17 @@ maybe_prune_loose_object (OtPruneData *data,
{ {
gs_unref_object GFileInfo *info = NULL; gs_unref_object GFileInfo *info = NULL;
if ((info = g_file_query_info (objf, OSTREE_GIO_FAST_QUERYINFO, if (!ot_gfile_query_info_allow_noent (objf, OSTREE_GIO_FAST_QUERYINFO,
G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS, G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS,
cancellable, error)) == NULL) &info, cancellable, error))
goto out; goto out;
if (!gs_file_unlink (objf, cancellable, error)) if (info)
goto out; {
if (!gs_file_unlink (objf, cancellable, error))
data->freed_bytes += g_file_info_get_size (info); goto out;
data->freed_bytes += g_file_info_get_size (info);
}
} }
if (OSTREE_OBJECT_TYPE_IS_META (objtype)) if (OSTREE_OBJECT_TYPE_IS_META (objtype))
data->n_unreachable_meta++; data->n_unreachable_meta++;