diff options
author | Eli Zaretskii <eliz@gnu.org> | 2014-07-03 20:58:19 +0300 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2014-07-03 20:58:19 +0300 |
commit | 9235f805fa0bacc02a6ddaeceb9867cb37d01d85 (patch) | |
tree | 9a8a3333ad25ec7e302e511ffb6747fee119a95d /libguile/init.c | |
parent | 9dc3fc4dd474ce4da6a45dcf197e1f99a9a7047a (diff) | |
download | guile-9235f805fa0bacc02a6ddaeceb9867cb37d01d85.tar.gz |
Fix problems with Windows file names that use backslashes.
* libguile/load.c (scm_i_mirror_backslashes): New function.
(scm_init_load_path): Call it to produce MS-Windows file names
with forward slashes.
(FILE_NAME_SEPARATOR_STRING): Define as "/" on all platforms.
* libguile/load.h (scm_i_mirror_backslashes): Add prototype.
* libguile/init.c (scm_boot_guile): Call scm_i_mirror_backslashes
on argv[0].
* libguile/filesys.c (scm_getcwd): Call scm_i_mirror_backslashes
on the directory name returned by getcwd.
* test-suite/tests/ports.test ("file name separators"): New test.
Diffstat (limited to 'libguile/init.c')
-rw-r--r-- | libguile/init.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/libguile/init.c b/libguile/init.c index 87a69884e..61b81e954 100644 --- a/libguile/init.c +++ b/libguile/init.c @@ -311,6 +311,9 @@ scm_boot_guile (int argc, char ** argv, void (*main_func) (), void *closure) void *res; struct main_func_closure c; + /* On Windows, convert backslashes in argv[0] to forward + slashes. */ + scm_i_mirror_backslashes (argv[0]); c.main_func = main_func; c.closure = closure; c.argc = argc; |