From: Johannes Schindelin Date: Fri, 08 May 2009 08:04:35 GMT Subject: Re: [JGIT PATCH 2/2] Make Repository.isValidRefName compatible with Git 1.6.3 Message-ID: In-Reply-To: <81b0412b0905080024r211864bfhe7f70acabe0880c6@mail.gmail.com> Hi, On Fri, 8 May 2009, Alex Riesen wrote: > 2009/5/8 Shawn O. Pearce : > > --- a/lockfile.c > > +++ b/lockfile.c > > @@ -129,11 +129,11 @@ static int lock_file(struct lock_file *lk, const char *path, int flags) > >        strcpy(lk->filename, path); > >        /* > >         * subtract 5 from size to make sure there's room for adding > > -        * ".lock" for the lock file name > > +        * "..lck" for the lock file name > >         */ > >        if (!(flags & LOCK_NODEREF)) > >                resolve_symlink(lk->filename, sizeof(lk->filename)-5); > > -       strcat(lk->filename, ".lock"); > > +       strcat(lk->filename, "..lck"); > >        lk->fd = open(lk->filename, O_RDWR | O_CREAT | O_EXCL, 0666); > > There must be at least some deprecation period during which > also the old .lock lockfiles are considered and created. > Just imagine someone modifying the ref with an older version, > which knows nothing about ..lck. As lock files are only supposed to be created by Git itself, and have a maximum lifetime until the end of the process, I think we do not need a grace period at all. Ciao, Dscho