summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | remote: Make git_remote_list() detect pushurlnulltoken2013-08-271-2/+4
| | | |
| * | | vector: Teach git_vector_uniq() to free while deduplicatingnulltoken2013-08-273-5/+11
| | | |
| * | | remote: Relax the parsing logic even morenulltoken2013-08-271-8/+25
| | | | | | | | | | | | | | | | | | | | | | | | In order to be loaded, a remote needs to be configured with at least a `url` or a `pushurl`. ENOTFOUND will be returned when trying to git_remote_load() a remote with neither of these entries defined.
| * | | remote: Don't parse missing urls as empty stringsnulltoken2013-08-271-1/+1
| | | |
| * | | remote: Warn the user when connecting with no urlnulltoken2013-08-271-1/+4
| | | |
| * | | remote: Assert proper GIT_DIRECTION_XXXX valuesnulltoken2013-08-271-0/+2
| | | |
* | | | Merge pull request #1808 from frasertweedale/fix/freebsd-dup-includeVicent Martí2013-08-281-4/+0
|\ \ \ \ | | | | | | | | | | netops: remove duplicate include
| * | | | netops: remove duplicate includeFraser Tweedale2013-08-241-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9e9aee6 added an include <netinet/in.h> to fix the build on FreeBSD. Sometime since then the same header is included ifndef _WIN32, so remove the duplicate include.
* | | | | Merge pull request #1772 from libgit2/config-iterVicent Martí2013-08-288-173/+469
|\ \ \ \ \ | | | | | | | | | | | | Configuration iterators redux
| * | | | | config: don't special-case the multivar iteratorCarlos Martín Nieto2013-08-143-246/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Build it on top of the normal iterator instead, which lets use re-use a lot of code.
| * | | | | config: get rid of a useless asignmentCarlos Martín Nieto2013-08-123-6/+1
| | | | | |
| * | | | | config: deduplicate iterator creationCarlos Martín Nieto2013-08-121-12/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the glob iterator is passed NULL regexp, call the non-globbing iterator so we don't have to special-case which functions to call.
| * | | | | config: handle empty backends when iteratingCarlos Martín Nieto2013-08-121-1/+6
| | | | | |
| * | | | | config: implement _foreach and _foreach_match on top of the iterator directlyCarlos Martín Nieto2013-08-121-11/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use a glob iterator instead of going through git_config_backend_foreach_match. This function is left as it's exposed in the API.
| * | | | | config: introduce a regex-filtering iteratorCarlos Martín Nieto2013-08-121-0/+61
| | | | | |
| * | | | | config: introduce _iterator_new()Carlos Martín Nieto2013-08-122-30/+95
| | | | | | | | | | | | | | | | | | | | | | | | As the name suggests, it iterates over all the entries
| * | | | | config: fix leaks in the iteratorsCarlos Martín Nieto2013-08-081-0/+8
| | | | | |
| * | | | | config: add _next() and _iterator_free()Carlos Martín Nieto2013-08-081-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | Make it look like the refs iterator API.
| * | | | | config: working multivar iteratorCarlos Martín Nieto2013-08-082-45/+66
| | | | | | | | | | | | | | | | | | | | | | | | Implement the foreach version as a wrapper around the iterator.
| * | | | | config: hopefully get the iterator to work on multivarsCarlos Martín Nieto2013-08-082-8/+82
| | | | | |
| * | | | | config: initial multivar iteratorCarlos Martín Nieto2013-08-082-0/+108
| | | | | |
| * | | | | config: move next() and free() into the iteratorCarlos Martín Nieto2013-08-083-38/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Like we have in the references iterator, next and free belong in the iterator itself.
| * | | | | config: get_multivar -> get_multivar_foreachCarlos Martín Nieto2013-08-084-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The plain function will return an iterator, so move this one out of the way.
| * | | | | config: saner iterator errorsCarlos Martín Nieto2013-08-082-5/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Really report an error in foreach if we fail to allocate the iterator, and don't fail if the config is emtpy.
| * | | | | config: compilation fixesCarlos Martín Nieto2013-08-082-12/+11
| | | | | |
| * | | | | Don't typedef a pointerCarlos Martín Nieto2013-08-083-10/+17
| | | | | | | | | | | | | | | | | | | | | | | | Make the iterator structure opaque and make sure it compiles.
| * | | | | replaced foreach() with non callback based iterations in git_config_backendNico von Geyso2013-08-083-40/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | new functions in struct git_config_backend: * iterator_new(...) * iterator_free(...) * next(...) The old callback based foreach style can still be used with `git_config_backend_foreach_match`
| * | | | | added new type and several functions to git_strmapNico von Geyso2013-08-083-2/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This step is needed to easily add iterators to git_config_backend As well use these new git_strmap functions to implement foreach * git_strmap_iter * git_strmap_has_data(...) * git_strmap_begin(...) * git_strmap_end(...) * git_strmap_next(...)
* | | | | | Improve win32 version check, no ipv6 tests on XPEdward Thomson2013-08-274-26/+25
| |_|/ / / |/| | | |
* | | | | refs: add git_reference_is_tagNikolai Vladimirov2013-08-262-0/+12
| |/ / / |/| | |
* | | | Skip UTF-8 BOM in binary detectionEdward Thomson2013-08-191-0/+6
| |/ / |/| | | | | | | | | | | | | | | | | | | | When a git_buf contains a UTF-8 BOM, the three bytes comprising that BOM are treated as unprintable characters. For a small git_buf, the three BOM characters overwhelm the printable characters. This is problematic when trying to check out a small file as the CR/LF filtering will not apply.
* | | Quiet down some warningsEdward Thomson2013-08-191-1/+1
| | |
* | | Fix p_inet_pton on windowsEdward Thomson2013-08-192-32/+35
| | | | | | | | | | | | | | | | | | p_inet_pton on Windows should set errno properly for callers. Rewrite p_inet_pton to handle error cases correctly and add test cases to exercise this function.
* | | Use time(2) to get the timeEdward Thomson2013-08-193-61/+7
| | | | | | | | | | | | | | | | | | We didn't use the added precision in gettimeofday, so remove it. This prevents us from having an unnecessary reimplementation on win32.
* | | Revparse does not handle refspecsCarlos Martín Nieto2013-08-191-1/+1
| | |
* | | Merge pull request #1785 from libgit2/cmn/odb-hash-frontendVicent Martí2013-08-195-36/+64
|\ \ \ | | | | | | | | odb: move hashing to the frontend for streaming
| * | | odb: avoid hashing twice in and edge caseCarlos Martín Nieto2013-08-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If none of the backends support direct writes and we must stream the whole file, we already know what the object's id should be; so use the stream's functions directly, bypassing the frontend's hashing and overwriting of our existing id.
| * | | odb: make it clearer that the id is calculated in the frontendCarlos Martín Nieto2013-08-172-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The frontend is in charge of calculating the id of the objects. Thus the backends should treat it as a read-only value. The positioning in the function signature made it seem as though it was an output parameter. Make the id const and move it from the front to behind the subject (backend or stream).
| * | | odb: remove a duplicate object header formatting functionCarlos Martín Nieto2013-08-151-13/+2
| | | |
| * | | odb: perform the stream hashing in the frontendCarlos Martín Nieto2013-08-152-3/+22
| | | | | | | | | | | | | | | | | | | | | | | | Hash the data as it's coming into the stream and tell the backend what its name is when finalizing the write. This makes it consistent with the way a plain git_odb_write() performs the write.
| * | | odb: wrap the stream reading and writing functionsCarlos Martín Nieto2013-08-154-16/+36
| | | | | | | | | | | | | | | | | | | | | | | | This is in preparation for moving the hashing to the frontend, which requires us to handle the incoming data before passing it to the backend's stream.
* | | | Merge pull request #1792 from libgit2/ntk/bug/prefix_sizeVicent Martí2013-08-191-1/+3
|\ \ \ \ | | | | | | | | | | odb: Straighten oid prefix handling
| * | | | odb: Straighten oid prefix handlingnulltoken2013-08-181-1/+3
| | |_|/ | |/| |
* | | | index: report when it's lockedCarlos Martín Nieto2013-08-193-7/+11
|/ / / | | | | | | | | | | | | | | | | | | Report the index being locked with its own error code in order to be able to differentiate, as a locked index is typically the result of a crashed process or concurrent access, both of which often require user intervention to fix.
* | | Merge pull request #1778 from libgit2/push_tag_to_tag_testVicent Martí2013-08-161-11/+32
|\ \ \ | | | | | | | | push: handle tag chains correctly
| * | | push: handle tag chains correctlyCarlos Martín Nieto2013-08-161-11/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When dealing with a chain of tags, we need to enqueue each of them individually, which means we can't use `git_tag_peel` as that jumps over the intermediate tags. Do the peeling manually so we can look at each object and take the appropriate action.
* | | | Add new git_signature_default API using configRussell Belfer2013-08-161-1/+18
| | | | | | | | | | | | | | | | | | | | This adds a new API for creating a signature that uses the config to look up "user.name" and "user.email".
* | | | Give credit to PHP for the p_readlink function in posix_w32.cMartin Woodward2013-08-161-0/+9
| | | |
* | | | revparse: Use more idiomatic error value testEvan Hanson2013-08-151-1/+1
| | | |
* | | | revparse: Free left side of invalid range revspecsEvan Hanson2013-08-151-7/+3
| | | | | | | | | | | | | | | | | | | | | | | | This fixes a small memory leak in git_revparse where early returns on errors from git_revparse_single cause a free() on the (reallocated) left side of the revspec to be skipped.