git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] git-compat-util.h:rewrite skip_prefix() as loop
@ 2014-03-01 13:32 Siddharth Goel
  2014-03-02  3:22 ` Siddharth Goel
  2014-03-02  5:00 ` Eric Sunshine
  0 siblings, 2 replies; 4+ messages in thread
From: Siddharth Goel @ 2014-03-01 13:32 UTC (permalink / raw)
  To: git; +Cc: gitster, Siddharth Goel

Rewrote skip_prefix() function so that prefix is scanned once.

Signed-off-by: Siddharth Goel <siddharth98391@gmail.com>
---
 git-compat-util.h | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/git-compat-util.h b/git-compat-util.h
index 614a5e9..550dce3 100644
--- a/git-compat-util.h
+++ b/git-compat-util.h
@@ -357,8 +357,11 @@ extern int suffixcmp(const char *str, const char *suffix);
 
 static inline const char *skip_prefix(const char *str, const char *prefix)
 {
-	size_t len = strlen(prefix);
-	return strncmp(str, prefix, len) ? NULL : str + len;
+	while (*prefix != '\0' && *str == *prefix) {
+		str++;
+		prefix++;
+	}
+	return (*prefix == '\0' ? str : NULL);
 }
 
 #if defined(NO_MMAP) || defined(USE_WIN32_MMAP)
-- 
1.9.0.138.g2de3478.dirty

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] git-compat-util.h:rewrite skip_prefix() as loop
  2014-03-01 13:32 [PATCH] git-compat-util.h:rewrite skip_prefix() as loop Siddharth Goel
@ 2014-03-02  3:22 ` Siddharth Goel
  2014-03-02  5:02   ` Eric Sunshine
  2014-03-02  5:00 ` Eric Sunshine
  1 sibling, 1 reply; 4+ messages in thread
From: Siddharth Goel @ 2014-03-02  3:22 UTC (permalink / raw)
  To: git; +Cc: Siddharth Goel

To my surprise, git format-patch had removed the Git Notes that I had
put to my commit (regarding GSoC). I have written this patch as a part
of the GSoC 2014 MicroProject for Git. Going through the mail-chain I
observed that many students have attempted this Microproject. So is it
ok if I stick to this Microproject or should I go with another one?

On Sat, Mar 1, 2014 at 9:32 PM, Siddharth Goel <siddharth98391@gmail.com> wrote:
> Rewrote skip_prefix() function so that prefix is scanned once.
>
> Signed-off-by: Siddharth Goel <siddharth98391@gmail.com>
> ---
>  git-compat-util.h | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/git-compat-util.h b/git-compat-util.h
> index 614a5e9..550dce3 100644
> --- a/git-compat-util.h
> +++ b/git-compat-util.h
> @@ -357,8 +357,11 @@ extern int suffixcmp(const char *str, const char *suffix);
>
>  static inline const char *skip_prefix(const char *str, const char *prefix)
>  {
> -       size_t len = strlen(prefix);
> -       return strncmp(str, prefix, len) ? NULL : str + len;
> +       while (*prefix != '\0' && *str == *prefix) {
> +               str++;
> +               prefix++;
> +       }
> +       return (*prefix == '\0' ? str : NULL);
>  }
>
>  #if defined(NO_MMAP) || defined(USE_WIN32_MMAP)
> --
> 1.9.0.138.g2de3478.dirty
>

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] git-compat-util.h:rewrite skip_prefix() as loop
  2014-03-01 13:32 [PATCH] git-compat-util.h:rewrite skip_prefix() as loop Siddharth Goel
  2014-03-02  3:22 ` Siddharth Goel
@ 2014-03-02  5:00 ` Eric Sunshine
  1 sibling, 0 replies; 4+ messages in thread
From: Eric Sunshine @ 2014-03-02  5:00 UTC (permalink / raw)
  To: Siddharth Goel; +Cc: Git List, Junio C Hamano

Thanks for the submission. Minor comments below to give you a taste of
what it's like to contribute to this project...

On Sat, Mar 1, 2014 at 8:32 AM, Siddharth Goel <siddharth98391@gmail.com> wrote:
> Rewrote skip_prefix() function so that prefix is scanned once.

Good description. In this project, use imperative tone, so say
"Rewrite skip_prefix()..." as you did in the subject. In fact, this
description is short enough and conveys sufficient information that it
could just be placed in the subject as the entire commit message.

    Subject: skip_prefix: rewrite so that prefix is scanned once

> Signed-off-by: Siddharth Goel <siddharth98391@gmail.com>
> ---
>  git-compat-util.h | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/git-compat-util.h b/git-compat-util.h
> index 614a5e9..550dce3 100644
> --- a/git-compat-util.h
> +++ b/git-compat-util.h
> @@ -357,8 +357,11 @@ extern int suffixcmp(const char *str, const char *suffix);
>
>  static inline const char *skip_prefix(const char *str, const char *prefix)
>  {
> -       size_t len = strlen(prefix);
> -       return strncmp(str, prefix, len) ? NULL : str + len;
> +       while (*prefix != '\0' && *str == *prefix) {
> +               str++;
> +               prefix++;
> +       }
> +       return (*prefix == '\0' ? str : NULL);
>  }
>
>  #if defined(NO_MMAP) || defined(USE_WIN32_MMAP)
> --
> 1.9.0.138.g2de3478.dirty

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] git-compat-util.h:rewrite skip_prefix() as loop
  2014-03-02  3:22 ` Siddharth Goel
@ 2014-03-02  5:02   ` Eric Sunshine
  0 siblings, 0 replies; 4+ messages in thread
From: Eric Sunshine @ 2014-03-02  5:02 UTC (permalink / raw)
  To: Siddharth Goel; +Cc: Git List

On Sat, Mar 1, 2014 at 10:22 PM, Siddharth Goel
<siddharth98391@gmail.com> wrote:
> To my surprise, git format-patch had removed the Git Notes that I had
> put to my commit (regarding GSoC). I have written this patch as a part
> of the GSoC 2014 MicroProject for Git.

You probably wanted to use the --notes option with format-patch.

> Going through the mail-chain I
> observed that many students have attempted this Microproject. So is it
> ok if I stick to this Microproject or should I go with another one?

That's okay. The purpose of the miniprojects is for you to get a taste
of what it's like to contribute to this project and to understand what
will be expected of you as a GSoC student; and to give the GSoC
mentors a chance to judge your abilities and observe how you interact
with reviewers.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2014-03-02  5:02 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-01 13:32 [PATCH] git-compat-util.h:rewrite skip_prefix() as loop Siddharth Goel
2014-03-02  3:22 ` Siddharth Goel
2014-03-02  5:02   ` Eric Sunshine
2014-03-02  5:00 ` Eric Sunshine

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).