Code

Merge branch 'maint-1.7.3' into maint-1.7.4
[git.git] / builtin / remote-ext.c
index 1d3f1cf3cc4854b4c136c5db034baabf1889e3ce..ea71977c8360e1a7899bbd035cf26f93d889800b 100644 (file)
@@ -142,7 +142,7 @@ static const char **parse_argv(const char *arg, const char *service)
        for (i = 0; i < arguments; i++)
                ret[i] = temparray[i];
        ret[arguments] = NULL;
-       return (const char **)ret;
+       return ret;
 }
 
 static void send_git_request(int stdin_fd, const char *serv, const char *repo,
@@ -212,16 +212,16 @@ static int command_loop(const char *child)
        char buffer[MAXCOMMAND];
 
        while (1) {
-               size_t length;
+               size_t i;
                if (!fgets(buffer, MAXCOMMAND - 1, stdin)) {
                        if (ferror(stdin))
                                die("Comammand input error");
                        exit(0);
                }
                /* Strip end of line characters. */
-               length = strlen(buffer);
-               while (isspace((unsigned char)buffer[length - 1]))
-                       buffer[--length] = 0;
+               i = strlen(buffer);
+               while (i > 0 && isspace(buffer[i - 1]))
+                       buffer[--i] = 0;
 
                if (!strcmp(buffer, "capabilities")) {
                        printf("*connect\n\n");
@@ -239,10 +239,8 @@ static int command_loop(const char *child)
 
 int cmd_remote_ext(int argc, const char **argv, const char *prefix)
 {
-       if (argc < 3) {
-               fprintf(stderr, "Error: URL missing");
-               exit(1);
-       }
+       if (argc != 3)
+               die("Expected two arguments");
 
        return command_loop(argv[2]);
 }