summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-12-16Merge pull request #273 from clearr/fix-index-entrybypath-leakCarlos Martín Nieto
Fix a memory leak in Index.EntryByPath()
2015-12-16Fix a memory leak in Index.EntryByPath()FUJII Ryota
2015-11-13Merge pull request #271 from joseferminj/fix-memory-problemsCarlos Martín Nieto
Fix Fetch/Push memory allocation problems
2015-11-12Fix Fetch/Push memory allocation problemsJose Alvarez
The Fetch/Push operations didn't allocate the git_*_options structure and this causes a memory problem in the libgit2 code. Following the example of Clone operation, the Fetch/Push functions allocates the options structure before calling the C.
2015-11-03Merge pull request #269 from durin42/small-fixesCarlos Martín Nieto
Small fixes I noticed while perusing the code.
2015-11-02odb: remove debug fmt.PrintlnsAugie Fackler
These appear to be left over debug statements, and they also look like they were intended to be fmt.Printf calls anyway.
2015-11-02config_test: properly detect failed config writesAugie Fackler
This patch fixes the setup stage of the config tests to notice when the writes fail (eg $PWD is a read-only filesystem) and to correctly skip the entire test function as a result.
2015-10-29Merge pull request #268 from clearr/fix-index-leaksCarlos Martín Nieto
Fix memory leaks in NewIndex() and OpenIndex()
2015-10-27Fix memory leaks in NewIndex() and OpenIndex()FUJII Ryota
2015-10-26Merge pull request #266 from clns/update-libgit2Carlos Martín Nieto
[next] Update libgit2 to 821131f
2015-10-26Mention that MergeAnalysis is a bitmaskCarlos Martín Nieto
2015-10-26Update libgit2 to 821131fCalin Seciu
The API changes are: - `*Remote.Connect` ```go // from: func (o *Remote) Connect(direction ConnectDirection, callbacks *RemoteCallbacks) error // to: func (o *Remote) Connect(direction ConnectDirection, callbacks *RemoteCallbacks, headers []string) error ``` - `*Remote.ConnectFetch` - `headers` was added as above - `*Remote.ConnectPush` - `headers` was added as above
2015-10-21Merge pull request #262 from clearr/ignore-supportCarlos Martín Nieto
Add support for ignore
2015-10-20Add support for ignoreFUJII Ryota
2015-10-13Expose AddGitIgnoreRules and ClearGitIgnoreRules funcsJose Alvarez
2015-10-09Merge pull request #258 from TheDahv/feat-config-snapshotCarlos Martín Nieto
Fix bug in Config LookupString
2015-10-08Tests config lookup methodsDavid Pierce
2015-10-08Config#LookupString uses git_buf to load valueDavid Pierce
2015-10-07Merge pull request #261 from jbranchaud/fix-readme-typoCarlos Martín Nieto
Fix typo in README: manaager -> manager
2015-10-06Fix typo in README: manaager -> managerjbranchaud
2015-09-30Merge pull request #260 from clearr/index-entrybypathCarlos Martín Nieto
Add EntryByPath method to Index
2015-09-28Add EntryByPath method to IndexFUJII Ryota
2015-09-21Add stash supportCalin Seciu
2015-09-18Merge pull request #253 from joseferminj/checkout-baselineCarlos Martín Nieto
Expose baseline field in CheckoutOptions
2015-09-18Expose baseline field in CheckoutOptionsJose Alvarez
2015-09-18Merge remote-tracking branch 'origin/master' into nextCarlos Martín Nieto
2015-09-18Merge branch 'status-options'Carlos Martín Nieto
2015-09-18Fix crash when using Pathspec in StatusOptionsCalin Seciu
Using `StatusOptions.Pathspec` results in a fatal error panic with the message 'unexpected signal during runtime execution'. This is because the `&cpathspec` C.git_strarray gets freed in `*StatusOptions.toC()` before being passed to `C.git_status_init_options()` in `*Repository.StatusList()` (see https://github.com/libgit2/git2go/blob/b3e7705c48f038ef335204a2a9e1ee829784c30e/status.go#L138) The relevant panic trace is: ``` fatal error: unexpected signal during runtime execution [signal 0xb code=0x1 addr=0xb01dfacedebac1e pc=0x4062609] runtime stack: runtime.throw(0x469a080, 0x2a) /usr/local/Cellar/go/1.5.1/libexec/src/runtime/panic.go:527 +0x90 runtime.sigpanic() /usr/local/Cellar/go/1.5.1/libexec/src/runtime/sigpanic_unix.go:12 +0x5a goroutine 71 [syscall, locked to thread]: runtime.cgocall(0x400a720, 0xc8204e9998, 0x0) /usr/local/Cellar/go/1.5.1/libexec/src/runtime/cgocall.go:120 +0x11b fp=0xc8204e9968 sp=0xc8204e9938 github.com/libgit2/git2go._Cfunc_git_status_list_new(0xc8204c39c8, 0x5e17780, 0xc820478c40, 0xc800000000) ??:0 +0x39 fp=0xc8204e9998 sp=0xc8204e9968 github.com/libgit2/git2go.(*Repository).StatusList(0xc820013290, 0xc8204e9b58, 0x0, 0x0, 0x0) /Users/calin/go/src/github.com/libgit2/git2go/status.go:168 +0x11d fp=0xc8204e99e8 sp=0xc8204e9998 ```
2015-08-31Update vendored libgit2Carlos Martín Nieto
2015-08-31Run go fmtCarlos Martín Nieto
As it seems to be something that many people can't get over, reformat all the files; as we're breaking things, whoever depended on 'next' will have to take many changes into account anyway, so let's include this to reduce the noise of incoming patches.
2015-08-31Update missing bit to the new object modelCarlos Martín Nieto
2015-08-31Merge pull request #237 from libgit2/object-typeCarlos Martín Nieto
Move from an Object interface to a type
2015-08-31Merge branch 'master-v23'Carlos Martín Nieto
2015-08-31Don't call the finalizer on a borrowed repositoryCarlos Martín Nieto
When libgit2 gives us the repository for us to create the remote in, we do not own it, so we must make sure we don't try to free it.
2015-08-31Test against Go 1.5Carlos Martín Nieto
2015-08-31Install v23 on TravisCarlos Martín Nieto
2015-08-31Remove the vendored libgit2 submoduleCarlos Martín Nieto
This is a left-over from the merge from 'next'.
2015-08-31Merge branch 'next'Carlos Martín Nieto
2015-08-31Don't trat a revwalk's ITEROVER as an errorCarlos Martín Nieto
2015-08-31Merge pull request #242 from pks-t/fix-populate-clone-optionsCarlos Martín Nieto
clone: do not free clone options' payload
2015-08-31Merge branch 'push-cb' into nextCarlos Martín Nieto
2015-08-31Add nil check on CredentialsCallback wrapperAaron O'Mullan
2015-08-31Add back support for RemoteCallbacks in Remote.Push()Aaron O'Mullan
2015-08-18clone: improve handling of remote create callbackPatrick Steinhardt
The clone options contain fields for ae remote create callback and its payload, which can be used to override the behavior when the default remote is being created for newly cloned repositories. Currently we only accept a C function as callback, though, making it overly complicated to use it. We also unconditionally `free` the payload if its address is non-`nil`, which may cause the program to segfault when the memory is not dynamically allocated. Instead, we want callers to provide a Go function that is subsequently being called by us. To do this, we introduce an indirection such that we are able to extract the provided function and payload when being called by `git_clone` and handle the return values of the user-provided function.
2015-08-13Merge pull request #241 from pks-t/memleak-fixesCarlos Martín Nieto
Memleak fixes
2015-08-12merge: fix memory leak related to merge file optsPatrick Steinhardt
2015-08-12branch: fix memory leaks related to CStringsPatrick Steinhardt
2015-08-04We do require sudo on TravisCarlos Martín Nieto
2015-08-04Merge remote-tracking branch 'origin/master' into nextCarlos Martín Nieto
2015-08-04Move from an Object interface to a typeCarlos Martín Nieto
An Object should be about representing a libgit2 object rather than showing which methods it should support. Change any return of Object to *Object and provide methods to convert between this and the particular type.