Commit graph

30654 commits

Author SHA1 Message Date
Jeff King 2cfceefaca Merge branch 'jk/strbuf-detach-always-non-null'
* jk/strbuf-detach-always-non-null:
  strbuf: always return a non-NULL value from strbuf_detach
2012-10-25 06:43:03 -04:00
Jeff King bbbd057389 Merge branch 'js/mingw-fflush-errno'
* js/mingw-fflush-errno:
  maybe_flush_or_die: move a too-loose Windows specific error
2012-10-25 06:43:01 -04:00
Jeff King 33d3c6bb9b Merge branch 'da/mergetools-p4'
* da/mergetools-p4:
  mergetools/p4merge: Handle "/dev/null"
2012-10-25 06:42:57 -04:00
Jeff King 4cd31a6320 Merge branch 'jc/test-say-color-avoid-echo-escape'
Recent nd/wildmatch series was the first to reveal this ancient bug
in the test scaffolding.

* jc/test-say-color-avoid-echo-escape:
  test-lib: Fix say_color () not to interpret \a\b\c in the message
2012-10-25 06:42:49 -04:00
Jeff King 70d1825749 Merge branch 'nd/attr-match-optim'
Trivial and obvious optimization for finding attributes that match
a given path.

* nd/attr-match-optim:
  attr: avoid searching for basename on every match
  attr: avoid strlen() on every match
2012-10-25 06:42:36 -04:00
Jeff King 315ea32f1b Merge branch 'jk/peel-ref'
Speeds up "git upload-pack" (what is invoked by "git fetch" on the
other side of the connection) by reducing the cost to advertise the
branches and tags that are available in the repository.

* jk/peel-ref:
  upload-pack: use peel_ref for ref advertisements
  peel_ref: check object type before loading
  peel_ref: do not return a null sha1
  peel_ref: use faster deref_tag_noverify
2012-10-25 06:42:27 -04:00
Jeff King 6a83a6d57a Merge branch 'bw/config-lift-variable-name-length-limit'
The configuration parser had an unnecessary hardcoded limit on
variable names that was not checked consistently. Lift the limit.

* bw/config-lift-variable-name-length-limit:
  Remove the hard coded length limit on variable names in config files
2012-10-25 06:42:11 -04:00
Jeff King 530f237500 Merge branch 'fa/remote-svn'
A GSoC project.

* fa/remote-svn:
  Add a test script for remote-svn
  remote-svn: add marks-file regeneration
  Add a svnrdump-simulator replaying a dump file for testing
  remote-svn: add incremental import
  remote-svn: Activate import/export-marks for fast-import
  Create a note for every imported commit containing svn metadata
  vcs-svn: add fast_export_note to create notes
  Allow reading svn dumps from files via file:// urls
  remote-svn, vcs-svn: Enable fetching to private refs
  When debug==1, start fast-import with "--stats" instead of "--quiet"
  Add documentation for the 'bidi-import' capability of remote-helpers
  Connect fast-import to the remote-helper via pipe, adding 'bidi-import' capability
  Add argv_array_detach and argv_array_free_detached
  Add svndump_init_fd to allow reading dumps from arbitrary FDs
  Add git-remote-testsvn to Makefile
  Implement a remote helper for svn in C
2012-10-25 06:42:02 -04:00
Jeff King 8de8f9f656 Merge branch 'jm/diff-context-config'
Teaches a new configuration variable to "git diff" Porcelain and
its friends.

* jm/diff-context-config:
  t4055: avoid use of sed 'a' command
  diff: diff.context configuration gives default to -U
2012-10-25 06:41:57 -04:00
Jeff King 55ff630075 Merge branch 'jk/no-more-pre-exec-callback'
Removes a workaround for buggy version of less older than version
406.

* jk/no-more-pre-exec-callback:
  pager: drop "wait for output to run less" hack
2012-10-25 06:41:15 -04:00
Junio C Hamano 8c7a786b6c Git 1.8.0
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-10-21 13:56:23 -07:00
Jeff King 08ad56f3f0 strbuf: always return a non-NULL value from strbuf_detach
The current behavior is to return NULL when strbuf did not
actually allocate a string. This can be quite surprising to
callers, though, who may feed the strbuf from arbitrary data
and expect to always get a valid value.

In most cases, it does not make a difference because calling
any strbuf function will cause an allocation (even if the
function ends up not inserting any data). But if the code is
structured like:

  struct strbuf buf = STRBUF_INIT;
  if (some_condition)
	  strbuf_addstr(&buf, some_string);
  return strbuf_detach(&buf, NULL);

then you may or may not return NULL, depending on the
condition. This can cause us to segfault in http-push
(when fed an empty URL) and in http-backend (when an empty
parameter like "foo=bar&&" is in the $QUERY_STRING).

This patch forces strbuf_detach to allocate an empty
NUL-terminated string when it is called on a strbuf that has
not been allocated.

I investigated all call-sites of strbuf_detach. The majority
are either not affected by the change (because they call a
strbuf_* function unconditionally), or can handle the empty
string just as easily as NULL.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-10-18 09:40:15 -07:00
Junio C Hamano 8ead1bfe11 git-gui 0.17.0
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.7 (MingW32)
 
 iQCVAwUAUH8cCGB90JXwhOSJAQI2ywP+PPdCYqxkpGzYYQkf/ZU3JFBqJqSxQE6i
 V4ROiW+iHaS5EqWt7GvXc0G5M8b+7M0TMtCjwozSD1ne+Ced+ZOfxqSUOgGQL2XD
 Vc4nHsITLNkhlSYlRP6VqXLsuW47iq+Hw/LQcSBvG79A3ooSC1QktfKV2JmtqIxr
 i6lfGwM7yT4=
 =zifn
 -----END PGP SIGNATURE-----

Merge tag 'gitgui-0.17.0' of git://repo.or.cz/git-gui

git-gui 0.17.0

* tag 'gitgui-0.17.0' of git://repo.or.cz/git-gui:
  git-gui 0.17
  git-gui: Don't prepend the prefix if value looks like a full path
  git-gui: Detect full path when parsing arguments
  git-gui: remove .git/CHERRY_PICK_HEAD after committing
  git-gui: Fix a loose/lose mistake
  git-gui: Fix semi-working shortcuts for unstage and revert
  git-gui: de.po: translate "remote" as "extern"
  git-gui: de.po: translate "bare" as "bloß"
  git-gui: de.po: consistently add untranslated hook names within braces
  git-gui: preserve commit messages in utf-8
  git-gui: open console when using --trace on windows
  git-gui: fix a typo in po/ files
  git-gui: Use PWD if it exists on Mac OS X
  git-gui: fix git-gui crash due to uninitialized variable
2012-10-17 15:55:46 -07:00
Pat Thoyts f6dd784ed4 git-gui 0.17
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2012-10-17 21:57:29 +01:00
Andrew Wong df46eda388 git-gui: Don't prepend the prefix if value looks like a full path
When argument parsing fails to detect a file name, "git-gui" will try to
use the previously detected "head" as the file name. We should avoid
prepending the prefix if "head" looks like a full path.

Signed-off-by: Andrew Wong <andrew.kw.w@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2012-10-17 21:47:50 +01:00
Andrew Wong e3d06ca93e git-gui: Detect full path when parsing arguments
When running "git-gui blame" from a subfolder (which means prefix is
non-empty), if we pass a full path as argument, the argument parsing
will fail to recognize the argument as a file name, because prefix is
prepended to the argument.

This patch handles that scenario by adding an additional branch that
checks the file name without using the prefix.

Signed-off-by: Andrew Wong <andrew.kw.w@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2012-10-17 21:47:49 +01:00
Junio C Hamano 87a5461fa7 Git 1.8.0-rc3
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-10-17 10:39:44 -07:00
Junio C Hamano 3d0a2d654f Merge git://github.com/git-l10n/git-po
* git://github.com/git-l10n/git-po:
  l10n: vi.po: update from v1.8.0-rc2-4-g42e55
  l10n: Update Swedish translation (1964t0f0u)
2012-10-17 10:37:40 -07:00
Junio C Hamano d2bfef22e4 Sync with 1.7.12.4 2012-10-17 10:37:32 -07:00
Junio C Hamano 7e2010537e Git 1.7.12.4
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-10-17 10:36:42 -07:00
Junio C Hamano e98fa647aa Merge branch 'jk/maint-http-half-auth-push' into maint
* jk/maint-http-half-auth-push:
  http: fix segfault in handle_curl_result
2012-10-17 10:29:24 -07:00
Junio C Hamano 5a77ff74ba Merge branch 'rr/git-uri-doc' into maint
* rr/git-uri-doc:
  Git url doc: mark ftp/ftps as read-only and deprecate them
2012-10-17 10:28:56 -07:00
Junio C Hamano c15fadab65 Merge branch 'bw/cp-a-is-gnuism' into maint
* bw/cp-a-is-gnuism:
  tests: "cp -a" is a GNUism
2012-10-17 10:28:48 -07:00
Junio C Hamano 530d71011e Merge branch 'nd/doc-ignore' into maint
* nd/doc-ignore:
  gitignore.txt: suggestions how to get literal # or ! at the beginning
2012-10-17 10:28:42 -07:00
Junio C Hamano 352611fc2c Merge branch 'jc/doc-long-options' into maint
* jc/doc-long-options:
  gitcli: parse-options lets you omit tail of long options
2012-10-17 10:28:34 -07:00
Junio C Hamano 26c21f8ec6 Merge branch 'jc/maint-t1450-fsck-order-fix' into maint
* jc/maint-t1450-fsck-order-fix:
  t1450: the order the objects are checked is undefined
2012-10-17 10:28:19 -07:00
Junio C Hamano ff3ec8a9a2 Merge branch 'rr/test-use-shell-path-not-shell' into maint
* rr/test-use-shell-path-not-shell:
  test-lib: use $SHELL_PATH, not $SHELL
2012-10-17 10:27:28 -07:00
Junio C Hamano 5178ee1ea2 Merge branch 'rr/test-make-sure-we-have-git' into maint
* rr/test-make-sure-we-have-git:
  t/test-lib: make sure Git has already been built
2012-10-17 10:27:21 -07:00
Junio C Hamano 756583f432 Merge branch 'po/maint-docs' into maint
* po/maint-docs:
  Doc branch: show -vv option and alternative
  Doc clean: add See Also link
  Doc add: link gitignore
  Doc: separate gitignore pattern sources
  Doc: shallow clone deepens _to_ new depth
2012-10-17 10:27:10 -07:00
Junio C Hamano 8c4bcd34bd Merge branch 'jc/ll-merge-binary-ours' into maint
* jc/ll-merge-binary-ours:
  ll-merge: warn about inability to merge binary files only when we can't
  attr: "binary" attribute should choose built-in "binary" merge driver
  merge: teach -Xours/-Xtheirs to binary ll-merge driver
2012-10-17 10:26:51 -07:00
Junio C Hamano 19100d3f7d Merge branch 'db/doc-custom-xmlto' into maint
* db/doc-custom-xmlto:
  Documentation/Makefile: Allow custom XMLTO binary
2012-10-17 10:25:37 -07:00
Johannes Sixt 84adb64154 maybe_flush_or_die: move a too-loose Windows specific error
check to compat

Commit b2f5e268 (Windows: Work around an oddity when a pipe with no reader
is written to) introduced a check for EINVAL after fflush() to fight
spurious "Invalid argument" errors on Windows when a pipe was broken. But
this check may hide real errors on systems that do not have the this odd
behavior. Introduce an fflush wrapper in compat/mingw.* so that the treatment
is only applied on Windows.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-10-17 00:33:42 -07:00
Jiang Xin b408887045 Merge branch 'master' of https://github.com/nafmo/git-l10n-sv
* 'master' of https://github.com/nafmo/git-l10n-sv:
  l10n: Update Swedish translation (1964t0f0u)
2012-10-17 09:38:30 +08:00
Jiang Xin 0303abccea Merge branch 'master' of git://github.com/vnwildman/git
* 'master' of git://github.com/vnwildman/git:
  l10n: vi.po: update from v1.8.0-rc2-4-g42e55
2012-10-17 09:37:30 +08:00
Tran Ngoc Quan 34a166439a l10n: vi.po: update from v1.8.0-rc2-4-g42e55
* translate 3 new messages
* review quotes

Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>
2012-10-17 08:15:28 +07:00
Thomas Ackermann d25c58ce43 Documentation/RelNotes: remove "updated up to this revision" markers
These were used to keep track of the last commit a release notes
entry was written for, and should have been removed when cutting
the final release.

Signed-off-by: Thomas Ackermann <th.acker@arcor.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-10-16 15:35:00 -07:00
Junio C Hamano 4a182f6174 Update draft release notes to 1.8.0
We are almost there...

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-10-16 13:27:23 -07:00
Junio C Hamano 053a08f5bb Merge branch 'jk/maint-http-half-auth-push'
Fixes a regression in maint-1.7.11 (v1.7.11.7), maint (v1.7.12.1)
and master (v1.8.0-rc0).

* jk/maint-http-half-auth-push:
  http: fix segfault in handle_curl_result
2012-10-16 11:44:37 -07:00
Peter Krefting 8f69cccbe4 l10n: Update Swedish translation (1964t0f0u)
Signed-off-by: Peter Krefting <peter@softwolves.pp.se>
2012-10-16 08:38:11 +01:00
Jiang Xin 9306b5b9a3 l10n: Update git.pot (3 new, 6 removed messages)
This po/git.pot update is generated from v1.8.0-rc2-4-g42e55.

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
2012-10-16 08:39:10 +08:00
Jiang Xin 6de030dd46 Merge branch 'master' of git://github.com/vnwildman/git
* 'master' of git://github.com/vnwildman/git:
  l10n: vi.po: update translation upto cc76011
2012-10-16 08:31:22 +08:00
Tran Ngoc Quan 03c82da32e l10n: vi.po: update translation upto cc76011
* translate all new messages (100%)
* review some others

Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>
2012-10-15 14:35:49 +07:00
Junio C Hamano 42e55a5f57 Merge branch 'maint'
* maint:
  Fix spelling error in post-receive-email hook
2012-10-13 23:05:54 -07:00
Richard Fearn 7703477ab9 Fix spelling error in post-receive-email hook
Signed-off-by: Richard Fearn <richardfearn@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-10-13 21:50:14 -07:00
Junio C Hamano fc364c767a Merge branch 'maint'
* maint:
  gitweb.cgi: fix "comitter_tz" typo in feed
2012-10-12 11:36:06 -07:00
Jeff King 188923f0d1 http: fix segfault in handle_curl_result
When we create an http active_request_slot, we can set its
"results" pointer back to local storage. The http code will
fill in the details of how the request went, and we can
access those details even after the slot has been cleaned
up.

Commit 8809703 (http: factor out http error code handling)
switched us from accessing our local results struct directly
to accessing it via the "results" pointer of the slot. That
means we're accessing the slot after it has been marked as
finished, defeating the whole purpose of keeping the results
storage separate.

Most of the time this doesn't matter, as finishing the slot
does not actually clean up the pointer. However, when using
curl's multi interface with the dumb-http revision walker,
we might actually start a new request before handing control
back to the original caller. In that case, we may reuse the
slot, zeroing its results pointer, and leading the original
caller to segfault while looking for its results inside the
slot.

Instead, we need to pass a pointer to our local results
storage to the handle_curl_result function, rather than
relying on the pointer in the slot struct. This matches what
the original code did before the refactoring (which did not
use a separate function, and therefore just accessed the
results struct directly).

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-10-12 09:42:31 -07:00
Dylan Alex Simon debf29dc29 gitweb.cgi: fix "comitter_tz" typo in feed
gitweb's feeds sometimes contained committer timestamps in the wrong timezone
due to a misspelling.

Signed-off-by: Dylan Simon <dylan@dylex.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-10-12 08:43:12 -07:00
David Aguilar 3facc60031 mergetools/p4merge: Handle "/dev/null"
p4merge does not properly handle the case where "/dev/null"
is passed as a filename.

Work it around by creating a temporary file for this purpose.

Reported-by: Jeremy Morton <admin@game-point.net>
Signed-off-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
---

 Needs to be amended with Tested-by when a report comes...
2012-10-11 11:50:00 -07:00
Junio C Hamano cd46259ebf Git 1.8.0-rc2
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-10-11 11:18:56 -07:00
Junio C Hamano 7bc0911d03 test-lib: Fix say_color () not to interpret \a\b\c in the message
When running with color disabled (e.g. under prove to produce TAP
output), say_color() helper function is defined to use echo to show
the message.  With a message that ends with "\c", echo is allowed to
interpret it as "Do not end the line with LF".

Use printf "%s\n" to emit the message literally.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-10-11 10:40:36 -07:00