Re: [PATCH v8 0/3] git-remote-fd & git-remote-ext

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thanks; the changes from the last round all look sensible to me, but did
you know that the last round has already been in 'next' for a few weeks by
now already?

If you don't mind I'll turn these three into the following and queue as
4/3 on top of what is already merged, as reverting the merge with the old
series and merging the new round to 'next' makes it messier than it
already is.

-- >8 --
From: Ilari Liusvaara <ilari.liusvaara@xxxxxxxxxxx>
Subject: remote-fd/ext: finishing touches after code review

When compiling with pthread support, transport-helper.c needs to include
necessary header files.  Also fix a few error messages in remote-ext and
remote-fd programs, and a potential buffer underrun in remote-fd.

In the documentation, clarify how %G and %V are used; the old description
looked as if they take repository/vhost parameters, which was wrong.

Also fix AsciiDoc markup for the page title of remote-fd/remote-ext manpages,
and tweak the way how section headers are shown.

Signed-off-by: Ilari Liusvaara <ilari.liusvaara@xxxxxxxxxxx>
Signed-off-by: Junio C Hamano <gitster@xxxxxxxxx>
---
 Documentation/git-remote-ext.txt |   10 +++++-----
 Documentation/git-remote-fd.txt  |   10 +++++-----
 builtin/remote-ext.c             |    8 +++-----
 builtin/remote-fd.c              |    6 +++---
 transport-helper.c               |    5 +++++
 5 files changed, 21 insertions(+), 18 deletions(-)

diff --git a/Documentation/git-remote-ext.txt b/Documentation/git-remote-ext.txt
index 8fb260b..f4fbf67 100644
--- a/Documentation/git-remote-ext.txt
+++ b/Documentation/git-remote-ext.txt
@@ -39,20 +39,20 @@ The following sequences have a special meaning:
 	git-upload-pack, or git-upload-archive) of the service
 	git wants to invoke.
 
-'%G<repository>' (as argument)::
+'%G' (must be first characters in argument)::
 	This argument will not be passed to 'program'. Instead, it
 	will cause helper to start by sending git:// service request to
 	remote side with service field set to approiate value and
-	repository field set to <repository>. Default is not to send
+	repository field set to rest of the argument. Default is not to send
 	such request.
 +
 This is useful if remote side is git:// server accessed over
 some tunnel.
 
-'%V<host>' (as argument)::
+'%V' (must be first characters in argument)::
 	This argument will not be passed to 'program'. Instead it sets
-	the vhost field in git:// service request. Default is not to
-	send vhost in such request (if sent).
+	the vhost field in git:// service request (to rest of the argument).
+	Default is not to send vhost in such request (if sent).
 
 ENVIRONMENT VARIABLES:
 ----------------------
diff --git a/Documentation/git-remote-fd.txt b/Documentation/git-remote-fd.txt
index 1c1a179..abc4944 100644
--- a/Documentation/git-remote-fd.txt
+++ b/Documentation/git-remote-fd.txt
@@ -1,5 +1,5 @@
 git-remote-fd(1)
-=================
+================
 
 NAME
 ----
@@ -28,13 +28,13 @@ It is assumed that any handshaking procedures have already been completed
 information to user in the URL in case that URL is displayed in some
 context.
 
-ENVIRONMENT VARIABLES:
-----------------------
+ENVIRONMENT VARIABLES
+---------------------
 GIT_TRANSLOOP_DEBUG::
 	If set, prints debugging information about various reads/writes.
 
-EXAMPLES:
----------
+EXAMPLES
+--------
 git fetch fd::17 master::
 	Fetch master, using file descriptor #17 to communicate with
 	git-upload-pack.
diff --git a/builtin/remote-ext.c b/builtin/remote-ext.c
index 1d3f1cf..1f77317 100644
--- a/builtin/remote-ext.c
+++ b/builtin/remote-ext.c
@@ -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,
@@ -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]);
 }
diff --git a/builtin/remote-fd.c b/builtin/remote-fd.c
index 7517f24..1f2467b 100644
--- a/builtin/remote-fd.c
+++ b/builtin/remote-fd.c
@@ -31,7 +31,7 @@ static void command_loop(int input_fd, int output_fd)
 		}
 		/* Strip end of line characters. */
 		i = strlen(buffer);
-		while (isspace(buffer[i - 1]))
+		while (i > 0 && isspace(buffer[i - 1]))
 			buffer[--i] = 0;
 
 		if (!strcmp(buffer, "capabilities")) {
@@ -56,8 +56,8 @@ int cmd_remote_fd(int argc, const char **argv, const char *prefix)
 	int output_fd = -1;
 	char *end;
 
-	if (argc < 3)
-		die("URL missing");
+	if (argc != 3)
+		die("Expected two arguments");
 
 	input_fd = (int)strtoul(argv[2], &end, 10);
 
diff --git a/transport-helper.c b/transport-helper.c
index 0c094d6..3a50856 100644
--- a/transport-helper.c
+++ b/transport-helper.c
@@ -9,6 +9,11 @@
 #include "remote.h"
 #include "string-list.h"
 
+#ifndef NO_PTHREADS
+#include <pthread.h>
+#include "thread-utils.h"
+#endif
+
 static int debug;
 
 struct helper_data
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]