From: Junio C Hamano Date: Sat, 09 Feb 2008 05:27:12 GMT Subject: Re: [PATCH] opening files in remote.c should ensure it is opening a file Message-ID: <7vk5leg0nj.fsf@gitster.siamese.dyndns.org> In-Reply-To: Daniel Barkalow writes: > 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) Perhaps "static int valid_remote_nick(const char*)" is needed? I'd say we can limit it to something like: static int valid_remote_nick(const char *name) { if (!name[0] || /* not empty */ (name[0] == '.' && /* not "." */ (!name[1] || /* not ".." */ (name[1] == '.' && !name[2])))) return 0; return !!strchr(name, '/'); /* no slash */ }