Commit Graph

5433 Commits

Author SHA1 Message Date
Stefan Widgren
a299d0af1b Remove extra semicolon outside of a function
Without this change, compiling with gcc and pedantic generates warning:
ISO C does not allow extra ‘;’ outside of a function.
2015-08-03 10:34:26 +02:00
Carlos Martín Nieto
e5a7724969 Cherry-pick PR #3332: Resolve documentation warnings 2015-08-03 10:33:50 +02:00
Anders Borum
a91dff8931 case-insensitive check for WWW-Authenticate header
Fixes issue #3338
2015-08-03 10:33:16 +02:00
Carlos Martín Nieto
a4ded362b4 iterator: skip over errors in diriter init
An error here will typically mean that the directory was removed between
the time we iterated the parent and the time we wanted to visit it in
which case we should ignore it.

Other kinds of errors such as permissions (or transient errors) also
better dealt with by pretending we didn't see it.
2015-08-03 10:32:48 +02:00
Sven Strickroth
ac1a5e20b8 Make libgit2 work on Windows Vista again
(fixes issue #3316)

Signed-off-by: Sven Strickroth <email@cs-ware.de>
2015-07-28 08:28:04 +02:00
Fallso
2563101b4f Fix macro redefinition warning 2015-07-28 08:27:45 +02:00
Carlos Martín Nieto
55bc135130 submodule: normalize slashes in resolve_url
Our path functions expect to work with slashes, so convert a
path with backslashes into one with slashes at the top of
the function.
2015-07-28 08:25:41 +02:00
Matthew Plough
38dc994031 Fix #3094 - improve use of portable size_t/ssize_t format specifiers.
The header src/cc-compat.h defines portable format specifiers PRIuZ, PRIdZ, and PRIxZ. The original report highlighted the need to use these specifiers in examples/network/fetch.c.  For this commit, I checked all C source and header files not in deps/ and transitioned to the appropriate format specifier where appropriate.
2015-07-28 08:25:23 +02:00
Carlos Martín Nieto
34ff34fd6a filter: make sure to close the stream even on error
When the stream list init or write fail, we must also make sure to close
the stream, as that's the function contract.
2015-07-28 08:25:06 +02:00
Carlos Martín Nieto
678c4aacf5 index: allow add_bypath to update submodules
Similarly to how git itself does it, allow the index update operation to
stage a change in a submodule's HEAD.
2015-07-28 08:24:55 +02:00
Carlos Martín Nieto
aafaa491ba blob: fail to create a blob from a dir with EDIRECTORY
This also affects `git_index_add_bypath()` by providing a better error
message and a specific error code when a directory is passed.
2015-07-28 08:24:55 +02:00
Carlos Martín Nieto
e48dd86eca submodule: lookup the submodule by path if available
If we get the path from the gitmodules file, look up the submodule we're
interested in by path, rather then by name. Otherwise we might get
duplicate results.
2015-07-28 08:22:59 +02:00
Edward Thomson
f2dc6b77ee khash: add eol so picky compilers stop warning 2015-07-28 08:22:26 +02:00
Edward Thomson
a4743de873 xdiff: cleanup some warnings 2015-07-28 08:21:47 +02:00
Edward Thomson
75d0b81abf xdiff: upgrade to core git 2.4.5
Upgrade xdiff to version used in core git 2.4.5 (0df0541).

Corrects an issue where an LF is added at EOF while applying
an unrelated change (ba31180), cleans up some unused code (be89977 and
e5b0662), and provides an improved callback to avoid leaking internal
(to xdiff) structures (467d348).

This also adds some additional functionality that we do not yet take
advantage of, namely the ability to ignore changes whose lines are
all blank (36617af).
2015-07-28 08:20:58 +02:00
Tony Kelman
f57403919a Fix undefined reference with old versions of openssl
Versions prior to 0.9.8f  did not have this function, rhel/centos5 are still on a
heavily backported version of 0.9.8e and theoretically supported until March 2017

Without this ifdef, I get the following link failure:
```
CMakeFiles/libgit2_clar.dir/src/openssl_stream.c.o: In function `openssl_connect':
openssl_stream.c:(.text+0x45a): undefined reference to `SSL_set_tlsext_host_name'
collect2: error: ld returned 1 exit status
make[6]: *** [libgit2_clar] Error 1
```
2015-07-28 08:17:58 +02:00
Edward Thomson
dd6b24b19a iterator_walk: cast away constness for free 2015-07-02 10:36:15 -05:00
Carlos Martín Nieto
e0af3cb30c submodule: correctly delimit the keys to use for lookup
The regex we use to look at the gitmodules file does not correctly
delimit the name of submodule which we want to look up and puts '.*'
straight after the name, maching on any submodule which has the seeked
submodule as a prefix of its name.

Add the missing '\.' in the regex so we want a full stop to exist both
before and after the submodule name.
2015-07-01 21:15:06 +02:00
Linquize
526f91f552 Fix 8.3 filename tests failure when 8.3 is disabled 2015-07-01 14:58:13 +08:00
Matthew Plough
9126ccac96 Fix #3093 - remove declaration of unused function git_fetch__download_pack
Function was added in commit 2c982daa2e on October 5, 2011,
and removed in commit 41fb1ca0ec on October 29, 2012.
Given the length of time it's gone unused, it's safe to remove now.
2015-06-30 16:48:47 -04:00
Carlos Martín Nieto
2f60073dc5 Merge pull request #3273 from ethomson/warnings3
More warnings
2015-06-30 21:40:20 +02:00
Pierre-Olivier Latour
1630981e6b http: fixed leak when asking for credentials again
t->cred might have been allocated the previous time and needs to be
freed before asking caller for credentials again.
2015-06-30 09:03:23 -07:00
Edward Thomson
0305721c10 winhttp: remove unused var 2015-06-30 14:31:07 +00:00
Edward Thomson
69c8bf7e0d posix compat: include sys/stat.h for mingw 2015-06-30 14:31:07 +00:00
Edward Thomson
49840056da diff: use size_t format 2015-06-30 14:31:07 +00:00
Edward Thomson
3451c871cb Merge pull request #3271 from jeffhostetler/more_leaks
memory leak refspec.c
2015-06-30 09:29:41 -05:00
Jeff Hostetler
64e6b5b035 fix memory leak in refspec.c on errors. 2015-06-30 09:41:17 -04:00
Carlos Martín Nieto
7bfdd1c2d2 Merge pull request #3270 from ethomson/warnings2
Remove some warnings
2015-06-30 10:21:06 +02:00
Edward Thomson
e5f9df7b0f odb: cast to long long for printf 2015-06-29 21:45:04 +00:00
Edward Thomson
6065505667 submodule: cast enum to int for compare 2015-06-29 21:37:07 +00:00
Edward Thomson
3ca84ac0ed openssl: free hostname 2015-06-29 21:23:09 +00:00
Edward Thomson
149d5d8a50 stash: drop unused variable 2015-06-29 21:23:09 +00:00
Edward Thomson
ded4ccab01 iterator_walk: drop unused variable 2015-06-29 21:23:09 +00:00
Carlos Martín Nieto
8b38006018 http: don't give up on auth on the first try
When the server rejects an authentication request, ask the caller for
the credentials again, instead of giving up on the first try.
2015-06-29 21:26:40 +02:00
Carlos Martín Nieto
c28a5c972d submodule: remove trailing slashes from submodule paths
We allow looking up a submodule by path, but we lost the path
normalisation during the recent changes. Bring it back.
2015-06-29 21:10:47 +02:00
Carlos Martín Nieto
cf4030b04b submodule: remove some obsolete logic
Remove some of the logic that was left-over from the time we had a cache
of submodules, plugging a leak of the submodule object in certain cases.
2015-06-29 20:54:17 +02:00
Carlos Martín Nieto
fa399750c6 Merge pull request #3265 from libgit2/leaks
Plug a bunch of leaks
2015-06-27 21:26:27 +02:00
Carlos Martín Nieto
24fa21f38e index, iterator, fetchhead: plug leaks 2015-06-26 19:00:33 +02:00
Carlos Martín Nieto
9568660f62 diff: fix leaks in diff printing 2015-06-26 18:31:39 +02:00
Carlos Martín Nieto
cfafeb843d Merge pull request #3263 from git-up/fixes
Fixes
2015-06-26 18:11:05 +02:00
Carlos Martín Nieto
354268ca48 Merge pull request #3259 from ethomson/stash_apply_argh
Stash apply: stage new files even when not updating the index
2015-06-26 17:46:35 +02:00
Pierre-Olivier Latour
cae2a55552 Fixed build failure if GIT_CURL is not defined 2015-06-26 08:17:56 -07:00
Vicent Marti
3d9ef2dc1b Revert "object: correct the expected ID size in prefix lookup"
This reverts commit 969d4b703c.

This was a fluke from Coverity. The length to all the APIs in the
library is supposed to be passed in as nibbles, not bytes. Passing it as
bytes would prevent us from parsing uneven-sized SHA1 strings.

Also, the rest of the library was still using nibbles (including
revparse and the odb_prefix APIs), so this change was seriously breaking
things in unexpected ways. ^^
2015-06-26 16:45:42 +02:00
Pierre-Olivier Latour
c2e1b0581a Only write index if updated when passing GIT_DIFF_UPDATE_INDEX
When diffing the index with the workdir and GIT_DIFF_UPDATE_INDEX has been passed,
the previous implementation was always writing the index to disk even if it wasn't
modified.
2015-06-26 02:00:21 -04:00
Edward Thomson
c0280bdd15 Merge pull request #3255 from libgit2/cmn/rename-unspecified
Rename FALLBACK to UNSPECIFIED
2015-06-25 18:55:48 -04:00
Edward Thomson
b7f5cb8dd7 stash: stage new files when unstashing them
Files that were new (staged additions) in the stash tree should
be staged when unstashing, even when not applying the index.
2015-06-25 18:34:38 -04:00
Edward Thomson
8960dc1ec6 iterator: provide git_iterator_walk
Provide `git_iterator_walk` to walk each iterator in lockstep,
returning each iterator's idea of the contents of the next path.
2015-06-25 18:34:37 -04:00
Edward Thomson
82b1c93d08 stash: don't allow apply with staged changes 2015-06-25 18:34:36 -04:00
Edward Thomson
3b66c6a397 Merge pull request #3256 from libgit2/cmn/fetch-spec-fetchhead
remote: insert refspecs with no rhs in FETCH_HEAD
2015-06-25 15:36:53 -04:00
Edward Thomson
87987fd1e0 Merge pull request #3246 from libgit2/cmn/dont-grow-borrowed
Don't allow growing borrowed buffers
2015-06-25 15:26:43 -04:00