Thread (7 messages) flat view 7 messages, 5 authors, 2016-06-15

Re: [PATCH] opening files in remote.c should ensure it is opening a file

From: Johannes Schindelin <hidden>
Date: 2016-06-15 22:44:11

Hi,

On Fri, 8 Feb 2008, Daniel Barkalow wrote:
quoted hunk ↗ jump to hunk
On Fri, 8 Feb 2008, Mike Ralphson wrote:
quoted
On Feb 8, 2008 4:46 PM, H.Merijn Brand [off-list ref] wrote:
quoted
HP-UX allows directories to be opened with fopen (path, "r"), which
will cause some translations that expect to read files, read dirs
instead. This patch makes sure the two fopen () calls in remote.c
only open the file if it is a file.

Signed-off-by: H.Merijn Brand <redacted>
Many thanks, this is also required for AIX. I had got some way to
tracking it down, but I thought it was an issue with strbuf. So...
Does the following help? We really ought to know that ".." must be a path 
literal (and there obviously should be more limitations on nicknames for 
remotes, but I haven't figured out what they should be yet).

	-Daniel
*This .sig left intentionally blank*
diff --git a/remote.c b/remote.c
index 0e00680..83a3d9d 100644
--- a/remote.c
+++ b/remote.c
@@ -348,7 +348,7 @@ struct remote *remote_get(const char *name)
        if (!name)
                name = default_remote_name;
        ret = make_remote(name, 0);
-       if (name[0] != '/') {
+       if (name[0] != '/' && strcmp(name, "..")) {
                if (!ret->url)
                        read_remotes_file(ret);
                if (!ret->url)
You'll need to check for ".", too: "git pull . <branch>" was originally 
the only way to merge a local branch, and it is still valid.

Ciao,
Dscho
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help