Mercurial > hg > xemacs-beta
comparison src/buffer.c @ 4733:a5210e70ffbe
No need to fatal () on startup if $PWD doesn't exist; chdir to "/" instead.
src/ChangeLog addition:
2009-11-08 Aidan Kehoe <kehoea@parhasard.net>
* sysfile.h (DEFAULT_DIRECTORY_FALLBACK):
New #define, "/" on Unix and "C:\\" on Win32 native, a directory
that should "always" be available.
* fileio.c (Fexpand_file_name): Use DEFAULT_DIRECTORY_FALLBACK
here, instead of conditionalising on WIN32_NATIVE.
* editfns.c (get_home_directory):
Use DEFAULT_DIRECTORY_FALLBACK if looking up the home directory
fails, on both Windows and Unix.
* buffer.c (init_initial_directory):
Don't give a fatal error if the current directory doesn't exist,
chdir to DEFAULT_DIRECTORY_FALLBACK instead.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Sun, 08 Nov 2009 17:27:26 +0000 |
parents | 77138fc618a9 |
children | d261888e5069 |
comparison
equal
deleted
inserted
replaced
4732:2491a837112c | 4733:a5210e70ffbe |
---|---|
2924 #endif | 2924 #endif |
2925 if ((initial_directory = qxe_allocating_getcwd ()) == NULL) | 2925 if ((initial_directory = qxe_allocating_getcwd ()) == NULL) |
2926 { | 2926 { |
2927 Ibyte *errmess; | 2927 Ibyte *errmess; |
2928 GET_STRERROR (errmess, errno); | 2928 GET_STRERROR (errmess, errno); |
2929 fatal ("`getcwd' failed: %s\n", errmess); | 2929 stderr_out ("`getcwd' failed: %s: changing default directory to %s\n", |
2930 errmess, DEFAULT_DIRECTORY_FALLBACK); | |
2931 | |
2932 if (qxe_chdir (DEFAULT_DIRECTORY_FALLBACK) < 0) | |
2933 { | |
2934 GET_STRERROR (errmess, errno); | |
2935 | |
2936 fatal ("could not `chdir' to `%s': %s\n", | |
2937 DEFAULT_DIRECTORY_FALLBACK, errmess); | |
2938 } | |
2939 | |
2940 initial_directory = qxe_allocating_getcwd(); | |
2941 assert (initial_directory != NULL); | |
2930 } | 2942 } |
2931 | 2943 |
2932 /* Make sure pwd is DIRECTORY_SEP-terminated. | 2944 /* Make sure pwd is DIRECTORY_SEP-terminated. |
2933 Maybe this should really use some standard subroutine | 2945 Maybe this should really use some standard subroutine |
2934 whose definition is filename syntax dependent. */ | 2946 whose definition is filename syntax dependent. */ |