git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Алексей Крезов" <zapped@mail.ru>
To: git@vger.kernel.org
Subject: Bug reports & patches: git-svn, git-completion, git diff hunk headers for Pascal
Date: Fri, 24 Dec 2010 15:46:26 +0300	[thread overview]
Message-ID: <6110634424.20101224154626@mail.ru> (raw)

[-- Attachment #1: Type: text/plain, Size: 625 bytes --]

Hello!
I've found some bugs in Git:
1. git-svn:
  git svn set-tree/dcommit do not respect svn.pathnameencoding config variable
  although git svn fetch does
  here is the my patch - see attach git-svn.patch
2. git-completion
  when GIT_PS1_SHOWDIRTYSTATE is set diff.ignoreSubmodules config
  variable is not respected
  here is the my patch - see attach git-completion.bash.patch
3. CLASS procedures/functions are not detected (just
procedures/functions do) in hunk headers
for git diff for Pascal files
  here is the my patch - see attach userdiff.c.patch

P.S. All patches is against Git v1.7.3.4
  

mailto:zapped@mail.ru

[-- Attachment #2: userdiff.c.patch --]
[-- Type: application/octet-stream, Size: 489 bytes --]

diff --git a/userdiff.c b/userdiff.c
index f9e05b5..259a382 100644
--- a/userdiff.c
+++ b/userdiff.c
@@ -52,7 +52,7 @@ PATTERNS("objc",
 	 "|[-+*/<>%&^|=!]=|--|\\+\\+|<<=?|>>=?|&&|\\|\\||::|->"
 	 "|[^[:space:]]|[\x80-\xff]+"),
 PATTERNS("pascal",
-	 "^((procedure|function|constructor|destructor|interface|"
+	 "^(((class[ \t]+)?(procedure|function)|constructor|destructor|interface|"
 		"implementation|initialization|finalization)[ \t]*.*)$"
 	 "\n"
 	 "^(.*=[ \t]*(class|record).*)$",

[-- Attachment #3: git-svn.patch --]
[-- Type: application/octet-stream, Size: 370 bytes --]

diff --git a/git-svn.perl b/git-svn.perl
index 757de82..399bf4c 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -4451,6 +4451,7 @@ sub new {
 	$self->{path_prefix} = length $self->{svn_path} ?
 	                       "$self->{svn_path}/" : '';
 	$self->{config} = $opts->{config};
+	$self->{pathnameencoding} = Git::config('svn.pathnameencoding');
 	return $self;
 }
 

[-- Attachment #4: git-completion.bash.patch --]
[-- Type: application/octet-stream, Size: 761 bytes --]

diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
index d3037fc..50fc385 100755
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash
@@ -280,7 +280,8 @@ __git_ps1 ()
 		elif [ "true" = "$(git rev-parse --is-inside-work-tree 2>/dev/null)" ]; then
 			if [ -n "${GIT_PS1_SHOWDIRTYSTATE-}" ]; then
 				if [ "$(git config --bool bash.showDirtyState)" != "false" ]; then
-					git diff --no-ext-diff --quiet --exit-code || w="*"
+					is=$(git config diff.ignoreSubmodules)
+					git diff --no-ext-diff --quiet --exit-code --ignore-submodules=$is || w="*"
 					if git rev-parse --quiet --verify HEAD >/dev/null; then
 						git diff-index --cached --quiet HEAD -- || i="+"
 					else

             reply	other threads:[~2010-12-24 12:51 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-12-24 12:46 Алексей Крезов [this message]
2010-12-24 14:10 ` Bug reports & patches: git-svn, git-completion, git diff hunk headers for Pascal Matthieu Moy
2010-12-24 14:25   ` Tay Ray Chuan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=6110634424.20101224154626@mail.ru \
    --to=zapped@mail.ru \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).