summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | | submodule: explicitly cast to the teensy time valueEdward Thomson2016-02-161-2/+2
| | | | | |
| * | | | | index: explicitly cast the teeny index entry membersEdward Thomson2016-02-161-3/+3
| | | | | |
| * | | | | index: don't use `seek` return as an error codeEdward Thomson2016-02-161-2/+2
| | | | | |
| * | | | | index: explicitly cast new hash size to an intEdward Thomson2016-02-161-1/+1
| | | | | |
| * | | | | win32: drop incorrect `const`nessEdward Thomson2016-02-161-1/+1
| | | | | |
| * | | | | fstat: use our custom `stat`Edward Thomson2016-02-163-12/+62
| | | | | |
| * | | | | tree: zap warnings around `size_t` vs `uint16_t`Edward Thomson2016-02-161-10/+16
| | | | | |
| * | | | | win32: introduce p_timeval that isn't stupidEdward Thomson2016-02-1210-12/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Windows defines `timeval` with `long`, which we cannot sanely cope with. Instead, use a custom timeval struct.
| * | | | | merge tests: correct castsEdward Thomson2016-02-111-3/+3
| | | | | |
| * | | | | reset test: fix initialization warningEdward Thomson2016-02-111-1/+1
| |/ / / /
* | | | | Merge pull request #3619 from ethomson/win32_forbiddenCarlos Martín Nieto2016-02-1820-26/+267
|\ \ \ \ \ | | | | | | | | | | | | win32: allow us to read indexes with forbidden paths on win32
| * | | | | index: allow read of index w/ illegal entriesEdward Thomson2016-02-176-23/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow `git_index_read` to handle reading existing indexes with illegal entries. Allow the low-level `git_index_add` to add properly formed `git_index_entry`s even if they contain paths that would be illegal for the current filesystem (eg, `AUX`). Continue to disallow `git_index_add_bypath` from adding entries that are illegal universally illegal (eg, `.git`, `foo/../bar`).
| * | | | | iterator: assert tree_iterator has a frameEdward Thomson2016-02-171-7/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Although a `tree_iterator` that failed to be properly created does not have a frame, all other `tree_iterator`s should. Do not call `pop` in the failure case, but assert that in all other cases there is a frame.
| * | | | | Validate pointer before access the member.Colin Xu2016-02-171-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When Git repository at network locations, sometimes git_iterator_for_tree fails at iterator__update_ignore_case so it goes to git_iterator_free. Null pointer will crash the process if not check. Signed-off-by: Colin Xu <colin.xu@gmail.com>
| * | | | | win32: tests around handling forbidden pathsEdward Thomson2016-02-1713-0/+206
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce a repository that contains some paths that were illegal on PC-DOS circa 1981 (like `aux`, `con`, `com1`) and that in a bizarre fit of retrocomputing, remain illegal on some "modern" computers, despite being "new technology". Introduce some aspirational tests that suggest that we should be able to cope with trees and indexes that contain paths that would be illegal on the filesystem, so that we can at least diff them. Further ensure that checkout will not write a repository with forbidden paths.
* | | | | | Merge pull request #3621 from pra85/patch-1Carlos Martín Nieto2016-02-181-1/+1
|\ \ \ \ \ \ | | | | | | | | | | | | | | Fix a typo
| * | | | | | Fix a typoPrayag Verma2016-02-181-1/+1
| | | | | | | | | | | | | | | | | | | | | `compatability` → `compatibility`
* | | | | | | PROJECTS: remove a few things we do haveCarlos Martín Nieto2016-02-181-4/+0
|/ / / / / /
* | | | | | Merge pull request #3617 from libgit2/cmn/extract-sig-errorsCarlos Martín Nieto2016-02-163-1/+24
|\ \ \ \ \ \ | | | | | | | | | | | | | | commit: expose the different kinds of errors
| * | | | | | commit: expose the different kinds of errorsCarlos Martín Nieto2016-02-163-1/+24
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We should be checking whether the object we're looking up is a commit, and we should let the caller know whether the not-found return code comes from a bad object type or just a missing signature.
* | | | | | Merge pull request #3615 from ethomson/rebase_bareCarlos Martín Nieto2016-02-164-24/+62
|\ \ \ \ \ \ | | | | | | | | | | | | | | rebase: persist a single in-memory index
| * | | | | | rebase: persist a single in-memory indexEdward Thomson2016-02-154-24/+62
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When performing an in-memory rebase, keep a single index for the duration, so that callers have the expected index lifecycle and do not hold on to an index that is free'd out from under them.
* | | | | | Merge pull request #3610 from ethomson/rebase_bareCarlos Martín Nieto2016-02-125-125/+441
|\ \ \ \ \ \ | | | | | | | | | | | | | | rebase: introduce bare rebasing
| * | | | | | rebase: allow custom merge_optionsEdward Thomson2016-02-113-3/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow callers of rebase to specify custom merge options. This may allow custom conflict resolution, or failing fast when conflicts are detected.
| * | | | | | rebase: introduce inmemory rebasingEdward Thomson2016-02-114-124/+404
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce the ability to rebase in-memory or in a bare repository. When `rebase_options.inmemory` is specified, the resultant `git_rebase` session will not be persisted to disk. Callers may still analyze the rebase operations, resolve any conflicts against the in-memory index and create the commits. Neither `HEAD` nor the working directory will be updated during this process.
* | | | | | Merge pull request #3612 from arthurschreiber/arthur/fix-3173Edward Thomson2016-02-1111-53/+55
|\ \ \ \ \ \ | | | | | | | | | | | | | | Horrible fix for #3173.
| * | | | | | Horrible fix for #3173.Arthur Schreiber2016-02-1111-53/+55
|/ / / / / /
* | | | | | commit: don't forget the last header fieldCarlos Martín Nieto2016-02-112-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we moved the logic to handle the first one, wrong loop logic was kept in place which meant we still finished early. But we now notice it because we're not reading past the last LF we find. This was not noticed before as the last field in the tested commit was multi-line which does not trigger the early break.
* | | | | | Merge pull request #3607 from pks-t/pks/coverity-improvementsCarlos Martín Nieto2016-02-112-2/+11
|\ \ \ \ \ \ | |/ / / / / |/| | | | | Coverity improvements for GITERR_CHECK_ALLOC
| * | | | | coverity: use https URL for posting buildPatrick Steinhardt2016-02-101-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When posting our instrumented build results to Coverity we have to include sensitive information, in particular our authorization token. Currently we use an unencrypted channel to post this information, leading to the token being transferred in plain. Fix this by using a secured connection instead.
| * | | | | coverity: provide nodef for GITERR_CHECK_ALLOCPatrick Steinhardt2016-02-102-0/+10
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Coverity currently lists a lot of errors with regard to GITERR_CHECK_ALLOC causing resource leaks. We know this macro is only invoked when we want to abort because we are out of memory. Coverity allows for overriding the default model where we know that certain functions guarantee a desired behavior. The user_nodefs.h is used to override the behavior of macros. Re-define GITERR_CHECK_ALLOC inside of it to specify its abort nature.
* | | | | Merge pull request #3599 from libgit2/gpgsignVicent Marti2016-02-093-0/+147
|\ \ \ \ \ | | | | | | | | | | | | Introduce git_commit_extract_signature
| * | | | | Introduce git_commit_extract_signaturegpgsignCarlos Martín Nieto2016-02-093-0/+147
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | This returns the GPG signature for a commit and its contents without the signature block, allowing for the verification of the commit's signature.
* | | | | Merge pull request #3603 from pks-t/pks/coverity-fixesCarlos Martín Nieto2016-02-094-8/+14
|\ \ \ \ \ | | | | | | | | | | | | Coverity fixes
| * | | | | attr_file: fix resource leakPatrick Steinhardt2016-02-091-2/+3
| | | | | |
| * | | | | checkout: fix resource leakPatrick Steinhardt2016-02-091-1/+3
| | | | | |
| * | | | | pack-objects: fix memory leak in packbuilder_configPatrick Steinhardt2016-02-091-4/+7
| | | | | |
| * | | | | pack-objects: fix memory leak in compute_write_orderPatrick Steinhardt2016-02-091-0/+1
| | | | | |
| * | | | | pack: do not free passed in poiter on errorPatrick Steinhardt2016-02-091-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The function `git_packfile_stream_open` tries to free the passed in stream when an error occurs. The only call site is `git_indexer_append`, though, which passes in the address of a stream struct which has not been allocated on the heap. Fix the issue by simply removing the call to free. In case of an error we did not allocate any memory yet and otherwise it should be the caller's responsibility to manage it's object's lifetime.
* | | | | | Merge pull request #3602 from libgit2/cmn/header-field-2Carlos Martín Nieto2016-02-092-17/+26
|\ \ \ \ \ \ | |/ / / / / |/| | | | | commit: also match the first header field when searching
| * | | | | commit: also match the first header field when searchingcmn/header-field-2Carlos Martín Nieto2016-02-092-17/+26
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We were searching only past the first header field, which meant we were unable to find e.g. `tree` which is the first field. While here, make sure to set an error message in case we cannot find the field.
* | | | | Merge pull request #3598 from pks-t/pks/coverity-fixesCarlos Martín Nieto2016-02-092-3/+3
|\ \ \ \ \ | | | | | | | | | | | | Coverity fixes
| * | | | | curl_stream: fix unused cert infosPatrick Steinhardt2016-02-081-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When copying contents of the cURL certiinfo we duplicate the data but forget to actually put it into the vector.
| * | | | | merge: fix memory leakPatrick Steinhardt2016-02-081-3/+2
| | |_|_|/ | |/| | |
* | | | | Merge pull request #3601 from ethomson/merge_docCarlos Martín Nieto2016-02-091-8/+0
|\ \ \ \ \ | | | | | | | | | | | | Better document `git_merge_commits` redux
| * | | | | Better document `git_merge_commits` reduxEdward Thomson2016-02-081-8/+0
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `git_merge_commits` and `git_merge` now *do* handle recursive base building for criss-cross merges. Remove the documentation that says that they do not. This reverts commit 5e44d9bcb6d5b20922f49b1913723186f8ced8b5.
* | | | | Merge pull request #3600 from ethomson/mailmapEdward Thomson2016-02-081-1/+2
|\ \ \ \ \ | |/ / / / |/| | | | mailmap: add ethomson@github.com
| * | | | mailmap: add ethomson@github.comEdward Thomson2016-02-081-1/+2
|/ / / /
* | | | Merge pull request #3592 from ethomson/code_of_conductCarlos Martín Nieto2016-02-061-0/+75
|\ \ \ \ | | | | | | | | | | Introduce Contributor Covenant
| * | | | Introduce Contributor CovenantEdward Thomson2016-02-021-0/+75
| | |/ / | |/| |