summaryrefslogtreecommitdiffstats
path: root/t/helper/test-write-cache.c
diff options
context:
space:
mode:
Diffstat (limited to 't/helper/test-write-cache.c')
-rw-r--r--t/helper/test-write-cache.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/t/helper/test-write-cache.c b/t/helper/test-write-cache.c
new file mode 100644
index 0000000..7d45cd6
--- /dev/null
+++ b/t/helper/test-write-cache.c
@@ -0,0 +1,22 @@
+#define USE_THE_INDEX_VARIABLE
+#include "test-tool.h"
+#include "cache.h"
+#include "lockfile.h"
+
+int cmd__write_cache(int argc, const char **argv)
+{
+ struct lock_file index_lock = LOCK_INIT;
+ int i, cnt = 1;
+ if (argc == 2)
+ cnt = strtol(argv[1], NULL, 0);
+ setup_git_directory();
+ repo_read_index(the_repository);
+ for (i = 0; i < cnt; i++) {
+ repo_hold_locked_index(the_repository, &index_lock,
+ LOCK_DIE_ON_ERROR);
+ if (write_locked_index(&the_index, &index_lock, COMMIT_LOCK))
+ die("unable to write index file");
+ }
+
+ return 0;
+}