summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVladimir Buzuev <[email protected]>2021-04-03 18:45:55 -0700
committerGitHub <[email protected]>2021-04-03 18:45:55 -0700
commit1e2cb92b4887132563850db0338e701e740f6a6f (patch)
tree6705d0a24054b9e3d0a3d88e942370f03f064190
parent0d7c8dadb465a0236d0f130a0cfd5179502f191d (diff)
add wrapper for git_config_open_default (#758)
-rw-r--r--config.go14
-rw-r--r--config_test.go10
2 files changed, 24 insertions, 0 deletions
diff --git a/config.go b/config.go
index 7260089..062df05 100644
--- a/config.go
+++ b/config.go
@@ -450,3 +450,17 @@ func ConfigFindProgramdata() (string, error) {
return C.GoString(buf.ptr), nil
}
+
+// OpenDefault opens the default config according to git rules
+func OpenDefault() (*Config, error) {
+ runtime.LockOSThread()
+ defer runtime.UnlockOSThread()
+
+ config := new(Config)
+
+ if ret := C.git_config_open_default(&config.ptr); ret < 0 {
+ return nil, MakeGitError(ret)
+ }
+
+ return config, nil
+}
diff --git a/config_test.go b/config_test.go
index 398236e..f942dcb 100644
--- a/config_test.go
+++ b/config_test.go
@@ -107,3 +107,13 @@ func TestConfigLookups(t *testing.T) {
test(c, t)
}
}
+
+func TestOpenDefault(t *testing.T) {
+
+ c, err := OpenDefault()
+ if err != nil {
+ t.Errorf("OpenDefault error: '%v'. Expected none\n", err)
+ return
+ }
+ defer c.Free()
+}