From: Junio C Hamano Date: Thu, 21 Jan 2010 04:25:11 +0000 (-0800) Subject: Merge branch 'jc/maint-refresh-index-is-optional-for-status' into maint X-Git-Tag: v1.7.0-rc0~59^2 X-Git-Url: https://www.git.lorimer.id.au/gitweb.git/diff_plain/8f376a50ec6a125d4ac6786688cbfa5340dd59c0?hp=9504f3d3d2e62cb6fba9e7c61c6fe69dec9053a4 Merge branch 'jc/maint-refresh-index-is-optional-for-status' into maint * jc/maint-refresh-index-is-optional-for-status: status: don't require the repository to be writable --- diff --git a/builtin-commit.c b/builtin-commit.c index 33aa593c21..83b7c353ed 100644 --- a/builtin-commit.c +++ b/builtin-commit.c @@ -278,11 +278,13 @@ static char *prepare_index(int argc, const char **argv, const char *prefix, int * We still need to refresh the index here. */ if (!pathspec || !*pathspec) { - fd = hold_locked_index(&index_lock, 1); + fd = hold_locked_index(&index_lock, !is_status); refresh_cache(refresh_flags); - if (write_cache(fd, active_cache, active_nr) || - commit_locked_index(&index_lock)) - die("unable to write new_index file"); + if (0 <= fd) { + if (write_cache(fd, active_cache, active_nr) || + commit_locked_index(&index_lock)) + die("unable to write new_index file"); + } commit_style = COMMIT_AS_IS; return get_index_file(); }