[PATCH] git-compat-util.h:rewrite skip_prefix() as loop

2014-03-01 Thread Siddharth Goel
Rewrote skip_prefix() function so that prefix is scanned once.

Signed-off-by: Siddharth Goel siddharth98...@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

--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] git-compat-util.h:rewrite skip_prefix() as loop

2014-03-01 Thread 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 siddharth98...@gmail.com wrote:
 Rewrote skip_prefix() function so that prefix is scanned once.

 Signed-off-by: Siddharth Goel siddharth98...@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

--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] git-compat-util.h:rewrite skip_prefix() as loop

2014-03-01 Thread Eric Sunshine
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 siddharth98...@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 siddharth98...@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
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] git-compat-util.h:rewrite skip_prefix() as loop

2014-03-01 Thread Eric Sunshine
On Sat, Mar 1, 2014 at 10:22 PM, Siddharth Goel
siddharth98...@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.
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html