* [PATCH] mailinfo: better parse email adresses containg parentheses
@ 2008-07-21 13:34 Philippe Bruhat (BooK)
2008-07-21 14:36 ` Lukas Sandström
2008-07-22 3:16 ` Junio C Hamano
0 siblings, 2 replies; 4+ messages in thread
From: Philippe Bruhat (BooK) @ 2008-07-21 13:34 UTC (permalink / raw)
To: git; +Cc: Philippe Bruhat (BooK)
When using git-rebase, author fields containing a ')' at the last
position had the close-parens character incorrectly removed
because the From: parser incorrectly matched it as
user@host (User Name)
(removing parentheses), instead of
User Name (me) <user@host>
Signed-off-by: Philippe Bruhat (BooK) <book@cpan.org>
---
builtin-mailinfo.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/builtin-mailinfo.c b/builtin-mailinfo.c
index b99a5b6..5581c9f 100644
--- a/builtin-mailinfo.c
+++ b/builtin-mailinfo.c
@@ -115,10 +115,10 @@ static void handle_from(const struct strbuf *from)
* the () pair at the end.
*/
strbuf_trim(&f);
- if (f.buf[0] == '(')
+ if (f.buf[0] == '(' && f.len && f.buf[f.len - 1] == ')') {
strbuf_remove(&name, 0, 1);
- if (f.len && f.buf[f.len - 1] == ')')
strbuf_setlen(&f, f.len - 1);
+ }
get_sane_name(&name, &f, &email);
strbuf_release(&f);
--
1.5.4.3
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] mailinfo: better parse email adresses containg parentheses
2008-07-21 13:34 [PATCH] mailinfo: better parse email adresses containg parentheses Philippe Bruhat (BooK)
@ 2008-07-21 14:36 ` Lukas Sandström
2008-07-22 3:16 ` Junio C Hamano
1 sibling, 0 replies; 4+ messages in thread
From: Lukas Sandström @ 2008-07-21 14:36 UTC (permalink / raw)
To: Philippe Bruhat (BooK); +Cc: git, Junio C Hamano
Philippe Bruhat (BooK) wrote:
> When using git-rebase, author fields containing a ')' at the last
> position had the close-parens character incorrectly removed
> because the From: parser incorrectly matched it as
>
> user@host (User Name)
>
> (removing parentheses), instead of
>
> User Name (me) <user@host>
>
> Signed-off-by: Philippe Bruhat (BooK) <book@cpan.org>
ACK.
> ---
> builtin-mailinfo.c | 4 ++--
> 1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/builtin-mailinfo.c b/builtin-mailinfo.c
> index b99a5b6..5581c9f 100644
> --- a/builtin-mailinfo.c
> +++ b/builtin-mailinfo.c
> @@ -115,10 +115,10 @@ static void handle_from(const struct strbuf *from)
> * the () pair at the end.
> */
> strbuf_trim(&f);
> - if (f.buf[0] == '(')
> + if (f.buf[0] == '(' && f.len && f.buf[f.len - 1] == ')') {
> strbuf_remove(&name, 0, 1);
Note: The line above should obviously be "strbuf_remove(&f, 0, 1);",
another error from the strbuf conversion I made. Sigh.
> - if (f.len && f.buf[f.len - 1] == ')')
> strbuf_setlen(&f, f.len - 1);
> + }
>
> get_sane_name(&name, &f, &email);
> strbuf_release(&f);
/Lukas
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] mailinfo: better parse email adresses containg parentheses
2008-07-21 13:34 [PATCH] mailinfo: better parse email adresses containg parentheses Philippe Bruhat (BooK)
2008-07-21 14:36 ` Lukas Sandström
@ 2008-07-22 3:16 ` Junio C Hamano
2008-07-22 10:24 ` Philippe Bruhat (BooK)
1 sibling, 1 reply; 4+ messages in thread
From: Junio C Hamano @ 2008-07-22 3:16 UTC (permalink / raw)
To: Philippe Bruhat (BooK); +Cc: git
"Philippe Bruhat (BooK)" <book@cpan.org> writes:
> When using git-rebase, author fields containing a ')' at the last
> position had the close-parens character incorrectly removed
> because the From: parser incorrectly matched it as
>
> user@host (User Name)
>
> (removing parentheses), instead of
>
> User Name (me) <user@host>
>
> Signed-off-by: Philippe Bruhat (BooK) <book@cpan.org>
Hmm, tests?
By the way, that second form parses like this:
mailbox =
name-addr =
display-name angle-addr = "User Name (me) <user@host>"
display-name =
phrase = "User Name"
angle-addr = CFWS "<" addr-spec ">" = "(me) <user@host>"
So strictly speaking, shouldn't we be stripping the whole (me) as garbage?
It is not even part of the display-name but is a whitespace equivalent
comment.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] mailinfo: better parse email adresses containg parentheses
2008-07-22 3:16 ` Junio C Hamano
@ 2008-07-22 10:24 ` Philippe Bruhat (BooK)
0 siblings, 0 replies; 4+ messages in thread
From: Philippe Bruhat (BooK) @ 2008-07-22 10:24 UTC (permalink / raw)
To: git
On Mon, Jul 21, 2008 at 08:16:43PM -0700, Junio C Hamano wrote:
> >
> > Signed-off-by: Philippe Bruhat (BooK) <book@cpan.org>
>
> Hmm, tests?
>
> By the way, that second form parses like this:
>
> mailbox =
> name-addr =
> display-name angle-addr = "User Name (me) <user@host>"
>
> display-name =
> phrase = "User Name"
>
> angle-addr = CFWS "<" addr-spec ">" = "(me) <user@host>"
>
> So strictly speaking, shouldn't we be stripping the whole (me) as garbage?
> It is not even part of the display-name but is a whitespace equivalent
> comment.
Well, I use this:
"Philippe Bruhat (BooK)" <book@cpan.org>
as my From: line, and I would like to be able to use it so in git.
As git knows the difference between user name and user email, it should
be able to keep the information separate all the way.
Which makes me think that since it seems that rebase goes through a
patch-file step, the problem with my username may actually lie with
creating the patch file (no quotes around a user name containing parens)
rather than with parsing the patch From: line.
--
Philippe Bruhat (BooK)
Everyone's life seems easier from the outside.
(Moral from Groo The Wanderer #45 (Epic))
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2008-07-22 10:25 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-07-21 13:34 [PATCH] mailinfo: better parse email adresses containg parentheses Philippe Bruhat (BooK)
2008-07-21 14:36 ` Lukas Sandström
2008-07-22 3:16 ` Junio C Hamano
2008-07-22 10:24 ` Philippe Bruhat (BooK)
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).