From: Andreas Schwab <schwab@linux-m68k.org>
To: Eli Zaretskii <eliz@gnu.org>
Cc: Philipp Stephani <p.stephani2@gmail.com>, 27871@debbugs.gnu.org
Subject: bug#27871: 26.0.50; Bad handling of unmounted directory
Date: Sat, 23 Sep 2017 13:30:51 +0200 [thread overview]
Message-ID: <87r2uxejo4.fsf@linux-m68k.org> (raw)
In-Reply-To: <83a81lbswu.fsf@gnu.org> (Eli Zaretskii's message of "Sat, 23 Sep 2017 13:39:29 +0300")
On Sep 23 2017, Eli Zaretskii <eliz@gnu.org> wrote:
>> +/* Return the current working directory. The result should be freed
>> + with 'free'. Return NULL on errors. */
>> +char *
>> +emacs_get_current_dir_name (void)
>> +{
>> + char *dir = emacs_get_current_dir_name_1 ();
>> + if (dir == NULL)
>> + return NULL;
>> + /* On Linux, getcwd and get_current_dir_name return a string
>> + starting with "(unreachable)" if the current directory doesn't
>> + exist, e.g. because it was unmounted. Treat that as an error.
>> + See https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27871. */
>> + const char *prefix = "(unreachable)";
>> + size_t dir_len = strlen (dir);
>> + size_t prefix_len = strlen (prefix);
>> + if (dir_len >= prefix_len && strncmp (dir, prefix, prefix_len) == 0)
>> + {
>> + errno = ENOTCONN;
>> + return NULL;
>
> What if there's a directory called literally "(unreachable)SOMETHING"?
An absolute file name cannot start with "(unreachable)".
Andreas.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."
next prev parent reply other threads:[~2017-09-23 11:30 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-07-29 21:06 bug#27871: 26.0.50; Bad handling of unmounted directory Philipp
2017-09-23 10:19 ` Philipp Stephani
2017-09-23 10:39 ` Eli Zaretskii
2017-09-23 11:30 ` Andreas Schwab [this message]
2017-09-23 11:33 ` Philipp Stephani
2017-09-23 11:38 ` Eli Zaretskii
2017-09-23 11:41 ` Eli Zaretskii
2017-09-30 18:49 ` Philipp Stephani
2017-09-30 18:50 ` bug#27871: [PATCH] Treat unreachable current directory as error Philipp Stephani
2017-09-30 18:50 ` Philipp Stephani
2017-10-01 0:00 ` bug#27871: " Paul Eggert
2017-10-05 10:13 ` Eli Zaretskii
2017-10-05 23:06 ` Paul Eggert
2017-10-07 8:49 ` Philipp Stephani
2017-10-08 6:04 ` Paul Eggert
2017-10-08 14:56 ` Philipp Stephani
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87r2uxejo4.fsf@linux-m68k.org \
--to=schwab@linux-m68k.org \
--cc=27871@debbugs.gnu.org \
--cc=eliz@gnu.org \
--cc=p.stephani2@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.