Merge branch 'maint'

* maint:
  RelNotes-1.5.3.5: describe recent fixes
  merge-recursive.c: mrtree in merge() is not used before set
  sha1_file.c: avoid gcc signed overflow warnings
  Fix a small memory leak in builtin-add
  honor the http.sslVerify option in shell scripts
This commit is contained in:
Junio C Hamano
2007-10-29 12:53:54 -07:00
6 changed files with 39 additions and 12 deletions

View File

@ -71,3 +71,24 @@ Fixes since v1.5.3.4
* "make clean" no longer deletes the configure script that ships * "make clean" no longer deletes the configure script that ships
with the git tarball, making multiple architecture builds easier. with the git tarball, making multiple architecture builds easier.
* "git-remote show origin" spewed a warning message from Perl
when no remote is defined for the current branch via
branch.<name>.remote configuration settings.
* Building with NO_PERL_MAKEMAKER excessively rebuilt contents
of perl/ subdirectory by rewriting perl.mak.
* http.sslVerify configuration settings were not used in scripted
Porcelains.
* "git-add" leaked a bit of memory while scanning for files to add.
* A few workarounds to squelch false warnings from recent gcc have
been added.
--
exec >/var/tmp/1
O=v1.5.3.4-55-gf120ae2
echo O=`git describe refs/heads/maint`
git shortlog --no-merges $O..refs/heads/maint

View File

@ -44,6 +44,7 @@ static void prune_directory(struct dir_struct *dir, const char **pathspec, int p
die("pathspec '%s' did not match any files", die("pathspec '%s' did not match any files",
pathspec[i]); pathspec[i]);
} }
free(seen);
} }
static void fill_directory(struct dir_struct *dir, const char **pathspec, static void fill_directory(struct dir_struct *dir, const char **pathspec,
@ -135,6 +136,7 @@ static void refresh(int verbose, const char **pathspec)
if (!seen[i]) if (!seen[i])
die("pathspec '%s' did not match any files", pathspec[i]); die("pathspec '%s' did not match any files", pathspec[i]);
} }
free(seen);
} }
static int git_add_config(const char *var, const char *value) static int git_add_config(const char *var, const char *value)

View File

@ -28,7 +28,8 @@ get_repo_base() {
) 2>/dev/null ) 2>/dev/null
} }
if [ -n "$GIT_SSL_NO_VERIFY" ]; then if [ -n "$GIT_SSL_NO_VERIFY" -o \
"`git config --bool http.sslVerify`" = false ]; then
curl_extra_args="-k" curl_extra_args="-k"
fi fi

View File

@ -54,9 +54,10 @@ tmpdir=$tmp-d
case "$peek_repo" in case "$peek_repo" in
http://* | https://* | ftp://* ) http://* | https://* | ftp://* )
if [ -n "$GIT_SSL_NO_VERIFY" ]; then if [ -n "$GIT_SSL_NO_VERIFY" -o \
curl_extra_args="-k" "`git config --bool http.sslVerify`" = false ]; then
fi curl_extra_args="-k"
fi
if [ -n "$GIT_CURL_FTP_NO_EPSV" -o \ if [ -n "$GIT_CURL_FTP_NO_EPSV" -o \
"`git config --bool http.noEPSV`" = true ]; then "`git config --bool http.noEPSV`" = true ]; then
curl_extra_args="${curl_extra_args} --disable-epsv" curl_extra_args="${curl_extra_args} --disable-epsv"

View File

@ -1572,7 +1572,7 @@ static int merge(struct commit *h1,
{ {
struct commit_list *iter; struct commit_list *iter;
struct commit *merged_common_ancestors; struct commit *merged_common_ancestors;
struct tree *mrtree; struct tree *mrtree = mrtree;
int clean; int clean;
if (show(4)) { if (show(4)) {

View File

@ -521,13 +521,15 @@ static int check_packed_git_idx(const char *path, struct packed_git *p)
munmap(idx_map, idx_size); munmap(idx_map, idx_size);
return error("wrong index v2 file size in %s", path); return error("wrong index v2 file size in %s", path);
} }
if (idx_size != min_size) { if (idx_size != min_size &&
/* make sure we can deal with large pack offsets */ /*
off_t x = 0x7fffffffUL, y = 0xffffffffUL; * make sure we can deal with large pack offsets.
if (x > (x + 1) || y > (y + 1)) { * 31-bit signed offset won't be enough, neither
munmap(idx_map, idx_size); * 32-bit unsigned one will be.
return error("pack too large for current definition of off_t in %s", path); */
} (sizeof(off_t) <= 4)) {
munmap(idx_map, idx_size);
return error("pack too large for current definition of off_t in %s", path);
} }
} }