[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-inse
From: |
Eli Zaretskii |
Subject: |
bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p |
Date: |
Mon, 08 Jul 2019 16:59:55 +0300 |
> From: Ken Brown <kbrown@cornell.edu>
> CC: "npostavs@gmail.com" <npostavs@gmail.com>, "dan@dpsutton.com"
> <dan@dpsutton.com>, "36502@debbugs.gnu.org" <36502@debbugs.gnu.org>
> Date: Mon, 8 Jul 2019 13:36:38 +0000
>
> >> if (NILP (default_directory))
> >> - default_directory = BVAR (current_buffer, directory);
> >> + {
> >> + default_directory = BVAR (current_buffer, directory);
> >> + if (NILP (Ffile_name_absolute_p (default_directory)))
> >> + default_directory = Qnil;
> >> + }
> >
> > Hmm... why nullify it? Why not simply call expand-file-name
> > recursively?
>
> If the current buffer's default-directory is not absolute, then that variable
> is
> invalid and we can't use it.
I'm asking why not do this instead:
if (NILP (default_directory))
{
default_directory = BVAR (current_buffer, directory);
if (NILP (Ffile_name_absolute_p (default_directory)))
default_directory = Fexpand_file_name (default_directory,
Vinvocation_directory);
}
Or will the above not work for some reason?
> Nullifying it guarantees that the code starting with "if (! STRINGP
> (default_directory))" is used. Maybe I should have put in a comment
> explaining
> that.
Sure, but this loses information. Of course, if we cannot do better
reliably, it's an okay solution.
Thanks.
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, (continued)
- Message not available
- Message not available
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Daniel Sutton, 2019/07/05
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Ken Brown, 2019/07/06
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Noam Postavsky, 2019/07/06
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Ken Brown, 2019/07/06
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Eli Zaretskii, 2019/07/06
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Ken Brown, 2019/07/07
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Eli Zaretskii, 2019/07/07
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Ken Brown, 2019/07/07
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Eli Zaretskii, 2019/07/08
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Ken Brown, 2019/07/08
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p,
Eli Zaretskii <=
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Ken Brown, 2019/07/08
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Ken Brown, 2019/07/08
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Eli Zaretskii, 2019/07/08
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Ken Brown, 2019/07/10
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Richard Stallman, 2019/07/11
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Eli Zaretskii, 2019/07/12
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Ken Brown, 2019/07/12
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Ken Brown, 2019/07/15
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Eli Zaretskii, 2019/07/19
- bug#36502: Fwd: bug#36502: 27.0.50; infinite loop in file-name-case-insensitive-p, Eli Zaretskii, 2019/07/20