]> asedeno.scripts.mit.edu Git - git.git/commitdiff
Merge branch 'maint'
authorJunio C Hamano <gitster@pobox.com>
Mon, 29 Oct 2007 19:53:54 +0000 (12:53 -0700)
committerJunio C Hamano <gitster@pobox.com>
Mon, 29 Oct 2007 19:53:54 +0000 (12:53 -0700)
* 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

Documentation/RelNotes-1.5.3.5.txt
builtin-add.c
git-clone.sh
git-ls-remote.sh
merge-recursive.c
sha1_file.c

index 9581e03c49eafa61f8d17b027395aa5613c9b27f..e28d92f61811f5ba3d31d71e299c209a3a6ea74b 100644 (file)
@@ -71,3 +71,24 @@ Fixes since v1.5.3.4
 
  * "make clean" no longer deletes the configure script that ships
    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
index f9a65803d8dcbb9ae7eb3a3c61d8ac345b84d1cd..b8e6094b21599051c543b1f77c991363d9dfe181 100644 (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",
                                        pathspec[i]);
        }
+        free(seen);
 }
 
 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])
                        die("pathspec '%s' did not match any files", pathspec[i]);
        }
+        free(seen);
 }
 
 static int git_add_config(const char *var, const char *value)
index 5e582fe247892fa7dffc44556c939863c36edc35..0ea3c24f59e32055e4d514e55fe3a6f6be095f9c 100755 (executable)
@@ -28,7 +28,8 @@ get_repo_base() {
        ) 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"
 fi
 
index d56cf92ebfa685fd724a47e1ca753f0735dbd5bd..fec70bbf88c614a2dadfc40950fdd7abdf7f2c63 100755 (executable)
@@ -54,9 +54,10 @@ tmpdir=$tmp-d
 
 case "$peek_repo" in
 http://* | https://* | ftp://* )
-        if [ -n "$GIT_SSL_NO_VERIFY" ]; then
-            curl_extra_args="-k"
-        fi
+       if [ -n "$GIT_SSL_NO_VERIFY" -o \
+               "`git config --bool http.sslVerify`" = false ]; then
+               curl_extra_args="-k"
+       fi
        if [ -n "$GIT_CURL_FTP_NO_EPSV" -o \
                "`git config --bool http.noEPSV`" = true ]; then
                curl_extra_args="${curl_extra_args} --disable-epsv"
index 4a5c77c3b632a9c0636848b933ef5395b01b7103..6c6f595fbc7da09a41228e09cd2c5ef48b91f3f0 100644 (file)
@@ -1572,7 +1572,7 @@ static int merge(struct commit *h1,
 {
        struct commit_list *iter;
        struct commit *merged_common_ancestors;
-       struct tree *mrtree;
+       struct tree *mrtree = mrtree;
        int clean;
 
        if (show(4)) {
index 83a06a7aed84715db191b703e529d3501df0a8f2..f007874cbb034ec9efa7f73c42831e0037d452fa 100644 (file)
@@ -521,13 +521,15 @@ static int check_packed_git_idx(const char *path,  struct packed_git *p)
                        munmap(idx_map, idx_size);
                        return error("wrong index v2 file size in %s", path);
                }
-               if (idx_size != min_size) {
-                       /* make sure we can deal with large pack offsets */
-                       off_t x = 0x7fffffffUL, y = 0xffffffffUL;
-                       if (x > (x + 1) || y > (y + 1)) {
-                               munmap(idx_map, idx_size);
-                               return error("pack too large for current definition of off_t in %s", path);
-                       }
+               if (idx_size != min_size &&
+                   /*
+                    * make sure we can deal with large pack offsets.
+                    * 31-bit signed offset won't be enough, neither
+                    * 32-bit unsigned one will be.
+                    */
+                   (sizeof(off_t) <= 4)) {
+                       munmap(idx_map, idx_size);
+                       return error("pack too large for current definition of off_t in %s", path);
                }
        }