From: Daniel Barkalow Date: Sat, 09 Feb 2008 05:54:08 GMT Subject: Re: [PATCH] opening files in remote.c should ensure it is opening a file Message-ID: In-Reply-To: <7vk5leg0nj.fsf@gitster.siamese.dyndns.org> On Fri, 8 Feb 2008, Junio C Hamano wrote: > 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 */ > } Yeah, that looks right to me. -Daniel *This .sig left intentionally blank*