Re: [PATCH] editor: use canonicalized absolute path
- From
Duy Nguyen <pclouds@gmail.com>
- Date
- Jul 30, 2013, 00:27 UTC
- Message-ID
- <CACsJy8DxSv7zP+EL0yZnkTztEm7taS0VQxcQ6XPQHMvVMLtVqg@mail.gmail.com>
- In-Reply-To
- <7v8v0p2z45.fsf@alter.siamese.dyndns.org>
On Mon, Jul 29, 2013 at 9:56 PM, Junio C Hamano <gitster@pobox.com> wrote:
Show 6 quoted lines
>> Co-authored-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> >> Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com> > > That's a bit strange---the patch text looks like the "how about > this" patch Duy posted earlier. Shouldn't it be From: Duy with > S-o-b: by two of you instead?
The idea is the same, but my patch is a bit different (use of realpath instead of real_path, I didn't remember git has real_path). I'm fine with Ram being the author.
Show 24 quoted lines
>> diff --git a/editor.c b/editor.c
>> index 27bdecd..0abbd8d 100644
>> --- a/editor.c
>> +++ b/editor.c
>> @@ -37,7 +37,7 @@ int launch_editor(const char *path, struct strbuf *buffer, const char *const *en
>> return error("Terminal is dumb, but EDITOR unset");
>>
>> if (strcmp(editor, ":")) {
>> - const char *args[] = { editor, path, NULL };
>> + const char *args[] = { editor, real_path(path), NULL };
>
> While I am not fundamentally opposed to add a workaround for bugs in
> a popular tool many people use, I am a bit uneasy about this change.
>
> For editors that are not broken, this could be an annoying
> regression, isn't it? When the user asks "What is the path of the
> file I am editing?" to the editor (i.e. an equivalent of \C-x\C-b),
> the updated code will start spewing a long full-path from the root
> directory, while we used to give a relative path that is short,
> sweet and more in line with the context of user's work.
>
> Compared to not being able to edit, it may be a small price to pay
> for those who do need to suffer the broken editor, but the patch
> makes those who do not need this workaround to pay the price.Does looking at the edited file's path happen often? I have never done that before. I ask because in order to avoid the price for those users, the code could get a little bit more complicated (detecting if the given relative path traverse backward outside a symlink..). To me it seems like a good trade off in favor of simpler code.
-- Duy