From 83fb6d56e1e57b20f0f1c24bcaa0d02abcb02cca Mon Sep 17 00:00:00 2001 From: Colin Walters Date: Tue, 6 Mar 2012 11:33:42 -0500 Subject: [PATCH] core: Don't call unlink() on directory if it already exists If we fail to make a directory because it exists, we shouldn't call unlink() on it. --- src/libostree/ostree-core.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/libostree/ostree-core.c b/src/libostree/ostree-core.c index 3fe6d220..8a4cb1fd 100644 --- a/src/libostree/ostree-core.c +++ b/src/libostree/ostree-core.c @@ -839,8 +839,10 @@ ostree_create_file_from_input (GFile *dest_file, ret = TRUE; ot_transfer_out_value(out_checksum, &ret_checksum); out: - if (!ret) - (void) unlink (dest_path); + if (!ret && !S_ISDIR(mode)) + { + (void) unlink (dest_path); + } ot_clear_checksum (&ret_checksum); g_clear_object (&out); return ret;