Browse Source

Merge branch 'maint'

* maint:
  Update draft release notes to 1.7.0.3
  fetch: Fix minor memory leak
  fetch: Future-proof initialization of a refspec on stack
  fetch: Check for a "^{}" suffix with suffixcmp()
  daemon: parse_host_and_port SIGSEGV if port is specified
  Makefile: Fix CDPATH problem
  pull: replace unnecessary sed invocation
maint
Junio C Hamano 15 years ago
parent
commit
96203bb074
  1. 8
      Documentation/RelNotes-1.7.0.3.txt
  2. 6
      Makefile
  3. 11
      builtin/fetch.c
  4. 2
      daemon.c
  5. 2
      git-pull.sh

8
Documentation/RelNotes-1.7.0.3.txt

@ -9,6 +9,9 @@ Fixes since v1.7.0.2


* "git add -i" didn't handle a deleted path very well. * "git add -i" didn't handle a deleted path very well.


* "git blame" padded line numbers with one extra SP when the total number
of lines was one less than multiple of ten due to an off-by-one error.

* "git fetch --all/--multi" used to discard information for remotes that * "git fetch --all/--multi" used to discard information for remotes that
are fetched earlier. are fetched earlier.


@ -16,6 +19,9 @@ Fixes since v1.7.0.2
or are written by "me", instead of the ones that have "it" _and_ are or are written by "me", instead of the ones that have "it" _and_ are
written by "me". written by "me".


* "git log -g branch" misbehaved when there was no entries in the reflog
for the named branch.

* "git mailinfo" (hence "git am") incorrectly removed initial indent from * "git mailinfo" (hence "git am") incorrectly removed initial indent from
paragraphs. paragraphs.


@ -30,5 +36,5 @@ And other minor fixes and documentation updates.
-- --
exec >/var/tmp/1 exec >/var/tmp/1
echo O=$(git describe) echo O=$(git describe)
O=v1.7.0.2-53-g6eb3adf O=v1.7.0.2-69-g730b020
git shortlog --no-merges $O.. git shortlog --no-merges $O..

6
Makefile

@ -327,6 +327,12 @@ SCRIPT_SH =
SCRIPT_LIB = SCRIPT_LIB =
TEST_PROGRAMS_NEED_X = TEST_PROGRAMS_NEED_X =


# Having this variable in your environment would break pipelines because
# you cause "cd" to echo its destination to stdout. It can also take
# scripts to unexpected places. If you like CDPATH, define it for your
# interactive shell sessions without exporting it.
unexport CDPATH

SCRIPT_SH += git-am.sh SCRIPT_SH += git-am.sh
SCRIPT_SH += git-bisect.sh SCRIPT_SH += git-bisect.sh
SCRIPT_SH += git-difftool--helper.sh SCRIPT_SH += git-difftool--helper.sh

11
builtin/fetch.c

@ -107,10 +107,8 @@ static void add_merge_config(struct ref **head,
* there is no entry in the resulting FETCH_HEAD marked * there is no entry in the resulting FETCH_HEAD marked
* for merging. * for merging.
*/ */
memset(&refspec, 0, sizeof(refspec));
refspec.src = branch->merge[i]->src; refspec.src = branch->merge[i]->src;
refspec.dst = NULL;
refspec.pattern = 0;
refspec.force = 0;
get_fetch_map(remote_refs, &refspec, tail, 1); get_fetch_map(remote_refs, &refspec, tail, 1);
for (rm = *old_tail; rm; rm = rm->next) for (rm = *old_tail; rm; rm = rm->next)
rm->merge = 1; rm->merge = 1;
@ -391,9 +389,10 @@ static int store_updated_refs(const char *raw_url, const char *remote_name,
fputc(url[i], fp); fputc(url[i], fp);
fputc('\n', fp); fputc('\n', fp);


if (ref) if (ref) {
rc |= update_local_ref(ref, what, note); rc |= update_local_ref(ref, what, note);
else free(ref);
} else
sprintf(note, "* %-*s %-*s -> FETCH_HEAD", sprintf(note, "* %-*s %-*s -> FETCH_HEAD",
TRANSPORT_SUMMARY_WIDTH, *kind ? kind : "branch", TRANSPORT_SUMMARY_WIDTH, *kind ? kind : "branch",
REFCOL_WIDTH, *what ? what : "HEAD"); REFCOL_WIDTH, *what ? what : "HEAD");
@ -590,7 +589,7 @@ static void find_non_local_tags(struct transport *transport,
* to fetch then we can mark the ref entry in the list * to fetch then we can mark the ref entry in the list
* as one to ignore by setting util to NULL. * as one to ignore by setting util to NULL.
*/ */
if (!strcmp(ref->name + strlen(ref->name) - 3, "^{}")) { if (!suffixcmp(ref->name, "^{}")) {
if (item && !has_sha1_file(ref->old_sha1) && if (item && !has_sha1_file(ref->old_sha1) &&
!will_fetch(head, ref->old_sha1) && !will_fetch(head, ref->old_sha1) &&
!has_sha1_file(item->util) && !has_sha1_file(item->util) &&

2
daemon.c

@ -420,7 +420,7 @@ static void parse_host_and_port(char *hostport, char **host,
*host = hostport; *host = hostport;
*port = strrchr(hostport, ':'); *port = strrchr(hostport, ':');
if (*port) { if (*port) {
*port = '\0'; **port = '\0';
++*port; ++*port;
} }
} }

2
git-pull.sh

@ -41,7 +41,7 @@ strategy_args= diffstat= no_commit= squash= no_ff= ff_only=
log_arg= verbosity= progress= log_arg= verbosity= progress=
merge_args= merge_args=
curr_branch=$(git symbolic-ref -q HEAD) curr_branch=$(git symbolic-ref -q HEAD)
curr_branch_short=$(echo "$curr_branch" | sed "s|refs/heads/||") curr_branch_short="${curr_branch#refs/heads/}"
rebase=$(git config --bool branch.$curr_branch_short.rebase) rebase=$(git config --bool branch.$curr_branch_short.rebase)
while : while :
do do

Loading…
Cancel
Save