aboutsummaryrefslogtreecommitdiff
path: root/perl/Git.xs
diff options
context:
space:
mode:
Diffstat (limited to 'perl/Git.xs')
-rw-r--r--perl/Git.xs16
1 files changed, 15 insertions, 1 deletions
diff --git a/perl/Git.xs b/perl/Git.xs
index 2bbec4365..6ed26a29b 100644
--- a/perl/Git.xs
+++ b/perl/Git.xs
@@ -52,7 +52,21 @@ BOOT:
}
-# /* TODO: xs_call_gate(). See Git.pm. */
+void
+xs__call_gate(repoid, git_dir)
+ long repoid;
+ char *git_dir;
+CODE:
+{
+ static long last_repoid;
+ if (repoid != last_repoid) {
+ setup_git(git_dir,
+ getenv(DB_ENVIRONMENT),
+ getenv(INDEX_ENVIRONMENT),
+ getenv(GRAFT_ENVIRONMENT));
+ last_repoid = repoid;
+ }
+}
char *