summaryrefslogtreecommitdiff
path: root/src/repository.h
diff options
context:
space:
mode:
authornulltoken <emeric.fermas@gmail.com>2012-08-22 11:30:55 +0200
committernulltoken <emeric.fermas@gmail.com>2012-09-06 18:40:06 +0200
commitced8d1420a76c13796d951203c2b35540a49b454 (patch)
tree21f33f82625401b20e7c4e607cc4508d43fa712c /src/repository.h
parentbb2d305c20d62b10b39d95916d1a172057c26d65 (diff)
downloadlibgit2-ced8d1420a76c13796d951203c2b35540a49b454.tar.gz
errors: deploy GIT_EBAREREPO usage
Diffstat (limited to 'src/repository.h')
-rw-r--r--src/repository.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/repository.h b/src/repository.h
index 4695edf3a..4aa8af292 100644
--- a/src/repository.h
+++ b/src/repository.h
@@ -149,4 +149,19 @@ void git_repository__cvar_cache_clear(git_repository *repo);
*/
extern void git_submodule_config_free(git_repository *repo);
+GIT_INLINE(int) git_repository__ensure_not_bare(
+ git_repository *repo,
+ const char *operation_name)
+{
+ if (!git_repository_is_bare(repo))
+ return 0;
+
+ giterr_set(
+ GITERR_REPOSITORY,
+ "Cannot %s. This operation is not allowed against bare repositories.",
+ operation_name);
+
+ return GIT_EBAREREPO;
+}
+
#endif