Sync with 1.6.5.2
authorJunio C Hamano <gitster@pobox.com>
Mon, 26 Oct 2009 01:38:56 +0000 (18:38 -0700)
committerJunio C Hamano <gitster@pobox.com>
Mon, 26 Oct 2009 01:38:56 +0000 (18:38 -0700)
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/RelNotes-1.6.5.2.txt [new file with mode: 0644]
Documentation/git.txt
sha1_file.c
diff --git a/Documentation/RelNotes-1.6.5.2.txt b/Documentation/RelNotes-1.6.5.2.txt
new file mode 100644 (file)
index 0000000..aa7ccce
--- /dev/null
@@ -0,0 +1,19 @@
+GIT v1.6.5.2 Release Notes
+==========================
+
+Fixes since v1.6.5.1
+--------------------
+
+ * Installation of templates triggered a bug in busybox when using tar
+   implementation from it.
+
+ * "git add -i" incorrectly ignored paths that are already in the index
+   if they matched .gitignore patterns.
+
+ * "git describe --always" should have produced some output even there
+   were no tags in the repository, but it didn't.
+
+ * "git ls-files" when showing tracked files incorrectly paid attention
+   to the exclude patterns.
+
+Other minor documentation updates are included.
index 10f2f82ca179c36bcb54ba938e92ba4858a127f6..0f536793dfc1929f661029b61a1057d2b7a95abc 100644 (file)
@@ -43,9 +43,10 @@ unreleased) version of git, that is available from 'master'
 branch of the `git.git` repository.
 Documentation for older releases are available here:
 
-* link:v1.6.5.1/git.html[documentation for release 1.6.5.1]
+* link:v1.6.5.2/git.html[documentation for release 1.6.5.2]
 
 * release notes for
+  link:RelNotes-1.6.5.2.txt[1.6.5.2],
   link:RelNotes-1.6.5.1.txt[1.6.5.1],
   link:RelNotes-1.6.5.txt[1.6.5].
 
index 4cc8939e4b901c1eda75a71705021c749c9a48b0..63981fb3fd9cfa6cca4126eba5a964b449c62444 100644 (file)
@@ -1357,8 +1357,6 @@ unsigned long get_size_from_delta(struct packed_git *p,
                in = use_pack(p, w_curs, curpos, &stream.avail_in);
                stream.next_in = in;
                st = git_inflate(&stream, Z_FINISH);
-               if (st == Z_BUF_ERROR && (stream.avail_in || !stream.avail_out))
-                       break;
                curpos += stream.next_in - in;
        } while ((st == Z_OK || st == Z_BUF_ERROR) &&
                 stream.total_out < sizeof(delta_head));
@@ -1589,15 +1587,15 @@ static void *unpack_compressed_entry(struct packed_git *p,
        buffer[size] = 0;
        memset(&stream, 0, sizeof(stream));
        stream.next_out = buffer;
-       stream.avail_out = size;
+       stream.avail_out = size + 1;
 
        git_inflate_init(&stream);
        do {
                in = use_pack(p, w_curs, curpos, &stream.avail_in);
                stream.next_in = in;
                st = git_inflate(&stream, Z_FINISH);
-               if (st == Z_BUF_ERROR && (stream.avail_in || !stream.avail_out))
-                       break;
+               if (!stream.avail_out)
+                       break; /* the payload is larger than it should be */
                curpos += stream.next_in - in;
        } while (st == Z_OK || st == Z_BUF_ERROR);
        git_inflate_end(&stream);